令牌中的 'originalText' 和 'word' 键有什么区别?

What's the difference between the 'originalText' and 'word' keys in a token?

当使用 NLTK 中的 CoreNLPParserCoreNLP Server 时,生成的 令牌 包含一个 'originalText' 键和一个 'word'键。

两者有什么区别?有没有关于它们的文档?

我只找到 this issue,它提到了 origintalText 键,但它没有回答我的问题。

from nltk.parse.corenlp import CoreNLPParser 

corenlp_parser = CoreNLPParser('http://localhost:9000', encoding='utf8')
text = u'我家没有电脑。'

result = corenlp_parser.api_call(text, {'annotators': 'tokenize,ssplit'})
print(result)

打印

{
   "sentences":[
      {
         "index":0,
         "tokens":[
            {
               "index":1,
               "word":"我家",
               "originalText":"我家",
               "characterOffsetBegin":0,
               "characterOffsetEnd":2
            },
            {
               "index":2,
               "word":"没有",
               "originalText":"没有",
               "characterOffsetBegin":2,
               "characterOffsetEnd":4
            },
            {
               "index":3,
               "word":"电脑",
               "originalText":"电脑",
               "characterOffsetBegin":4,
               "characterOffsetEnd":6
            },
            {
               "index":4,
               "word":"。",
               "originalText":"。",
               "characterOffsetBegin":6,
               "characterOffsetEnd":7
            }
         ]
      }
   ]
}

更新:

似乎 Token 实现了 HasWordHasOriginalText

A word 稍微转换一下,例如,可以在 S 表达式(即解析树)中打印它。因此,圆括号和其他大括号成为 -LRB-(左圆括号)之类的标记。此外,引号被规范化为反引号 (``) 和正向引号 ('') 以及其他一些小东西。

originalText,相比之下,是token的字面原文,可以用来重构原句。