以下是每个定义组的语法:
同义字定义的语法 >>-:WORDS--+--------------------------------+--\n---------------> +-:SYNONYM-----------------------+ '-:RELATED--+------------------+-' '- ( --number-- ) -' .----------------------------------------------------------------. V | >----+-member-term--+--------------------+--------------------+--\n-+->< | '- ( --strength-- ) -' | '-+-.SYNONYM_OF-----------------------+--associated-term-' +-.RELATED_TO--+------------------+-+ | '- ( --number-- ) -' | +-.BROADER--+------------------+----+ | '- ( --number-- ) -' | '-.NARROWER--+------------------+---' '- ( --number-- ) -'
注意,\n 不是语法的一部分,而是表示同义字定义文件中一行的结束。
可以在同义字定义文件中插入注释行,如下所示:
# my comment text
关系名由关系类型和数字组成。如果省略了数字,则假定它为零,这是系统提供的关系名。:SYNONYM 始终是系统提供的关系名。
以冒号开头的关系名(例如,:SYNONYM)在彼此相关的一系列单词前面添加同一关系。例如:
:WORDS :SYNONYM air steward cabin staff member flight attendant
如果不想要同义字查找包括与查找的词条关系不大的单词,则此参数就非常有用。强度是 1 到 100 之间的数值。缺省值为 100。
以句点开头的关系名(例如,.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)。
:WORDS:SYNONYM reject decline RELATED_TO(1) accept