创建自定义词典 (Office SharePoint Server 2007)

自定义词典是一个 Unicode 编码的文件,可以使用该文件来指定您希望同一语言的分词系统视为完整单词的单词。默认情况下不提供自定义词典。若要为多种语言修改分词系统行为,您必须为要修改其分词系统行为的每种语言创建单独的自定义词典。您不能为中性语言分词系统创建自定义词典。

备注

自定义词典适用于服务器场中的所有共享服务提供程序。

下表列出了 Microsoft Office SharePoint Server 2007 支持为其使用自定义词典的语言和方言,还包括了每种支持的语言和方言的语言代码标识符 (LCID) 和语言十六进制代码。

请注意,每种语言的十六进制代码中的前两个数字表示方言,最后两个数字表示语言。对于单独方言没有单独分词系统的语言,语言十六进制代码中的前两个数字始终为零。

表 1 - 支持的语言

语言/方言 LCID 语言十六进制代码

阿拉伯语

1025

0001

孟加拉语

1093

0045

保加利亚语

1026

0002

加泰罗尼亚语

1027

0003

克罗地亚语

1050

001a

丹麦语

1030

0006

荷兰语

1043

0013

英语

1033

0009

法语

1036

000c

德语

1031

0007

古吉拉特语

1095

0047

希伯来语

1037

000d

印地语

1081

0039

冰岛语

1039

000f

印度尼西亚语

1057

0021

意大利语

1040

0010

日语

1041

0011

埃纳德语

1099

004b

拉脱维亚语

1062

0026

立陶宛语

1063

0027

马来语

1086

003e

马拉雅拉姆语

1100

004c

马拉地语

1102

004e

挪威语(博克马尔语)

1044

0414

葡萄牙语

2070

0816

葡萄牙语(巴西)

1046

0416

旁遮普语

1094

0046

罗马尼亚语

1048

0018

俄语

1049

0019

塞尔维亚语(西里尔文)

3098

0c1a

塞尔维亚语(拉丁语)

2074

081a

斯洛伐克语

1051

001b

斯洛文尼亚语

1060

0024

西班牙语

3082

000a

瑞典语

1053

001d

泰米尔语

1097

0049

泰卢固语

1098

004a

乌克兰语

1058

0022

乌尔都语

1056

0020

越南语

1066

002a

使用自定义词典的原因

自定义词典用于使特定语言的分词系统忽略特定单词(或不对该单词进行分词)。若要了解您是否需要自定义词典以及自定义词典应包含什么单词或条目,了解分词系统的行为将很有帮助。

在对内容进行索引时,索引系统使用分词系统将单词拆分为标记。查询系统也使用分词系统将查询中的单词拆分为标记。在这两种情况下,如果已创建了支持所使用分词系统的语言和方言的现有自定义词典,则 Office Server Search 服务将在确定是否为单词使用分词系统之前确定该单词是否存在于自定义词典中。如果单词不存在于自定义词典中,则分词系统将执行其通常的操作,结果可能将单词拆分为多个单词或标记。如果单词存在于自定义词典中,则分词系统不会对该单词执行任何操作。

下面的示例描述典型的分词系统行为,以及自定义词典中的条目可能会对该行为产生怎样的影响。

示例 1

遇到诸如 IT&T 等单词的特定分词系统可能会在与号 (&) 处拆分单词。结果将生成单词 IT 和字母 T,大多数语言的分词系统可能会将字母 T 作为干扰词丢弃。但是,如果单词 IT&T 存在于与所使用分词系统相同语言的自定义词典中,则分词系统将忽略单词 IT&T。这意味着,如果在执行完全爬网,则会将该单词作为 IT&T 进行索引。当用户键入针对单词 IT&T 的查询时,分词系统将不会拆分单词。具体而言,对于不包含“IT”或“T”但包含单词“IT&T”的文档而言,包含“IT”或“T”的查询将不会返回搜索结果。

示例 2

分词系统可能会对诸如系统化学名称 (SCN) 或 CAS 编号之类的术语产生影响。例如,分词系统通常会将出现在连字符或其他特殊字符前后的单个数字与编号的其余部分拆分开来。CAS 编号的一个示例为 7782-44-7,即氧的 CAS 注册号。经过分词系统处理后,此单词被拆分为三个单独的部分:数字 7782、44 和 7。通过针对 SCN 和 CAS 编号适用的每种语言将出现在文档集中的这些编号添加到自定义词典,能使系统对这些 SCN 和 CAS 编号进行索引,而不会将它们拆分为单独的数字。由于在查询时将使用内容所采用语言的相应分词系统和自定义词典,因此用户也可以在其查询中包括 SCN 或 CAS 编号,而不会将该编号拆分为单独的部分。

规范化和同义词库文件

通常由分词系统应用的命名实体规范化(例如日期规范化)不会应用于出现在自定义词典中的查询词,而出现在自定义词典中的所有查询词将被视为完全匹配。如果同义词库文件中存在单词或编号(例如前面提到的那些),则这一点尤为重要。例如,如果 CAS 编号 7782-44-7 是同义词库中扩展集的一部分,并且分词系统在连字符处将该编号拆分为三个单独的数字,则该编号所在的扩展集可能无法按预期方式工作。在这种情况下,通过将 CAS 编号 7782-44-7 添加到相应语言的自定义词典将可解决问题。

开始之前

创建或修改自定义词典的操作非常简单。自定义词典只是一个 Unicode 格式的文件,其中的各个条目(您指定的单词)位于由回车 (CR) 和换行 (LF) 分隔的单独的行上。向自定义词典中添加条目时,请记住以下规则,以避免遇到意外结果:

  • 条目不区分大小写。

  • 不能在自定义词典中的任何地方使用管道 (|) 字符。

  • 不能在自定义词典中的任何地方使用空格。

  • 不能在条目的开头使用英镑标记 (#) 字符,但可在条目内或条目末尾使用该字符。

  • 除了前面提到的管道字符、英镑标记字符和空格外,任何字母数字字符、标点、符号和拆分字符均有效。

  • 条目的最大长度为 128 个 (Unicode) 字符。

下表显示了支持的条目和不支持的条目的示例。

表 2 – 支持的条目和不支持的条目的示例

支持 不支持

dogfood

dog food

3#

#3

Four#sale

dog|food

ASP.NET

IT&T

(2-Methoxymethylethoxy)propanol

34590-97-8

C7H1603

自定义词典中的条目数没有固定限制,但我们建议自定义词典的文件总大小不要超过 2 GB。实际上,我们建议您将条目数限制为几千条。

创建自定义词典

由于了解自定义词典中支持的条目和不支持的条目之间的差异非常重要,因此,在创建自定义词典之前,请确保您已阅读了本文前面的开始之前部分。

备注

若要执行此过程,您必须是服务器场中每台索引服务器和查询服务器上的 Administrators 组的成员。

创建自定义词典

  1. 作为 Administrators 组的成员登录到索引服务器。

  2. 启动记事本,并在自定义词典中键入所需的单词。一定要避免使用开始之前部分所述的无效条目。

    提示

    请记住,每个单词必须独占一行,并且由回车 (CR) 和换行 (LF) 分隔。

  3. 在“文件”菜单上,单击“另存为”。

  4. 在“保存类型”列表中,选择“所有文件”。

  5. 在“编码”列表中,选择“Unicode”。

  6. 在“文件名”框中,采用以下格式键入文件名:CustomNNNN.lex,其中 NNNN 是您正在为其创建自定义词典的语言的语言十六进制代码。有关支持的语言和方言的有效文件名的列表,请参阅本文前面的表 1。

  7. 在“保存在”列表中,导航到包含分词系统的文件夹。默认情况下,此文件夹路径为驱动器:\program files\Microsoft Office Servers\12\bin,其中驱动器是安装了 Office SharePoint Server 2007 的驱动器号。

  8. 单击“保存”。

    只有当您有独立于索引服务器的查询服务器时,才执行以下过程。否则,请转到停止和重新启动 Office SharePoint Server 搜索服务。

将自定义词典复制到其他服务器

  1. 作为 Administrators 组的成员登录到索引服务器。

  2. 导航到您保存了自定义词典文件的文件夹。

  3. 将自定义词典文件复制到第一台查询服务器上包含分词系统的文件夹。默认情况下,此文件夹路径为驱动器:\program files\Microsoft Office Servers\12\bin,其中驱动器是安装了 Office SharePoint Server 2007 的驱动器号。

  4. 对受影响的内容执行完全爬网。有关执行完全爬网的信息,请参阅爬网内容 (Office SharePoint Server 2007)

  5. 在服务器场中的每台查询服务器上重复步骤 1 到 3。

停止和重新启动 Office SharePoint Server 搜索服务

您必须在所有索引服务器和查询服务器上重新启动 OSearch 服务

Important重要说明:

由于使用管理中心中的“服务器上的服务”页面来停止和启动这些服务将会移除服务并删除索引和关联的配置,因此不要这样做,而是要使用以下步骤。

停止和重新启动 Office SharePoint Server 搜索服务

  1. 作为 Administrators 组的成员登录到索引服务器。

  2. 在“开始”菜单上,指向“所有程序”,指向“管理工具”,然后单击“服务”。

  3. 向下滚动列表,右键单击“Office SharePoint Server 搜索”服务,然后单击“属性”。此时将出现属性页面。

  4. 单击“停止”。在服务停止后,单击“启动”。

  5. 确保“启动类型”未设置为“已禁用”。

  6. 如果服务器场中有独立于索引服务器的查询服务器,请在每台查询服务器上重复步骤 1 到 5。

执行完全爬网

若要将自定义词典应用于内容索引,您必须对包含已添加到自定义词典的单词的所有内容源执行完全爬网。有关执行完全爬网的信息,请参阅爬网内容 (Office SharePoint Server 2007)