private String getText ( SToken currNode ) { List < DataSourceSequence > sSequences = ( ( SDocumentGraph ) currNode . getGraph ( ) ) . getOverlappedDataSourceSequence ( currNode , SALT_TYPE . STEXT_OVERLAPPING_RELATION ) ; // only support one text for spanns if ( sSequences == null || sSequences . size ( ) != 1 ) { log . error ( "rst supports only one text and only text level" ) ; return null ; } log . debug ( "sSequences {}" , sSequences . toString ( ) ) ; /** * Check if it is a text data structure. As described in the salt manual in * chapter "5.8 More specific nodes and relations" the start and end point * of a range of token is stored in superordinate node of type SSequentialDS */ if ( sSequences . get ( 0 ) . getDataSource ( ) instanceof STextualDS ) { STextualDS text = ( ( STextualDS ) sSequences . get ( 0 ) . getDataSource ( ) ) ; int start = sSequences . get ( 0 ) . getStart ( ) . intValue ( ) ; int end = sSequences . get ( 0 ) . getEnd ( ) . intValue ( ) ; return text . getText ( ) . substring ( start , end ) ; } // something fundamentally goes wrong log . error ( "{} instead of {}" , sSequences . get ( 0 ) . getDataSource ( ) . getClass ( ) . getName ( ) , STextualDS . class . getName ( ) ) ; return null ; }
Gets the overlapping token as string from a node which are direct dominated by this node .