You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

Splits tokens on specified characters, typically punctuation. Multiple split characters in a row will create a single split (not multiple splits).

Operates On:  Lexical Items with TOKEN

Generic Configuration Parameters

  • boundaryFlags (string, optional) 
    • The tokens to process must be inside two vertex mark with this flags (e.g ["TEXT_BLOCK_SPLIT"])
  • skipFlags (string array, optional) - Flags to be skipped by this stage
    • Tokens marked with this flags will be ignore by this stage, and no process will be performed.
  • requiredFlags (string array, optional)
    • Tokens need to have all the specified flags, in order to be processed.
  • atLeastOneFlag (string array, optional)
    • Tokens will need at least one of the flags specify in this array.
  • debug (boolean, optional)
    • Enable all debug log functionality of the stage, if any.

Configuration Parameters

  • splitChars (string, optional) - List of characters which should be used to split tokens.
    • If not present, then tokens are split on any sequence of punctuation. 
  • dontSplitChars (string, optional) - List of characters which will NOT be used to split tokens.
    • This is typically used to identify exceptions (characters which are not used to split tokens) when splitChars is missing.
    • These characters are included in the produced tokens.
  • splitFlag (string, optional) - The flag to be put on the vertex between the two tokens.
    • If missing, defaults to ALL_PUNCTUATION.

Examples

Example Configuration 1
{
 "type":"CharacterSplitter",
 "dontSplitChars":"."
}

Splits on all punctuation, except periods.

For example, the token:  "SagaToolkit-1.0" will produce the following graph:

V-------[SagaToolkit-1.0]-------V
 ^---[SagaToolkit]--V--[1.0]----^



Example Configuration 1
{
  "type":"CharacterSplitter",
  "splitChars":"-",
  "splitFlag":"DASH_SPLIT"
}

(splits tokens dashes)

Output Flags

Lex-Item Flags:

  • TOKEN - All tokens produced are tagged as TOKEN

Vertex Flags:

  • ALL_PUNCTUATION - Identifies the vertex as all token
    • The default flag if no "splitFlag" is present.
  • <splitFlag> - Defines an alternative flag to ALL_PUNCTUATION, if desired (see above)

Example

With Defaults 

V-----[Abe-Lincoln]-----V--[likes]--V--[the]--V-----[iPhone-*&@#*&7.0]-----V
^--[Abe]--V--[Lincoln]--^                     ^--[iPhone]--V--[7]--V--[0]--^ 

With Don't Split Param

{
	"type":"CharacterSplitter",
	"dontSplitChars": "."
}
V-----[Abe-Lincoln]-----V--[likes]--V--[the]--V--[iPhone-*&@#*&7.0]--V
^--[Abe]--V--[Lincoln]--^                     ^--[iPhone]--V--[7.0]--^


With Split Chars Param

{
	"type":"CharacterSplitter",
	"splitChars": "-#."
	"dontSplitChars": "."
}
V-----[Abe-Lincoln]-----V--[likes]--V--[the]--V--------[iPhone-*&@#*&7.0]--------V
^--[Abe]--V--[Lincoln]--^                     ^--[iPhone]--V--[*&@]--V--[*&7.0]--^
  • No labels