edu.washington.cs.knowitall.nlp
Class ChunkedSentence

java.lang.Object
  extended by edu.washington.cs.knowitall.nlp.ChunkedSentence
All Implemented Interfaces:
ChunkedSource, PosTagged, Tokenized

public class ChunkedSentence
extends java.lang.Object
implements PosTagged, ChunkedSource

An immutable class that represents a tokenized, POS-tagged, and noun-phrase chunked sentence.

Author:
afader

Constructor Summary
ChunkedSentence(ChunkedSentence sent)
          Constructs a new NpChunkedSentence by copying the data of sent.
ChunkedSentence(java.util.List<java.lang.String> tokens, java.util.List<java.lang.String> posTags, java.util.List<java.lang.String> npChunkTags)
           
ChunkedSentence(java.lang.String[] tokens, java.lang.String[] posTags, java.lang.String[] npChunkTags)
          Constructs a new NpChunkedSentence object using the given tokens, POS tags, and NP chunk tags, each of which must have the same length.
 
Method Summary
 ChunkedSentence clone()
          Returns a copy of this NpChunkedSentence.
 boolean equals(java.lang.Object obj)
           
 int getLength()
           
 java.lang.Iterable<Range> getNpChunkRanges()
           
 java.lang.String getNpChunkTag(int i)
           
 java.util.List<java.lang.String> getNpChunkTags()
           
 java.util.List<java.lang.String> getNpChunkTags(int start, int length)
           
 java.util.List<java.lang.String> getNpChunkTags(Range range)
           
 java.lang.String getNpChunkTagsAsString()
           
 int getNumNpChunks()
           
 Pair<java.lang.String,java.lang.String> getPair(int i)
           
 java.lang.String getPosTag(int i)
           
 java.util.List<java.lang.String> getPosTags()
           
 java.util.List<java.lang.String> getPosTags(int start, int length)
           
 java.util.List<java.lang.String> getPosTags(Range range)
           
 java.lang.String getPosTagsAsString()
           
 java.lang.String getPosTagsAsString(int start, int length)
           
 java.lang.String getPosTagsAsString(Range range)
           
 ChunkedSentence getSentence()
           
 java.lang.String getToken(int i)
           
 java.util.List<java.lang.String> getTokens()
           
 java.util.List<java.lang.String> getTokens(int start, int length)
           
 java.util.List<java.lang.String> getTokens(Range range)
           
 java.lang.String getTokensAsString()
           
 java.lang.String getTokensAsString(int start, int length)
           
 java.lang.String getTokensAsString(Range range)
           
 int hashCode()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ChunkedSentence

public ChunkedSentence(java.lang.String[] tokens,
                       java.lang.String[] posTags,
                       java.lang.String[] npChunkTags)
Constructs a new NpChunkedSentence object using the given tokens, POS tags, and NP chunk tags, each of which must have the same length. The NP chunks should be expressed using the standard B-NP, I-NP, O tags.

Parameters:
tokens -
posTags -
npChunkTags -

ChunkedSentence

public ChunkedSentence(java.util.List<java.lang.String> tokens,
                       java.util.List<java.lang.String> posTags,
                       java.util.List<java.lang.String> npChunkTags)

ChunkedSentence

public ChunkedSentence(ChunkedSentence sent)
Constructs a new NpChunkedSentence by copying the data of sent.

Parameters:
sent -
Method Detail

clone

public ChunkedSentence clone()
Returns a copy of this NpChunkedSentence.

Overrides:
clone in class java.lang.Object

getNumNpChunks

public int getNumNpChunks()
Returns:
the number of noun phrase chunks in this sentence.

getLength

public int getLength()
Specified by:
getLength in interface Tokenized
Returns:
the number of tokens in this sentence.

getTokens

public java.util.List<java.lang.String> getTokens()
Specified by:
getTokens in interface Tokenized
Returns:
an unmodifiable list over the tokens of this sentence.

getPosTags

public java.util.List<java.lang.String> getPosTags()
Specified by:
getPosTags in interface PosTagged
Returns:
an unmodifiable list over the POS tags of this sentence.

getTokens

public java.util.List<java.lang.String> getTokens(int start,
                                                  int length)
Specified by:
getTokens in interface Tokenized
Parameters:
start -
length -
Returns:
the first length tokens starting at index start.

getTokens

public java.util.List<java.lang.String> getTokens(Range range)
Specified by:
getTokens in interface Tokenized
Parameters:
range -
Returns:
the tokens at the indexes given by range.

getPosTags

public java.util.List<java.lang.String> getPosTags(int start,
                                                   int length)
Specified by:
getPosTags in interface PosTagged
Parameters:
start -
length -
Returns:
the first length POS tags starting at index start.

getPosTags

public java.util.List<java.lang.String> getPosTags(Range range)
Specified by:
getPosTags in interface PosTagged
Parameters:
range -
Returns:
the POS tags at the indexes given by range.

getNpChunkRanges

public java.lang.Iterable<Range> getNpChunkRanges()
Returns:
an unmodifiable list over the ranges of the NP chunks in this sentence.

getNpChunkTags

public java.util.List<java.lang.String> getNpChunkTags()
Returns:
an unmodifiable list over the NP chunk tags of this sentence.

getNpChunkTags

public java.util.List<java.lang.String> getNpChunkTags(int start,
                                                       int length)
Parameters:
start -
length -
Returns:
the first length NP chunk tags starting at index start.

getNpChunkTags

public java.util.List<java.lang.String> getNpChunkTags(Range range)
Parameters:
range -
Returns:
the first length NP chunk tags in the range range.

getNpChunkTag

public java.lang.String getNpChunkTag(int i)
Parameters:
i -
Returns:
the NP chunk tag at index i.

getSentence

public ChunkedSentence getSentence()
Specified by:
getSentence in interface ChunkedSource
Returns:
a reference to this object.

getTokensAsString

public java.lang.String getTokensAsString()
Returns:
the tokens of this sentence joined by spaces.

getTokensAsString

public java.lang.String getTokensAsString(int start,
                                          int length)
Parameters:
start -
length -
Returns:
length tokens starting at start, joined by spaces.

getTokensAsString

public java.lang.String getTokensAsString(Range range)
Parameters:
range -
Returns:
the tokens at the indexes of range, joined by spaces.

getPosTagsAsString

public java.lang.String getPosTagsAsString(int start,
                                           int length)
Parameters:
start -
length -
Returns:
length POS tags starting at start, joined by spaces.

getPosTagsAsString

public java.lang.String getPosTagsAsString(Range range)
Parameters:
range -
Returns:
the POS tags at the indexes of range, joined by spaces.

getPosTagsAsString

public java.lang.String getPosTagsAsString()
Returns:
the POS tags of this sentence, joined by spaces.

getNpChunkTagsAsString

public java.lang.String getNpChunkTagsAsString()
Returns:
the NP chunk tags of this sentence (in B-NP, I-NP, O format), joined by strings.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
Returns:
a string representation of this sentence.

getPair

public Pair<java.lang.String,java.lang.String> getPair(int i)
Specified by:
getPair in interface PosTagged
Returns:
a (token, POS tag) pair at the given index i.

getToken

public java.lang.String getToken(int i)
Specified by:
getToken in interface Tokenized

getPosTag

public java.lang.String getPosTag(int i)
Specified by:
getPosTag in interface PosTagged
Returns:
the POS tag at index i

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object