def parse_token(self, token, tags=[WORD, POS, CHUNK, PNP, REL, ANCHOR, LEMMA]):
p = { WORD: "<STR_LIT>", <EOL>POS: None, <EOL>IOB: None,<EOL>CHUNK: None,<EOL>PNP: None,<EOL>REL: None,<EOL>ROLE: None,<EOL>ANCHOR: None,<EOL>LEMMA: None }<EOL>custom = {}<EOL>for k, v in izip(tags, token.split("<STR_LIT:/>")):<EOL><INDENT>if SLASH0 in v:<EOL><INDENT>v = v.replace(SLASH, "<STR_LIT:/>")<EOL><DEDENT>if k not in p:<EOL><INDENT>custom[k] = None<EOL><DEDENT>if v != OUTSIDE or k == WORD or k == LEMMA: <EOL><INDENT>(p if k not in custom else custom)[k] = v<EOL><DEDENT><DEDENT>ch = p[CHUNK]<EOL>if ch is not None and ch.startswith(("<STR_LIT>", "<STR_LIT>")):<EOL><INDENT>p[IOB], p[CHUNK] = ch[:<NUM_LIT:1>], ch[<NUM_LIT:2>:] <EOL><DEDENT>if p[REL] is not None:<EOL><INDENT>ch, p[REL], p[ROLE] = self._parse_relation(p[REL])<EOL>if ch == "<STR_LIT>"and self._previousand self._previous[REL] == p[REL]and self._previous[ROLE] == p[ROLE]: <EOL><INDENT>ch = "<STR_LIT>"<EOL><DEDENT>if p[CHUNK] is None and ch != OUTSIDE:<EOL><INDENT>p[CHUNK] = ch<EOL><DEDENT><DEDENT>self._previous = p<EOL>return p[WORD], p[LEMMA], p[POS], p[CHUNK], p[ROLE], p[REL], p[PNP], p[ANCHOR], p[IOB], custom<EOL>
Returns the arguments for Sentence.append() from a tagged token representation.
            The order in which token tags appear can be specified.
            The default order is (separated by slashes): 
            - word, 
            - part-of-speech, 
            - (IOB-)chunk, 
            - (IOB-)preposition, 
            - chunk(-relation)(-role), 
            - anchor, 
            - lemma.
            Examples:
            The/DT/B-NP/O/NP-SBJ-1/O/the
            cats/NNS/I-NP/O/NP-SBJ-1/O/cat
            clawed/VBD/B-VP/O/VP-1/A1/claw
            at/IN/B-PP/B-PNP/PP/P1/at
            the/DT/B-NP/I-PNP/NP/P1/the
            sofa/NN/I-NP/I-PNP/NP/P1/sofa
            ././O/O/O/O/.
            Returns a (word, lemma, type, chunk, role, relation, preposition, anchor, iob, custom)-tuple,
            which can be passed to Sentence.append(): Sentence.append(*Sentence.parse_token("cats/NNS/NP"))
            The custom value is a dictionary of (tag, value)-items of unrecognized tags in the token.