同义词支持

创建您自己的同义词时,必须使用特定语法。

以下是当您创建自己的同义词时每个定义组的语法:

Syntax of a thesaurus definition

Read syntax diagramSkip visual syntax diagram:WORDS:SYNONYM:RELATED ( number ) \nmember-term ( strength ) .SYNONYM_OF.RELATED_TO ( number ) .HIGHER_THAN ( number ) .LOWER_THAN ( number ) associated-term\n

注意:\n 不是语法的一部分,而是表示同义词定义文件中一行的结束。

可以在同义词定义文件中插入注释行,如下所示:
# my comment text
:WORDS
开始一组相关单词的关键字。
:SYNONYM, :RELATED [(number)],
一个关系名。

关系名由关系类型和数字组成。 如果省略该数字,那么将假定为零,即系统提供的关系名称。 : SYNONYM 始终是系统提供的关系名称。

以冒号开头的关系名(例如,:SYNONYM)在彼此相关的一系列单词前面添加同一关系。 例如:
:WORDS
 :SYNONYM
   air steward
   cabin staff member
   flight attendant
member-term
要包括在同义词字典中的一个词条。
  • 最大长度为 64 个字节(对于代码页 UTF-8,最大长度为 42 个字节)。
  • 同一字母的单字节字符和双字节字符被认为是相同的。
  • 不区分大小写字符。
  • 词条可以包含空白字符。
  • 单字节字符句点 "." 或冒号 ":" 不能使用。

如果想要同义词查找不包括与查找的词条关系不大的单词,那么此参数就非常有用。 强度是 1 到 100 之间的数值。 缺省值为 100。

.SYNONYM_OF, .RELATED_TO [(number)], .HIGHER_THAN [(number)], .LOWER_THAN [(number)]
一个关系名。 关系名 .HIGHER_THAN 对应于 BROADER查询关系,而 .LOWER_THAN 对应于 NARROWER 查询关系。 关系名由关系类型和数字组成。 如果省略了数字,那么假定它为零,这是系统提供的关系名。 关系名 .SYNONYM 始终是系统提供的关系名。
以句点开头的关系名(例如,.SYNONYM_OF)定义一个单词与另一个单词之间的关系。 例如:
:WORDS
   air steward
 .SYNONYM_OF cabin staff member
 .SYNONYM_OF flight attendant

可选的 number 标识用户定义的关系。 这必须是整个同义词定义文件中的唯一数字(当前为 1 到 128)。 例如:RELATED_TO(42)

如果想要在应用程序中使用同义词关系的符号名称而不是关系名和数字,那么应用程序必须处理名称至数字的映射。 例如,如果将关系 opposite_of 定义为 RELATED_TO(1),那么应用程序必须将此名称映射至内部关系名 RELATED_TO(1)。

associated-term
必须在每个相关联的词条前面添加关系名。 相关联的词条根据指定的关系来与每个成员词条相关。 如果所有成员词条都互相相关,那么可以使用成员关系来指定此参数。
  • 最大长度为 64 个字节(对于代码页 UTF-8,最大长度为 42 个字节)。
  • 同一字母的单字节字符和双字节字符被认为是相同的。
  • 不区分大小写字符。
  • 词条可以包含空白字符。
  • 单字节字符句点 "." 或冒号 ":" 不能使用。
以下是相关联词条的一个示例:
:WORDS:SYNONYM
  reject
  decline
    RELATED_TO(1) accept