CN1829987B - 用于标签系统的词语数据库扩展 - Google Patents

用于标签系统的词语数据库扩展 Download PDF

Info

Publication number
CN1829987B
CN1829987B CN200480001670XA CN200480001670A CN1829987B CN 1829987 B CN1829987 B CN 1829987B CN 200480001670X A CN200480001670X A CN 200480001670XA CN 200480001670 A CN200480001670 A CN 200480001670A CN 1829987 B CN1829987 B CN 1829987B
Authority
CN
China
Prior art keywords
word
label
text
field
language
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200480001670XA
Other languages
English (en)
Other versions
CN1829987A (zh
Inventor
R·比茨奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1829987A publication Critical patent/CN1829987A/zh
Application granted granted Critical
Publication of CN1829987B publication Critical patent/CN1829987B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Machine Translation (AREA)

Abstract

一种方法在具有多种语言(710)的商业解决方案软件程序中存储、使用和建议词语。可以基于模块中的特定用途来搜索词语,而不是基于其文本(741)和一般用途(734、735)来只搜索词语的一般用途。为每个词语分配词语ID结构(730)中的其自己的唯一标识符(731),同时,该结构也包含与如何在系统(734、735和737)中使用词语有关的信息。词语的文本(741)被存储在单独的词语文本结构(740)中。词语文本结构(740)包含采用所有可用语言(743)的标签的文本(741)。词语的特定用途(735)被存储在包括词语的特定用途(730)的描述的单独的词语区域表格(730)中。当书写新标签时,开发者可以搜索这些当前词语,以找出与预定用途匹配的词语。

Description

用于标签系统的词语数据库扩展
发明背景
本发明涉及在商业解决方案软件程序中合并和开发标签。特别是,本发明涉及用于在商业解决方案软件的模块中开发和合并标签的标签数据库和标签对话。
商业解决方案软件程序为最终用户(通常是公司)提供支持与该用户的各种商业合伙人的连接的可定制、可升级的全球企业资源规划解决方案。许多商业解决方案软件程序提供将该软件的基本功能扩展到原始产品以外,以进一步满足实现公司的各种需求的能力。通过被写入的额外的模块来提供这个新的或额外的功能,以便利用商业解决方案软件内所包含的这些现存特征和现存数据。这些额外的模块经常将软件和现存数据自动地与商业解决方案软件的新、旧功能同步。
某个商业解决方案软件提供跨越多种语言并用多种货币在不同的国家经商的能力。通过使用商业解决方案软件中所提供的多语言能力,可以用接收者偏爱语言的来传送文档(例如,发票)。但是,在现有系统中更改这些文档的语言要求将这个新的语言加载到商业解决方案软件中,并更改系统的整个操作语言。
通过使用多个标签,来处理商业解决方案软件用不同可用语言的通信。标签是出现在用户界面组件上或者在打印文档中的文本。但是,标签也可以是图像、位图、图标、影片、或必须在其它语言中有所不同的任何种类的数据。标签可以包括菜单、按钮、对话框等。另外,标签可以用在具有标签属性(例如,“标签”、“帮助”、“标题”和“工具提示”)的控件上。现有的商业解决方案软件中的标签被存储在单独的资源文件中,一个资源文件专用于该商业解决方案软件所使用的每种语言。另外,商业解决方案软件中的每个模块具有不与其它模块或该商业解决方案软件本身共享的其自己的资源文件。
在商业解决方案软件的整个开发过程中,在开发者之中一直有一个强烈的愿望,即再使用现存的标签。但是,已观察到,再使用现存的标签并不是那么有利,因为该标签的各种属性可以在不同的用途之间变化,或者,标签的含义可以在不同的开发者之间变化。当更改词语时,这会引起问题。例如,标签文本可以用在一个应用程序上的菜单中和另一个应用程序上的按钮中,从而产生对每个标签的不同的属性。大多数开发者所希望的是,再使用包含这些标签的各个词语或文本,以便降低与开发用于系统上的各种模块的标签相关联的成本。
如上所述,通常,在商业解决方案软件模块中,标签被保存在资源文件中。但是,现有的商业解决方案软件不使用可通过数据库元数据存储(例如,结构化查询语言(SQL)表格)或通过web服务而获得的类属资源文件。通常,在商业解决方案软件中,这些标签是模块专用的,并且被存储在专有资源文件中,一个资源文件专用于模块中的每种语言。与使用专有资源文件相关联的一个问题是,当开发者想要用另一个资源文件中所包含的新信息或属性来取代或编辑一个模块中的标签的一部分时,开发系统不会寻找商业解决方案软件的其它模块中具有与所需标签相同的标签属性和/或术语的另一标签。另外,由于软件解决方案中存在大量标签,因此,使用资源文件会令标签的管理极端困难。但是,在商业解决方案环境中,要求商业解决方案软件处理由多个销售商所开发的许多不同的解决方案。这些模块的开发者通常正在开发与为商业解决方案软件中的其它模块而开发的标签重叠的标签。与开发标签和翻译(当需要多语言支持时)标签相关联的成本非常昂贵又耗时,尤其当标签及其翻译已存在于该商业解决方案软件中的其它地方时。所以,需要具有使用各种模块销售商的组合贡献的标签系统,这与要求每个销售商对每个所需标签开发其自己的标签的完全专有系统相反。另外,需要一种系统,它使搜索现存的标签文本成为可能,并提供再使用该文本的能力。
当在名字空间和种类的选择中搜索标签时,开发者难以选择正确的种类。开发者经常不知道位于当前环境中的标签子集是否满足这些当前的需求。所以,开发者想要知道,在保存这些所需标签的数据库中有什么标签可用。另外,开发者想要创建包含关于该用途的正确信息和关于标签中的各个词语的适当翻译的标签。
发明概述
本发明的词语数据库通过提供额外的特征来扩展标签系统。由翻译者或标准组织来控制这些额外的特征。这些特征使得可以将额外的搜索标准加入标签对话中,以帮助找到对应于该标签的实际所需用途的标签。当激活这些特征时,额外的主题相关结果将被返回给开发者,以协助为标签选择正确的词语。由于开发者倾向于用其自己的本国语言思考,因此,当开发者的本国语言的单个单词可以被翻译成另一种语言的多个单词时,这些特征将帮助标准化标签中所使用的词语。
本发明的一个实施例针对开发者正在开发新模块,或正在为商业解决方案软件编辑现存的模块的情况。本发明允许开发者通过对话开发工具来识别现存的词语。首先,开发者打开开发显示屏内的用户界面。这个显示屏向开发者显示搜索功能,该搜索功能允许通过词语文本数据库的搜索以及对所有可用词语的访问。然后,开发者将关于所需词语的文本输入到搜索引擎中。这个文本可以被全体输入,或作为使用正则表达式的所需词语的一部分输入。开发者也指出本词语的所需用途。
根据所输入的数据,搜索引擎搜索词语文本数据库和词语区域,并识别具有与所需文本最紧密匹配的文本的那些词语、以及具有与词语的所需用途相类似的含义的那些词语。这些被识别的词语在搜索引擎显示屏中被返回给开发者,并可以被显示在数据网格中。根据预定方法,例如,首先显示具有与所需文本最紧密匹配的文本的词语,最后显示不具有与所需文本匹配的文本的词语,来为这些结果分等级。然后,开发者可以在这些被返回的结果中找到包含所需文本的结果。如果这些结果之一包含关于新词语的所需文本,那么,开发者可以从这些结果中选择所需词语,并将它复制到新标签中。
在选择了这些结果结果,就为开发者呈现关于数据库中所包含的特定词语的更多信息。由于开发者不知道所选择的词语的用途,因此,开发者将词语复制到新标签。
当所选择的词语被复制到新标签时,为新标签生成GUID,并且生成该新标签的记录中的条目,该条目指出被复制到这个标签的词语的GUID。提供这个条目,以便当更改父词语的文本时,允许更新新词语的文本。另外,当词语被复制到新标签时,任何关联的翻译或其它信息被复制到该新标签的词语文本表格。这允许商业解决方案软件系统的全语言能力继续到该新词语,而不会招致与将新标签翻译成可用语言相关联的任何额外的成本。在另一个实施例中,当更新词语的经翻译的版本时,用经翻译的词语的新版本来更新共享相同的主词语的所有相关的标签。当执行程序来更新标签时,通常会发生这种情况。
通过对话的特定用途特征,开发者能够迅速、容易地识别与词语的所需用途最匹配的那些词语。当在这些结果中为开发者呈现一种以上类别中的其本国语言的相同的单词时,这个特征尤其重要。由于一种语言的单词经常具有第二种语言的一个以上的等效的单词,因此,该特定用途将帮助开发者挑选具有最符合所需用途的关联的翻译的标签。本系统的第二个优点是:当搜索该数据库时,将为开发者呈现除其预定词语以外的词语。这些单词将代表已经被其它开发者使用并且被翻译成其它语言的单词或词语。如果开发者开始使用这些词语,那么,将成为模块中所使用的这些词语的标准化——最终为开发者降低成本。
本发明的第二个实施例针对一种支持本发明的特定用途搜索的数据结构。该数据结构包括词语ID表格、标签文本表格和标签区域表格。该词语ID表格保存与包括其标识符、通用类别(按钮、标签)和状态字段的词语有关的信息。状态字段指出词语的来源或状况。词语文本表格保存跨越各种语言的词语文本的各种版本。词语区域表格包括与词语关联的标签的特定用途、以及关于如何使用词语的描述。这些表格允许开发者准确地确定词语是否适合所需用途。
附图简述
图1是可以在其中使用本发明的一个示例性环境的框图。
图2是展示了包含标签系统的表格的框图。
图3A和3B是标签ID表格和标签文本表格中的字段的图表说明。
图4是展示了标签系统的各个组件之间的关系的框图。
图5是展示了在创建新标签时所执行的步骤的流程图。
图6是当开发和搜索标签数据库时由用户调用的用户界面的例子。
图7A是展示了包含本发明的词语数据库的表格的框图。
图7B和7C是词语ID表格和词语文本表格中的字段的图表说明。
图8是展示了当搜索或创建标签的新词语时所执行的步骤的流程图。
图9是当开发和搜索词语数据库时由用户调用的用户界面的例子。
说明性实施例的详细描述
图1展示了可以在其上实现本发明的合适的计算系统环境100的例子。计算系统环境100只是合适的计算环境的一个例子,它并不意在对本发明的使用范围或功能提出任何限制。也不应该将计算环境100解释为具有涉及示例性操作环境100中所展示的任何一个组件或组件组合的任何依赖性或要求。
本发明可用于众多其它的通用或专用计算系统环境或配置。可适用于本发明的众所周知的计算系统、环境和/或配置的例子包括(但不局限于)个人计算机、服务器计算机、手持设备或便携式设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等。
可以在由计算机执行的计算机可执行指令(例如,程序模块)的一般上下文中描述本发明。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括记忆存储设备的本地计算机存储介质和远程计算机存储介质中。
参照图1,用于执行本发明的示例性系统包括采取计算机110的形式的通用计算设备。计算机110的组件可以包括(但不局限于)处理单元120、系统存储器130和系统总线121,系统总线121将包括系统存储器的各种系统组件耦合到处理单元120。系统总线121可以是几种类型的总线结构中的任一种,包括存储总线或存储控制器、外围总线和使用各种总线体系结构中的任一种的局部总线。举例来讲(不作限制),这类体系结构包括工业标准结构(ISA)总线、微通道结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局域总线和外围部件互连(PCI)总线(也被称作Mezzanine总线)。
计算机110通常包括各种计算机可读介质。计算机可读介质可以是可由计算机110访问的任何可用介质,它包括易失和非易失介质、可移动和不可移动的介质。举例来讲(不作限制),计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括易失和非易失的可移动和不可移动的介质,该介质用诸如计算机可读指令、数据结构、程序模块或其它数据等信息的存储的任何方法或技术来加以实现。计算机存储介质包括(但不局限于)RAM、ROM、EEPROM、闪存或其它存储技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储器、盒式磁带、磁带、磁盘存储或其它磁存储设备、或可以被用来存储所需信息并可以由计算机110访问的其它任何介质。通信介质通常在诸如载波或其它传送机制等已调制数据信号中具体表现计算机可读指令、数据结构、程序模块或其它数据,它包括任何信息传递介质。术语“已调制数据信号”意味着其一个或多个特征按为信号中的信息编码的方式来加以设置或更改的信号。举例来讲(不作限制),通信介质包括有线介质(例如,有线网络或直线连接)和无线介质(例如,声音、RF、红外线和其它无线介质)。以上任何内容的组合也应该被包括在计算机可读介质的范围以内。
系统存储器130包括采取易失和/或非易失存储器的形式的计算机存储介质,例如,只读存储器(ROM)131和随机存取存储器(RAM)132。基本输入/输出系统133(BIOS)通常被存储在ROM 131中,该基本输入/输出系统包含例如在启动期间有助于在计算机110内的各个元件之间传送信息的基本例程。RAM 132通常包含可立即由处理单元120访问和/或目前正由处理单元120操作的数据和/或程序模块。举例来讲(不作限制),图1展示了操作系统134、应用程序135、其它程序模块136和程序数据137。
计算机110也可以包括其它可移动/不可移动、易失/非易失计算机存储介质。只举例来讲,图1展示了从不可移动、非易失磁介质读取或对其写入的硬盘驱动器141、从可移动、非易失磁盘152读取或对其写入的磁盘驱动器151,以及从可移动、非易失光盘156(例如,CD ROM或其它光学介质)读取或对其写入的光盘驱动器155。可以被用于示例性操作环境中的其它可移动/不可移动、易失/非易失计算机存储介质包括(但不局限于)卡型盒式磁带机、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器141通常通过不可移动存储器接口(例如,接口140)而被连接到系统总线121,磁盘驱动器151和光盘驱动器155通常由可移动存储器接口(例如,接口150)连接到系统总线121。
以上所讨论的和图1中所展示的这些驱动器及其关联的计算机存储介质为计算机110提供计算机可读指令、数据结构、程序模块和其它数据的存储。在图1中,例如,硬盘驱动器141被展示为存储操作系统144、应用程序145、其它程序模块146和程序数据147。注意,这些组件可以等同于或不同于操作系统134、应用程序135、其它程序模块136和程序数据137。这里为操作系统144、应用程序145、其它程序模块146和程序数据147给予不同的标号,以说明它们至少是不同的副本。
用户可以通过输入设备,例如,键盘162、话筒163和定点设备161(例如,鼠标、跟踪球或触垫),来将命令和信息输入计算机110。其它输入设备(未示出)可以包括操纵杆、游戏垫、圆盘式卫星电视天线、扫描仪或类似的输入设备。这些和其它的输入设备经常通过耦合到系统总线的用户输入接口160而被连接到处理单元120,但也可以由其它接口和总线结构,例如,并行端口、游戏端口或通用串行总线(USB)来加以连接。监视器191或其它类型的显示设备也经由接口(例如,视频接口190)而被连接到系统总线121。除监视器以外,计算机也可以包括其它外围输出设备,例如,扬声器197和打印机196,这些外围输出设备可以通过输出外围接口195来加以连接。
计算机110可以使用与一台或多台远程计算机(例如,远程计算机180)的逻辑连接而在联网环境中进行操作。远程计算机180可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它公用的网络节点,它通常包括以上相对于计算机110而描述的许多或所有这些元件。图1中所描绘的这些逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也可以包括其它网络。这类联网环境在办公室、企业范围的计算机网络、内联网和因特网中很普遍。
当被用于LAN联网环境中时,计算机110通过网络接口或适配器170而被连接到LAN 171。当被用于WAN联网环境中时,计算机110通常包括调制解调器172或用于通过WAN 173(例如,因特网)建立通信的其它装置。调制解调器172可以是内置或外置的,可以经由用户输入接口160或其它适当的机制而被连接到系统总线121。在联网环境中,相对于计算机110而描绘的程序模块或其各个部分可以被存储在远程记忆存储设备中。举例来讲(不作限制),图1将远程应用程序185展示为驻留在远程计算机180上。将会理解:所示的这些网络连接起示例性的作用,可以使用在这些计算机之间建立通信链路的其它装置。
在一个实施例中,系统100包括用于生成商业管理解决方案的软件,该商业管理解决方案可以将总会计和商业功能与特定的应用程序模块集成。这些模块可以包括关于财务、贸易、后勤、生产、客户服务、项目和人力资源的模块。但是,其它模块类型可以用于该商业管理解决方案中。本发明的该解决方案可以被配置成支持多种货币(欧元、美元、日元、韩元等)、多种语言(英语、德语、法语、丹麦语、俄语、日语、汉语等)和多种税收格式(供与多个税收当局打交道的最终用户使用)。
可以从各种不同的来源开发商业管理解决方案中所使用的模块。在一个实施例中,所有这些模块之间的共同链接是标签的用途。标签是由标识符代表的文本。标签可以包括对话框、文本串、或被用来向用户传达信息的任何文本。通常通过资源,例如,图形用户界面或GUI,来向用户呈现标签。但是,可以通过为用户呈现文本的任何其它的手段,来向用户呈现标签。另外,标签可以用于具有诸如“标签”、“帮助”、“标题”和“工具提示”等标签属性的控件上。在先前的商业解决方案软件中,每个模块的标签被保存在单独的资源文件中。但是,这些资源文件通常被保存在特定模块专有的平面文件体系结构中。经常在模块的开发过程中,开发者知道满足当前正被创建的标签的各个要求的另一模块中的标签。但是,现有技术系统的专有文件源结构阻止开发者将来自一个模块的标签用于另一个模块中,也不可能搜索标签。
图2是实体关系图,展示了根据本发明的一个实施例的、包含商业解决方案系统200中的标签的各种集合之间的关系。图2的实体关系图包括语言表格210(或系统中的可用语言的其它指示)、主文件220、标签ID表格230、以及标签文本表格240。在一个实施例中,这些集合被组织为被排列成表格的结构化查询语言(SQL)元数据存储。但是,可以使用集合的其它排列和其它数据库。参照图3A和3B来更详细地描述标签ID表格230和标签文本表格240。
语言表格210是包括至少两个子字段的表格。语言表格210中的两个子字段是语言ID字段211和语言名称字段212。语言ID字段211保存指示特定语言的代码,并且可以由商业解决方案软件程序来理解。语言名称字段212是保存该语言的名称的文本字段。例如,如果可用语言之一是英语-美国,那么,若使用ASCII标准的话,语言ID字段211说明性地可以是“01”,或者,它可以是“en-us”。但是,其它ID类型可以用于语言ID字段211中。例如,该条目的元数据表格的语言名称字段212可以是“英语-US”。作为选择,如果该解决方案是由特定解决方案提供的,那么,该条目会是具有特定语言文本的标签。
当该用户想要查看或更改该系统的操作语言时,可以在标签对话显示中向用户显示存储在语言表格210中的该息。语言表格210与标签文本表格240有1:n的关系。出现这个关系(1:n)是因为在系统200可用的每种语言中会有代表不同标签的多个标签文本。
主文件220在一个实施例中是包括系统200中的每个标签的一个版本的表格。在一个实施例中,主文件220保存原始语言和格式的标签的原始版本。但是,标签的其它版本可以存储在主文件220中。例如,如果使用最佳实践指导方针,那么,系统200可以在主文件220中存储采用英语-美国的标签。最佳实践指导方针是一组过程,它利用特定的类别类型、描述和语言来标准化标签开发。系统200中的每个标签具有主文件220中的关联的项目。当正在更新标签的翻译时、标签还没有被翻译成当前所选择的(活动的)语言时、或因为任何原因而变得无法对系统200不可用时,使用由主文件代表的标签。但是,在选择性实施例中,主文件220中所存储的信息可以在标签表格230或语言240中作为指示主标签的标签ID的一个或多个字段储存。另外,主文件220可以是保存关于其创建语言标签的信息的简单字段。这个字段可以位于标签ID表格230中。
每个主文件对应于标签ID表格230中的一个条目。标签ID表格230包括协助翻译者(正在翻译该文本)正确地翻译标签的各种属性。这些属性也协助该开发者适当地使用标签。主文件与标签ID表格230之间的关系是1:n,因为多个标签ID可以共享同一个主文件。
标签文本表格240包括包含由标签ID标识的每个标签的文本的条目。标签文本表格240也包括包含对各种语言的每个标签ID的翻译的条目。标签ID表格230与标签文本表格240之间的关系、以及语言表格210与标签文本表格230之间的关系是1:n。这是因为标签ID表格230中对一个标签有一个条目,但标签的文本可以存在于多种语言中。但是,在本发明的其它实施例中,标签ID与标签文本之间的关系可以是1:1(或者如果文本不存在的话,可以是1:0),其中,该主标签的每个翻译在标签ID表格230中具有其自己唯一标签ID和条目。
图3A根据本发明的一个实施例展示了构成标签ID表格230的各个字段。标签ID表格230包括ID字段231、名字空间字段232、类别字段234和描述字段235。在其它实施例中,标签ID表格230可以包括字段236,它指出标签ID表格中的条目是从另一个标签复制的,还是被复制到表格中的另一条目的。
通常,标签被保存在资源文件中。本商业解决方案系统不使用可通过数据库元数据存储(例如,SQL表格)来获得的类属资源文件。在本商业解决方案系统中,这些标签被存储在专有资源文件中。与使用专有资源文件相关联的一个问题是:当开发者想要用具有文件的所有资源的文件来取代系统中的一个或多个标签的一个部分时,系统不寻找系统中具有与当前标签相同的标签属性或术语的另一个文件。但是,在商业解决方案环境中,要求商业解决方案系统处理对由多个销售商开发的相同或类似问题的许多不同的解决方案。所以,本发明的标签系统200可以使用由各个销售商所作出的所有贡献的总和。
ID 231字段被用来标识系统200中的特定标签。在一个实施例中,这个ID是全局唯一标识符或GUID。GUID用来避免由于两个销售商对两个无关的标签选择相同的标识号而发生问题。GUID在一个实施例中是128位整数(16字节),它可在要求唯一标识符的任何地方跨越所有计算机和网络来使用。这种标识符系统的运用可减少两个标签将具有相同的ID的机会。在一个实施例中,GUID被表示为串,并根据以下样式来格式化:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx
其中,GUID的值按8、4、4、4和12的组中表示为的一系列小写十六进制数位,并且用连字符分开。例如,对于行301的条目的GUID返回值可以是382c74c3-721d-4f34-80e5-57657b6cbc27。但是,其它格式类型可以用于ID字段231。每当生成新标签时,为它分配新的GUID。在一个实施例中,新标签被定义为对于系统200而言是新的标签,而不只是现存标签的翻译。但是,在其它实施例中,为现存标签的翻译生成ID字段231中的新条目。
GUID的运用提供了胜过现有系统的更多好处。首先,不需要将每个标签分成多种语言。另外,GUID允许唯一地标识每个标签,而不需要用其它方法(例如,通过使用行号)来控制该唯一性。其次,GUID允许在web服务上将标签的物理存储从专有资源文件改变成公有资源文件(例如,元数据数据库)。
标签ID表格230中的名字空间字段232是一种特殊字段,它被输入标签ID中,以便当将标签文本从主语言翻译成目标语言时,协助翻译者获得标签的正确词语。在现有标签系统中,不可能容易地了解在程序的什么地方使用特殊标签。另外,不容易了解标签用于哪些区域。所以,翻译者很难(如果不是不可能的话)获得标签的正确词语,除非该程序被安装在其计算机上,并且他们能够了解标签用在什么地方。通过名字空间字段232,可以了解使用标签的区域,而无须将程序安装在翻译者的机器上。当(自动地或手动地)创建新标签时,由开发者提供名字空间字段中所包含的信息,并且提供与特殊标签的用途有关的信息。例如,在图3A的行302的条目中,名字空间字段232告诉该翻译者或开发者:这个标签被用于记帐模块中。
标签ID表格230中的类别字段234是一种特殊字段,它展示使用标签的组件。另外,在创建标签文本时,类别字段234的运用协助开发者按正确方式来书写标签。类别是标签的节点类型和属性的组合。节点类型是标签的特定属性。这些标签属性中的一些可以包括“标签”、“帮助”、“标题”等。这样,通过类别字段234,可以确保标签按适当的方法用于所需程序。另外,类别是存在于系统中的所有控件的映射。所以,可以基于所需标签的类型或类别来在现存数据库中搜索标签。在本发明中,为系统200所执行的每项规则或控制创建类别。在模块的开发期间,如果特定标签文本需要特定规则,那么,可以创建额外的类别。例如,节点字段234可以是条目,它告知:条目303处的标签用在模块的菜单栏上,以便将用户指引到该模块中的另一个点。每个类别被映射到系统200中的特定功能。
描述字段235是表格230中的条目,它向用户或开发者描述如何使用标签。例如,描述字段235可以是条目,它告知:条目303处的标签用于分类帐的情况中。该描述可以采用单词语(纯文本),或者,它可以依照预定的代码列表来编码。
复制于字段236指出:该条目的关联标签是否从标签系统中的另一个标签复制。如果该标签是从另一个标签复制的,那么,复制于字段236包括来自父或主标签220的ID。在一个实施例中,这个ID是父标签的GUID。但是,其它ID可以用于字段236中。如果标签不是另一个标签的复制版本,那么,复制于字段236是空白的或被设置为空。另外,如果在复制之后从主标签的文本更改了标签的文本或任何其它信息,那么,复制于字段236被设置为空,从而消除主标签220与这个特定的子标签之间的任何链接。但是,对条目的其它更改将会导致复制于字段236被复位。在一个替换实施例中,图3A的标签ID表格230包括指出什么标签ID包含被复制的标签的字段。ID表格230中的标签要么是主标签,要么是子标签。
图3B展示了填充特定标签的标签文本表格240的各个字段。标签文本表格240条目包括至少三个不同的字段:标签ID字段244、标签文本字段241和编辑日期242。在本发明的替换实施例中,可以将额外的字段添加到标签文本表格240中。这些字段包括指出书写该文本所采用的语言的字段243、或标识标签文本表格中的文本的每个版本的条目标识符的字段。
标签文本表格240的文本字段241包括该系统的所有可用语言的标签的文本的各个最新近的版本。但是,其它信息可以被存储在文本字段241,例如,语言专用图标、位图视频等。标签的标签文本表格240中的第一个条目351采用书写该标签所用的原始或主语言。这个文本被称作“主文本”。如果根据该最佳实践指导方针来开发标签,那么,将用英语-美国来书写该主文本。但是,其它语言可以被用作主语言,并且,不需要遵循该最佳实践指导方针。通常,主语言将对应于系统正在操作的当前语言。
当标签文本从主语言被翻译成另一种语言时,在标签文本表格中制作新的标签文本条目(例如,352和353)。这些条目包含采用其各自语言的原始标签文本的翻译版本。例如,如果标签的原始文本是“Do you want to save the changes youmade to”,那么,这个文本被存储在标签文本表格240的第一行351中。以后,当该文本被翻译成德语、丹麦语和法语时,这些翻译被输入主文本条目以下的条目中的标签文本表格中。这些添加的翻译由条目352、353和354来指出。
在标签文本表格240中提供编辑日期字段242,以便开发者知道:何时以与标签文本表格中的该特定条目相关联的语言最后一次更改标签的文本。另外,可以添加包含确认信息的其它字段,例如,“修改者”字段。这个日期有助于确保:如果提供文本的翻译,那么,它不取代该翻译的已经更新近的版本。当翻译被自动载入该统时,比较这些翻译日期;并且,如果条目中的版本比所提议的条目更新近,那么,这个所提议的条目不被输入到表格中。编辑日期字段242也允许开发者检验:这些翻译是否与主文本条目的最新近的版本保持同样新。在一个实施例中,主文本条目321编辑日期理想地是特定标签的标签文本表格240中的最老的日期。
在一些实施例中,标签文本表格240包括语言字段条目243。语言字段条目243向开发者指出标签文本表格中的特定条目的特定语言,即使开发者不说或不理解该语言,也是如此。语言字段条目243中的语言指示符可以是该语言的数字表示,或者,它可以被写为该语言的名称或任何其它种类的语言标识符。
如果数字表示用于标识语言,那么,该语言的参考号或条目可以说明性地符合已知标准,例如,ASCII语言代码或ISO 639。但是,其它代码可用于标识文本条目的语言。如果语言的名称被输入到字段243中,那么,可以根据已知标准(即采用英语的语言名称)来说明性地书写语言的名称。但是,可以使用其它格式。
标签文本表格240也包括条目字段244,它标识特定标签文本的标签ID 231。这个条目允许开发者知道当前的文本与哪个标签ID 231有关。标签文本表格240的更多实施例包括文本ID 245的条目。提供这个文本ID 245,以便个别地将每个文本标签标识为标签文本表格240中的其自己的条目。文本ID 245条目可以是GUID,或者,它可以是与标签文本表格的配置一致的任何其它标识方法。在一个替换实施例中,标签文本表格240和标签ID表格230可以被合并成一个表格或数据库。在这个实施例中,将会需要额外的字段集,以便管理这些标签,并确保当运行该模块时显示正确的标签语言文本。另外,将会添加索引,以管理这些标签的装载。
图4是展示了包含标签系统接口400的各个组件的框图。标签系统接口400是将开发者401链接到元数据存储409,并且允许开发者在为系统200开发新模块时操纵现有标签的接口。标签系统接口400包括标签对话402、标签对话逻辑组件403、扩展语言接口404和标签接口405。
开发者通过标签对话402与标签系统接口400交互。标签对话402是它允许开发者访问标签系统接口的各个特征的用户界面。在一个实施例中,标签对话402是允许该用户查看和管理特定标签的用途的窗口。标签对话402使用到元数据存储的接口来处理标签,并访问对所有可用语言的标签可用的命令全集。为了提供这些特征,标签对话接口402要求访问标签系统400中的每个标签的所有可用语言。
但是,标签对话402不包含确定标签是否可以用于特定情况的任何逻辑。所有控制被传到控制该标签接口或标签对话逻辑组件403的类。标签对话逻辑组件403被设计成用于标签对话402,但因为它包含标签对话402的所有逻辑,因此,可以在其它区域内再使用该标签对话逻辑的某些特征。另外,标签对话逻辑组件403确保每一标签是按与该标签的名字空间和类别的正确组合相一致的方法来使用的。这个逻辑防止在不同的区域内在没有首先创建新主标签的情况下因疏忽而运用标签。
扩展语言接口404为标签对话界面400提供对系统中可用的所有语言的访问。扩展语言接口404使用另一个类,以便使多种语言对标签对话逻辑组件403和标签对话402可用。扩展语言接口404只具有对于系统中一种以上的语言公用的方法(返回所有可用语言的列表,并且也返回当前语言的ID)。只与一种语言有关的方法直接位于标签类405上。通过标签类,可以连接到元数据中的标签。在每种可用语言中,有标签类的一个实例。但是,在某些情况下,可能没有特定类的实例。
语言接口组件404也控制对可用语言的访问。语言接口组件404包含标签的实例的映射。在语言接口组件404中,也有到当前标签的每个可用的额外语言类的接口。
图5是展示了当开发者在模块的一部分的开发期间创建模块的新标签时所执行的各个步骤的一个例子的流程图。例如,如果开发者想要制作代表模块中的“客户”的输入的标签,那么,该开发者必须判定标签将如何用于模块中。术语“客户”具有许多不同的含义。例如,客户可能意味着从你那里购买货物和服务的人,或者,它可以意味着你与“其”打交道的人。这个单词的运用将影响采用其它语言的文本。这在图5中的方框501处展示。
接下来,开发者打开标签对话程序。打开的标签对话说明性地类似于图6中所展示的标签对话600。但是,可以使用其它界面。被呈现的界面允许开发者输入他们想要为标签输入的特定文本。标签对话的打开在图5的方框502处展示。
一旦打开了标签对话,开发者就在行602处输入标签的所需文本。作为选择,开发者可以在行602处输入标签的所需文本的一部分。例如,开发者可以输入文本片段“customer(客户)”,或者可以输入“cust”。另外,开发者将数据指出新标签将如何用在行603和604处的数据输入界面。这个数据可以用于搜索标签系统中的现有标签,或者可以在创建新标签时使用。例如,如果该开发者正在为管理销售创建模块,并且想要使用项“客户”来为购买者生成标签,那么,开发者将会在行604处输入购买者的类别代码。这个代码可以通过下拉菜单来手动地输入,或者可以通过使用现有系统设置来自动输入。这个类别代码控制该功能所使用的过程的其余部分。通常,标签对话中的类别代码和名字空间条目符合标签系统的当前设置。数据的输入在图5的方框504处展示。这个数据作为正则表达式输入。另外,在替换实施例中,通过选中将搜索限制到所选择的类别的复选框,开发者可以控制搜索。
开发者通过选择按钮650来激活搜索功能。但是,可以使用其它技术来激活标签搜索功能。搜索引擎的激活在图5的方框505处展示。
然后,标签对话仔细搜索数据库,以找出数据库中与所输入的文本匹配的的条目。在搜索过程中,可以向该用户显示进展指示器。进展指示器由图6中的参考标号640示出。当搜索完成时,进展指示器消失,并且,对话将与采用所选择的语言的初始查询相匹配的所有标签的显示返回给开发者。这在方框506处展示。
在一个实施例中,界面600扩大,以显示如图6所示的所标识的匹配。在这个实施例中,所显示的匹配列表可以包括标签ID表格230中所包含的信息、以及来自标签文本表格240的某些信息。该结果视图显示了与可通过同表格230的关系而获得的额外信息相结合的、采用所选择的语言的文本。GUID按升序将搜索的结果呈现给开发者。在图6中的区域610内显示结果的例子。但是,可以使用其它排序技术,例如,通过文本匹配的升序。然后,开发者进行检验,以了解标签文本中的任一个是否与所需文本匹配。这在方框520处展示。如果找到与新标签的所需文本相匹配的文本,那么,开发者加亮或指出与所需标签文本匹配的特定标签。这在方框507处展示。如果需要的话,也可以在620处示出标签的翻译。
接下来,系统进行检验,以了解所选择的标签类别和名字空间是否与新标签的类别相同。这在方框508处展示。如果标签类别和名字空间在所选择的标签与新标签之间相同,那么,所选择的标签的信息用于新标签。这在图5的方框509处展示。
如果标签的名字空间和类别与新标签的所需用途不同,那么,必须复制该标签。这个被复制的信息也包括所选择的标签的所有翻译版本。当标签被复制到新标签时,在新标签的标签ID表格230中制作指出从那里复制它的标签的GUID的条目。这在方框510处展示。这样,当更改主标签文本时,可以容易地更新新标签的文本。通过执行典型的查找和替换协议,或通过任何其它的自动化方法,可以作出这个对变化的更新。
如果在搜索期间没有发现匹配,那么,开发者必须为新标签生成新的对象。新对象的生成在方框521处展示。在标签的生成期间,标签的特定特征被存储在标签ID表格230和标签文本表格240中。如果标签的文本不完全,那么,开发者在标签对话600中输入所需文本的剩余部分。基于标签系统的当前设置来输入名字空间和类别代码。开发者也必须为采用任何所需语言的标签文本生成翻译。此外,标签的当前操作语言的ID被存储为主语言。这些翻译的添加或生成、以及标签属性的输入在方框522处展示。
总之,信息被分成1::n的关系,而不是对每种语言具有单个资源文件。该关系的“1”一方保存标签标识符以及其它实用的概括标签信息。该关系的“n”一方保存特定语言上的标签文本。通过按这个方式来排列标签,可以在运行时访问所有语言上的标签。
在新标签的开发期间,可以通过使用系统中的现有标签或通过从无到有地创建新标签,来复制标签。当搜索标签时,可以输入表达式(例如,“<Ledger”给出以Ledger(分类帐)开始的所有可用标签。但是,取决于实现系统的地方,可以使用不同的句法。)。通过选择将要搜索的特定名字空间或类别,可以减少这些命中。也可以通过使用词语数据库来执行搜索。也可以通过使用词语数据库(web服务)来创建新标签。当进入词语数据库时,可以将当前搜索标准与描述其中将要使用标签的实际情况的额外标准结合起来。这样可确保使用正确的词语。当在词语数据库中找到标签时,将它复制到新标签。词语数据库具有或可以具有所有支持的语言的翻译。当要使用标签时,它必须存在于搜索结果中,从而匹配实际的名字空间和类别。如果是这种情况,那么,可以选择特定标签。如果不是这种情况,那么,通过用手书写标签文本,或通过从词语数据库的另一个名字空间/类别复制标签,来创建新标签。通过复制标签,可给出与当前的名字空间和类别有关的新标识符。复制所有文本和其它概括信息。
通过使用标签对话(直接从特定的标签属性调用),来完成标签的管理。通过该对话,可以维护标签,并选择用于特定属性的特定标签。通过代码使用标签系统可以通过给出这些需要的特征的标签接口发生。这样,可以更改存储标签的方法。存储可以是SQL元数据存储、资源文件或web服务。实际上,取决于对web的特定访问,它可以是所有类型的存储的组合。
标签对话确保在正确的情况中使用标签。通过将类别引入标签系统,可确保正确地使用标签。但该特征也具有另一个目的。当翻译标签时,可以通过名字空间信息和类别的组合来了解标签将要被用在哪里。这样,可以发现要使用的正确的词语。通过知道标签被用在哪里,可以将更多“最佳实践”检验添加到“最佳实践”构架中。标签对话允许生成适合已知的(或未知的)翻译工具的特定翻译文件。通过将日期信息导出到翻译文件,可以检验导入翻译的日期。这样,可保证正在进行的翻译过程对于系统中的各个最后的变化是最新的。利用被更新的交叉参考系统,可以了解特定标签被用在哪里。也可以了解对特定标签的更改。这个特征与翻译者有关给他们确定对特定标签的更改简单与否(例如,在行的末端处添加“.”)的可能性。
当搜索标签时,开发者难以识别可能在当前应用程序中有用的现存标签。开发者经常不知道保存在其它区域内存在的所需文本的数据库中有什么标签可用。另外,开发者想要创建包含用于该用途的正确信息的标签、以及对标签中的词语的适当翻译。
本发明的词语数据库通过提供额外的特征来扩展标签系统。这些额外的特征可以由翻译者或标准组织来控制。通过这些特征,可以将额外的搜索标准添加到标签对话中,以帮助找出对应于标签的实际所需用途的标签。当存在这些特征时,额外的结果将被返回给开发者,以协助为标签选择正确的词语。由于开发者倾向于用其自己的本国语言来思考,因此,当开发者的本国语言的一个单词可以被翻译成另一种语言的多个单词时,这些特征将有助于标准化标签中所使用的词语。
图7是实体关系图,根据本发明的一个实施例展示了包含用于标签系统中的词语数据库的各种集合之间的关系。标签系统在一个实施例中可以是以上图1-6中所讨论的标签系统,或者可以用于利用词语和标签的任何其它的系统或应用程序,例如,文字处理器、web浏览器等。该词语数据库类似于标签系统,但包括额外的信息。图7中的实体关系图类似于图2中的实体关系图。词语数据库系统700包括语言表格710、主关系720、词语ID表格730和词语文本表格740。在一个实施例中,这些集合被组织为被排列成表格的结构化查询语言(SQL)元数据存储。但是,可以使用用于集合的其它排列和其它数据库,例如,面向对象的数据库。
语言表格710是包括至少两个子字段的表格。另外,语言表格710类似于图2的标签系统中的语言表格210。语言表格710中的这两个子字段是语言ID字段711和语言名称字段712。语言ID字段711保存指出特定语言的代码,并可以由商业解决方案软件程序理解。语言名称字段712是保存语言的名称的文本字段。例如,如果这些可用语言之一是英语-美国,那么,语言ID字段711说明性地可以是“01”,或者,若使用ASCII标准的话,它可以是“en-us”。但是,其它ID类型可以用于语言ID字段711中,或者,任何其它方法与将语言表示为ID的语言表格分开。
语言表格710与词语文本表格740有1:n的关系。通过这个关系(1:n),可以让每种语言的标签文本条目对数据库700可用。
主文件720在一个实施例中是一种关系,它包括与标签700的主语言有关的信息。在另一个实施例中,主文件720采用该原始语言和格式来存储词语的原始版本。如果主文件720是表格,那么,数据库700中的每个词语具有主表格720中的关联的项目。通过其唯一标识符,在主表格720中标识每个主词语。主文件720与语言表格710之间的关系是1:1的关系,并且,词语ID表格730是在1:1的关系,因为主表格720中的条目只可以在每个标签的一种语言中存在。在替换实施例中,主文件720可以是一个或多个字段,它是指出主词语的唯一ID的词语表格730的一部分。另外,在一个实施例中,主语言关系可以成为被称作主语言Id的ID表格730上的字段。
词语文本表格740类似于标签文本表格240,并且包括包含由词语ID标识的每个词语的文本的条目。词语文本表格740包括包含对采用各种语言的每个词语ID的翻译的条目。词语ID表格730与词语文本表格740之间的关系、以及语言表格710与词语文本表格730之间的关系是1:n。这是因为在每个词语的词语ID表格中有一个条目,但词语的各个版本的文本可以在几种语言中存在。但是,在本发明的其它实施例中,词语ID与词语文本之间的关系可以是1:1(或者,如果文本不存在的话,可以是1:0),其中,主词语的每个翻译在词语ID表格730中具有其自己的唯一词语ID和条目。
根据本发明的一个实施例,词语ID表格730包括ID字段731、类别字段734、描述字段735、复制于字段736和状态字段737。词语ID表格730的例子在图7B中展示。
ID 731字段被用来标识数据库700中的特定词语。在一个实施例中,这个ID是全局球唯一标识符或GUID。每当生成新的项时,为它分配新的GUID。在一个实施例中,新的词语被定义为对于数据库700而言是新的词语,而不只是现存词语的翻译。但是,在其它实施例中,为现存词语的翻译生成ID字段731中的新条目。
词语ID表格730中的类别字段734是展示该词语被用于程序的哪个组件中的特定字段。另外,通过运用类别字段734,可协助开发者在创建标签文本时按正确方式使用该词语。类别对应于词语的节点类型和属性。节点类型是词语的特定属性。这样,通过类别字段734,可以确保对于所需程序按适当的方法使用词语。通过类别,可以基于所需的词语的类型或类别来搜索现存的词语数据库。
描述字段735是表格730中的条目,它向用户或开发者描述词语如何被用于特定情况。例如,描述字段735可以是告知词语用于医疗客户的分类帐中的条目。描述可以采用单词语,或者,它可以依照预定的代码列表来加以编码。不管如何找到词语,都将通过区域字段来获得使用区域。
复制于字段736指出是否从词语数据库中的另一个词语拷贝复制条目的关联词语。如果从另一个词语复制该词语,那么,复制于字段736包括父或主词语720的ID 731。在一个实施例中,这个ID是父项的GUID。但是,其它ID可以用于字段736中。如果词语不是另一个词语的复制版本,那么,复制于字段736是空白的或被设置为空。另外,如果在复制之后从主词语的文本更改项的文本或任何数据,那么,复制于字段736被设置为空,从而消除主词语720与这个特定子词语之间的任何链接。但是,对条目的其它更改将会导致复制于字段736被复位。在替换实施例中,词语ID表格730包括指出什么词语ID包含被复制的词语的字段。ID表格730中的词语要么是主词语,要么是子词语。当词语的每个翻译具有其自己唯一的ID时,只有采取原始形式的词语是主词语。所有其它版本是子词语。可以基于由特定ID表示的主文件来自动更新分配了复制于字段736的标签。
状态字段737是指出词语数据库中该词语的状态的字段。词语的状态对于使用词语数据库来确定数据库中所选择的词语的有用性和可信性的开发者而言是有用的。状态字段737可以指出是否依照标准关联或其它来源来校对词语及其关联的翻译。状态字段737也可以指出谁向词语数据库建议该词语。如果开发者只想要使用由特定组织生成或建议的词语,那么,这会有用。但是,涉及词语数据库中的词语的开发或涉及词语的可靠性的其它信息可以被存储在词语ID表格730的状态字段737中。
词语区域760是定义该词语数据库中的特定词语的用途或区域的区域。词语区域包括两个字段——名称字段761和区域字段762。名字关键字761协助开发者和翻译者了解该词语被用于哪些区域内。当创建新的词语时,名字关键字761中所包含的信息由开发者来提供,并且提供与特定词语的用途有关的信息。例如,名字关键字761可以告诉开发者该词语被用于分类帐中或生产中。区域字段762为开发者提供与文档或应用程序中使用该项的区域有关的信息。例如,区域字段可以告诉开发者特定词语用于生产环境或医疗程序中。在其它区域内,描述字段提供与词语的用途有关的其它信息。
词语文本表格740包括至少三个不同的字段:词语ID字段744、词语文本字段741和编辑日期742。图7C展示了词语文本表格740的例子。在本发明的替换实施例中,可以将附加的字段添加到词语文本表格740中,例如,语言专用图标、位图、声音、影片等。这些替换字段可以包括指出书写该文本所采用的语言的字段743、或标识词语文本表格中的文本的每个版本的条目标识符的字段。
词语ID字段744是标识特定词语文本的词语ID 731的字段。这个条目允许开发者和系统知道当前文本与哪个词语ID 731有关。当词语文本从主语言(或任何其它的语言)被翻译成另一种语言时,在词语文本表格中制作新的词语文本条目。这些条目包含采用其各自语言的原始词语文本的各个翻译版本。在词语文本表格740中提供编辑日期字段742,以便开发者知道何时以与词语表格中的该特定条目相关联的语言最后更改了词语的文本。这个日期有助于确保:如果提供文本的翻译,它不取代该翻译的已经更新近的版本。当通过作业或别的方式将翻译自动载入系统时,比较这些翻译日期;并且,如果条目中的版本比所提议的条目更新,那么,所提议的条目不被输入到表格中。编辑日期字段742也允许开发者检验这些翻译对于主文本条目的最新近的版本是否为最新。
图8是根据本发明的一个实施例展示了当访问词语数据库来找出标签的所需词语时由开发者执行的各个步骤的流程图。在本发明的一个实施例中,开发者具有对词语数据库的完全访问,并且可以从数据库中访问、建议、添加或删除词语。在其它实施例中,为能够创建词语的词语作者提供对词语数据库的访问。在这个实施例中,审阅由开发者建议为词语的标签,并由词语作者将它们作为新项添加到正确区域中。
对于词语数据库中的词语的搜索类似于以上图5中的标签系统200所执行的搜索。但是,本发明的这些额外的搜索参数允许尽管在文本与所需文本不匹配的情况下主题专用结果也会出现。开发者通常通过类似于(或等同于)以上图6中所展示的标签对话的对话,来访问词语数据库。图9展示了可以用于本发明的对话窗口的例子。但是,其它界面可以用来访问词语数据库700。开发者在方框800处打开对话900。
开发者通过将标签的所需术语或其一部分、以及标签的类别和区域输入对话900,来开始访问词语数据库。这在图8的方框801处展示。例如,对话900中的类别和区域的选择可通过运用下拉菜单或复选框来手动完成;或者通过使用系统的当前控件来设置类别和区域字段来自动完成。此刻,开发者也可以(例如)在医疗情况或生产情况中选择词语的特定用途。接下来,开发者通过选择按钮(例如,按钮950),来访问对话窗口上的搜索功能。搜索功能的激活在图8的方框802处展示。搜索功能通过词语数据库而进行,并且标识项数据库中与标签的所需文本相匹配的的条目。
搜索功能收集词语数据库中的所标识的条目作为结果。在对话900的部分940中,搜索的结果被呈现给开发者。然后,根据预定方法来对这些结果进行排序或分类。在一个实施例中,词语的排列是通过文本匹配进行的。但是,可以使用其它分类方法,例如,按用途的特定区域分类。结果对用户的呈现在方框803处展示。在替换实施例中,开发者可以将搜索结果限制到具有预定状态的词语,即由特定来源建议或生成的词语。
然后,开发者审阅这些结果,以确定是否在这些结果中发现所需的词语。这在图8的方框804处展示。如果结果包括与所需标签的确切词语和类别相匹配的词语,那么,开发者可以使用标签上的词语,而无须对该标签的词语进行任何调整。然后,在方框805处复制标签。如果正确的词语在这些结果中,但不在正确类别中,那么,开发者必须确定对于所需词语而言,哪个词语是最正确的匹配。然后,开发者可以查看单词词语条目的描述字段中所包含的信息。这个字段向开发者通知该词语的一般用途。信息的审阅在方框806处展示。
另外,当开发者正在审阅结果时,开发者可以查看项区域表格760中包含的与词语的特定用途有关的信息。当开发者正在审阅将要被复制的词语时,相同的词语会多次出现在这些结果中。当所需的项在搜索语言中具有多个含义时,经常会发生这种情况。例如,一个英语单词在西班牙语中可以具有多个的等效的单词。然后,开发者必须基于数据库中所提供的信息,来选择要使用哪个词语。词语区域表格760的区域字段762为开发者提供关于所选择的类别中的词语的特定用途的信息。例如,在英语中,单词“customer”可以根据词语的用法而具有不同的含义。在商店设置中,“customer”是从商店购买物品的人。但是,在医疗情况中,“customer”是病人。所以,通过词语区域的运用,基于该词语的预定用途,开发者可以选择正确的“customer”来使用,并因此获得与所需术语更紧密地匹配的、对该词语的翻译。词语的特定信息的审阅在方框807处展示。
如果基于词语的用途,词语与开发者意图匹配,那么,开发者可以选择这些词语中的一个,并通过将该词语复制到新标签来创建新标签。当复制词语时,在词语ID表格730中生成新的记录。另外,词语文本表格中的所有这些翻译被复制到这个新的记录。原始词语的唯一ID也被存储在复制于字段中。这协助开发者或其它人知道这个词语起源于另一个区域。当更新主词语时(例如,当开发者调用作业时),这也允许词语和关联的翻译被更新。词语的复制在图8的方框808处展示。
如果所需词语或词语的用途不位于词语数据库700的搜索中,那么,开发者在方框816处用最初扩展的所需文本创建新标签。开发者也可以向数据库建议该新词语。通常,开发者将向数据库建议本质上是类属的词语。通过完成该词语的所有要求(例如,提供与词语区域有关的类别信息、描述信息和关联的信息),开发者向词语数据库700建议该单词。这在图8的方框820处展示。
当开发者在对话900上选择建议(Suggest)按钮951时,将新词语发送到词语数据库。在词语数据库处接收到该词语之后,为所建议的词语在词语数据库中创建新条目。这时,将状态字段737设置成已建议。以后,在审阅了该词语之后,可以将该词语的状态该为已审阅或指示该词语已被词语数据库接受的其它指示。同样在这个时候,开发者将该词语的任何现存的翻译提供给词语数据库;或者,可由翻译者以后将翻译添加到词语数据库中。所有这些文本被存储在新词语的词语文本表格条目中。向词语数据库的词语建议在图8的方框820处展示。在建议过程中,如果当前提供的翻译对于词语的特定用途而言不准确,那么,开发者可以提供现存词语的已更新的翻译,从而更新数据库。
虽然已参照特定的实施例来描述本发明,但是,本技术领域的技术人员将会认识到,在不脱离本发明的精神和范围的前提下,可以在形式和细节方面进行更改。

Claims (24)

1.一种在词语数据库中创建新词语的方法,所述新词语具有与标签的所需文本相匹配的文本,所述方法包括以下步骤:
在一界面处接收指示所述新词语的所需文本和所需特定用途的数据;
在所述词语数据库中搜索具有与新词语的所需文本匹配的文本和与所需特定用途相类似的含义的词语;
将在所述词语数据库中找到的匹配列表返回给用户;以及
将所述新词语加入到所述词语数据库中,其中所述加入包括加入来自匹配列表的一个词语;
其中,所述词语数据库具有表示词语的数据结构,该数据结构包括:词语标识ID表格,所述词语标识ID表格保存与该词语相关的包含其标识符、通用类别和状态字段的信息;词语文本表格,所述词语文本表格保存跨越各种文本语言的词语文本的各种版本;词语区域表格,所述词语区域表格包括与词语关联的标签的特定用途以及关于如何使用词语的描述。
2.如权利要求1所述的方法,其特征在于,搜索还包括:在所述词语数据库内搜索词语,所述词语具有与指示如何使用所述新词语的所需特定用途相同的所指示的用途。
3.如权利要求1所述的方法,其特征在于,还包括以下步骤:
接收对匹配列表中的一词语的选择,并通过将所选择的词语复制到新标签来创建一个新标签。
4.如权利要求1所述的方法,其特征在于,加入所述新词语还包括以下步骤:
如果未找到匹配,则在所述词语数据库中为新词语创建一个新的对象。
5.如权利要求4所述的方法,其特征在于,创建新对象还包括以下步骤:
为所述新词语分配GUID;以及
在所述词语数据库中为所述新词语创建记录。
6.如权利要求5所述的方法,其特征在于,在界面处接收数据还包括以下步骤:
接收所述新词语的类别代码;以及
接收所述新词语的描述。
7.如权利要求4所述的方法,其特征在于,还包括以下步骤:
将所述新词语存储在所述词语数据库中。
8.如权利要求5所述的方法,其特征在于,还包括以下步骤:
将所述新词语的文本的各个版本存储在所述词语数据库中的所述记录内。
9.如权利要求1所述的方法,其特征在于,还包括以下步骤:
在界面处接收数据之前,打开一对话界面;
其中,所述在一界面处接收指示所述新词语的所需文本和所需特定用途的数据的步骤包括在所述对话界面中接收所述数据。
10.如权利要求3所述的方法,其特征在于,在所述词语数据库中搜索具有与新词语的所需文本匹配的文本和与所需特定用途相类似的含义的词语还包括以下步骤:
在所述词语数据库中选择具有所需文本的至少一部分的记录;
在所选择的记录中识别如何使用所选择的记录的指示;以及
将所选择的记录的指示与所述新词语的所需特定用途进行比较;以及
基于有关所需文本和所需特定用途的匹配度,来对所选择的记录进行排序。
11.如权利要求1所述的方法,其特征在于,所述词语标识ID表格包括:
ID字段;
状态字段;
类别字段;以及
描述字段,它指出如何使用所述词语。
12.如权利要求11所述的方法,其特征在于,所述词语标识ID表格还包括所述词语是被存储在复制于字段中的另一词语的复制品的指示。
13.如权利要求11所述的方法,其特征在于,所述类别字段还包括:
节点类型;以及
属性名称。
14.如权利要求11所述的方法,其特征在于,所述ID字段是GUID。
15.如权利要求12所述的方法,其特征在于,所述复制于字段包括从其复制当前词语的词语的ID。
16.如权利要求11所述的方法,其特征在于,所述词语标识ID表格还包括指出所述词语是否是主词语的字段,其中所述主词语是所述词语以原始语言和格式所存储的原始版本。
17.如权利要求11所述的方法,其特征在于,所述状态字段包括指出是否已校对所述词语的信息。
18.如权利要求1所述的方法,其特征在于,所述词语文本表格包括:
采用原始语言的文本短语条目;
多种语言中的至少一种的所述文本短语的翻译。
19.如权利要求18所述的方法,其特征在于,所述词语文本表格还包括:
关于词语文本中的每个条目的编辑日期字段,它指出创建该条目的日期。
20.如权利要求19所述的方法,其特征在于,所述词语文本表格还包括:
所述词语文本表格中的每个条目的唯一ID;以及
保存主词语的唯一ID的字段,其中所述主词语是所述词语以原始语言和格式所存储的原始版本。
21.如权利要求1所述的方法,其特征在于,所述词语区域表格还包括:
名字关键字字段;以及
区域字段。
22.如权利要求21所述的方法,其特征在于,所述区域字段包括与所述词语的特定区域有关的信息。
23.如权利要求21所述的方法,其特征在于,所述名字关键字字段包括所述词语被用于应用程序中的什么地方的指示。
24.如权利要求1所述的方法,其特征在于,所述词语标识ID表格、所述词语文本表格和所述词语区域表格在单个表格中。
CN200480001670XA 2003-10-30 2004-07-22 用于标签系统的词语数据库扩展 Expired - Fee Related CN1829987B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/696,933 US7814101B2 (en) 2003-10-30 2003-10-30 Term database extension for label system
US10/696,933 2003-10-30
PCT/US2004/023555 WO2005045564A2 (en) 2003-10-30 2004-07-22 Term database extension for label system

Publications (2)

Publication Number Publication Date
CN1829987A CN1829987A (zh) 2006-09-06
CN1829987B true CN1829987B (zh) 2011-06-08

Family

ID=34550234

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200480001670XA Expired - Fee Related CN1829987B (zh) 2003-10-30 2004-07-22 用于标签系统的词语数据库扩展

Country Status (6)

Country Link
US (2) US7814101B2 (zh)
EP (1) EP1584018A4 (zh)
JP (1) JP5367947B2 (zh)
KR (1) KR101201011B1 (zh)
CN (1) CN1829987B (zh)
WO (1) WO2005045564A2 (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7783637B2 (en) * 2003-09-30 2010-08-24 Microsoft Corporation Label system-translation of text and multi-language support at runtime and design
US7814101B2 (en) * 2003-10-30 2010-10-12 Microsoft Corporation Term database extension for label system
US7774195B2 (en) * 2005-03-08 2010-08-10 Microsoft Corporation Method and system for creating, storing, managing and consuming culture specific data
US7698126B2 (en) * 2005-03-08 2010-04-13 Microsoft Corporation Localization matching component
US7653528B2 (en) * 2005-03-08 2010-01-26 Microsoft Corporation Resource authoring incorporating ontology
US8219907B2 (en) * 2005-03-08 2012-07-10 Microsoft Corporation Resource authoring with re-usability score and suggested re-usable data
US7707549B2 (en) * 2006-03-15 2010-04-27 Microsoft Corporation Synchronicity in software development
US7881923B2 (en) * 2006-03-31 2011-02-01 Research In Motion Limited Handheld electronic device including toggle of a selected data source, and associated method
LU91277B1 (fr) * 2006-09-12 2008-03-25 Brev Ernest T Freylinger S A O Méthode et système d'assistance à la protection des marques
US20080115072A1 (en) * 2006-11-09 2008-05-15 International Business Machines Corporation Method and apparatus for visually assisting language input mode indentification
US7657513B2 (en) * 2006-12-01 2010-02-02 Microsoft Corporation Adaptive help system and user interface
US8387024B2 (en) * 2007-04-18 2013-02-26 Xerox Corporation Multilingual software testing tool
US9454514B2 (en) * 2009-09-02 2016-09-27 Red Hat, Inc. Local language numeral conversion in numeric computing
EP2534585A4 (en) * 2010-02-12 2018-01-24 Google LLC Compound splitting
JP2012038191A (ja) * 2010-08-10 2012-02-23 Seiko Epson Corp 電子機器および電子機器の制御方法
EP2535802B1 (en) * 2011-06-16 2016-08-10 GN Netcom A/S Computer-implemented method of arranging text items in a predefined order
US8850310B2 (en) * 2011-10-11 2014-09-30 Microsoft Corporation Data entry suggestion lists for designated document data entry areas based on data from other document data entry areas
US9216835B2 (en) * 2012-09-17 2015-12-22 Intel Corporation Translating application labels
US9442909B2 (en) 2012-10-11 2016-09-13 International Business Machines Corporation Real time term suggestion using text analytics
US20130238311A1 (en) * 2013-04-21 2013-09-12 Sierra JY Lou Method and Implementation of Providing a Communication User Terminal with Adapting Language Translation
US9519643B1 (en) * 2015-06-15 2016-12-13 Microsoft Technology Licensing, Llc Machine map label translation
US10303799B2 (en) 2016-02-11 2019-05-28 International Business Machines Corporation Converging tool terminology
KR102251832B1 (ko) * 2016-06-16 2021-05-13 삼성전자주식회사 번역 서비스를 제공하는 전자 장치 및 방법
US10162819B2 (en) * 2016-08-17 2018-12-25 Netflix, Inc. Change detection in a string repository for translated content
US20180267678A1 (en) * 2017-03-14 2018-09-20 Salesforce.Com, Inc. Techniques and architectures for managing text strings to be provided by a graphical user interface
US10417183B2 (en) 2017-03-14 2019-09-17 Salesforce.Com, Inc. Database and file structure configurations for managing text strings to be provided by a graphical user interface
US11074285B2 (en) * 2017-05-10 2021-07-27 Yva.Ai, Inc. Recursive agglomerative clustering of time-structured communications
US10489024B2 (en) * 2017-09-12 2019-11-26 Sap Se UI rendering based on adaptive label text infrastructure
CN108874971B (zh) * 2018-06-07 2021-09-24 北京赛思信安技术股份有限公司 一种应用于海量标签化实体数据存储的工具和方法
CN109918655B (zh) * 2019-02-27 2023-11-14 浙江数链科技有限公司 物流术语库生成方法和装置
CN113010244B (zh) * 2021-02-24 2023-05-26 上海莉莉丝网络科技有限公司 语言资源数据库、语言资源管理平台及语言资源管理系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006225A (en) * 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2593548B2 (ja) * 1989-04-11 1997-03-26 株式会社東芝 データ処理装置
US5303151A (en) 1993-02-26 1994-04-12 Microsoft Corporation Method and system for translating documents using translation handles
JP3028996B2 (ja) * 1993-05-18 2000-04-04 東洋エンジニアリング株式会社 表示画面管理方法
US6011847A (en) * 1995-06-01 2000-01-04 Follendore, Iii; Roy D. Cryptographic access and labeling system
US5768581A (en) * 1996-05-07 1998-06-16 Cochran; Nancy Pauline Apparatus and method for selecting records from a computer database by repeatedly displaying search terms from multiple list identifiers before either a list identifier or a search term is selected
JPH1091418A (ja) * 1996-09-17 1998-04-10 Nec Corp 多国語対応ソフトウェア実現方式
US5842217A (en) 1996-12-30 1998-11-24 Intel Corporation Method for recognizing compound terms in a document
JPH10320186A (ja) 1997-03-18 1998-12-04 Fujitsu Ltd ソフトウェア仕様確認サーバ、ソフトウェア開発方法、ソフトウェア開発システム、ソフトウェア仕様確認プログラムを記録した記録媒体、ソフトウェア開発プログラムを記録した記録媒体及びソフトウェア開発注文プログラムを記録した記録媒体
US7069228B1 (en) * 1998-04-30 2006-06-27 Rose James W Apparatus and method for an internet based computer reservation booking system
US6247043B1 (en) * 1998-06-11 2001-06-12 International Business Machines Corporation Apparatus, program products and methods utilizing intelligent contact management
US6467082B1 (en) * 1998-12-02 2002-10-15 Agere Systems Guardian Corp. Methods and apparatus for simulating external linkage points and control transfers in source translation systems
US6804675B1 (en) * 1999-05-11 2004-10-12 Maquis Techtrix, Llc Online content provider system and method
US6425123B1 (en) * 1999-06-29 2002-07-23 International Business Machines Corporation System, method, and program for testing translatability of software by using english multi-byte transliteration creating double-wide characters
US6507812B1 (en) * 1999-06-29 2003-01-14 International Business Machines Corporation Mock translation method, system, and program to test software translatability
US6567973B1 (en) * 1999-07-28 2003-05-20 International Business Machines Corporation Introspective editor system, program, and method for software translation using a facade class
JP2001109780A (ja) * 1999-07-30 2001-04-20 Canon Inc 情報処理装置、情報処理システム、情報処理装置の制御方法及び記憶媒体
GB2358260B (en) * 2000-01-14 2004-07-07 Reuters Ltd News distribution
US6493661B1 (en) * 2000-05-16 2002-12-10 Scheider Automation, Inc. Reusable multi-language support facility for software
US20020156770A1 (en) * 2000-05-31 2002-10-24 Krichilsky Philip S. System and method for marketing products
EP1346290A2 (en) * 2000-09-29 2003-09-24 Victor Hsieh Online intelligent information comparison agent of multilingual electronic data sources over inter-connected computer networks
AU2002210834A1 (en) * 2000-10-30 2002-05-15 Alphonsus Albertus Schirris Pre-translated multi-lingual online search system, method, and computer program product
US6629104B1 (en) * 2000-11-22 2003-09-30 Eastman Kodak Company Method for adding personalized metadata to a collection of digital images
US20020123878A1 (en) 2001-02-05 2002-09-05 International Business Machines Corporation Mechanism for internationalization of web content through XSLT transformations
JP2003006198A (ja) * 2001-04-20 2003-01-10 Canon Inc 画像処理装置およびその方法、並びに、サーバ装置
AU2002257262A1 (en) * 2001-05-09 2003-03-10 Core Ipr Limited Method and system for facilitating creation, presentation, exchange, and management of documents to facilitate business transactions
US7464072B1 (en) * 2001-06-18 2008-12-09 Siebel Systems, Inc. Method, apparatus, and system for searching based on search visibility rules
US20030004946A1 (en) * 2001-06-28 2003-01-02 Vandenavond Todd M. Package labeling
US6772110B2 (en) * 2001-06-28 2004-08-03 Microsoft Corporation Method and system for converting and plugging user interface terms
WO2003016609A2 (en) * 2001-08-21 2003-02-27 Sara Lee Corporation Systems and methods for manufacturing
US6826572B2 (en) * 2001-11-13 2004-11-30 Overture Services, Inc. System and method allowing advertisers to manage search listings in a pay for placement search system using grouping
US6722568B2 (en) * 2001-11-20 2004-04-20 Ncr Corporation Methods and apparatus for detection and processing of supplemental bar code labels
US7447624B2 (en) * 2001-11-27 2008-11-04 Sun Microsystems, Inc. Generation of localized software applications
US20030101046A1 (en) * 2001-11-28 2003-05-29 Mark Krasnov Word, expression, and sentence translation management tool
US7080325B2 (en) * 2002-02-22 2006-07-18 Call-Tell Llc Graphical device for comprehensive viewing and input of variable data via a browser-based display
US7231395B2 (en) * 2002-05-24 2007-06-12 Overture Services, Inc. Method and apparatus for categorizing and presenting documents of a distributed database
US20040039989A1 (en) * 2002-08-26 2004-02-26 Peter Warren Structured forms with configurable labels
US20040056894A1 (en) * 2002-09-19 2004-03-25 Igor Zaika System and method for describing and instantiating extensible user interfaces
US20040128272A1 (en) * 2002-12-30 2004-07-01 Thomas Salomon Integrating label data with a material master
US20040230328A1 (en) * 2003-03-21 2004-11-18 Steve Armstrong Remote data visualization within an asset data system for a process plant
AU2004246660A1 (en) * 2003-05-30 2004-12-16 Astrid Keene System and method for labeling pharmaceutical prescriptions
US8447775B2 (en) * 2003-06-13 2013-05-21 Microsoft Corporation Database query user interface to assist in efficient and accurate query construction
US7231396B2 (en) * 2003-07-24 2007-06-12 International Business Machines Corporation Data abstraction layer for a database
US7783637B2 (en) * 2003-09-30 2010-08-24 Microsoft Corporation Label system-translation of text and multi-language support at runtime and design
US7814101B2 (en) * 2003-10-30 2010-10-12 Microsoft Corporation Term database extension for label system
US20060146790A1 (en) * 2004-12-30 2006-07-06 Cisco Technology, Inc. System and method for providing reach me cover me feature in a session initiation protocol (SIP) environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006225A (en) * 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches

Also Published As

Publication number Publication date
EP1584018A4 (en) 2009-07-22
WO2005045564A2 (en) 2005-05-19
KR101201011B1 (ko) 2012-11-13
EP1584018A2 (en) 2005-10-12
JP5367947B2 (ja) 2013-12-11
US7814101B2 (en) 2010-10-12
JP2007510218A (ja) 2007-04-19
CN1829987A (zh) 2006-09-06
KR20060111361A (ko) 2006-10-27
WO2005045564A3 (en) 2006-02-23
US20060074987A1 (en) 2006-04-06
US20050097109A1 (en) 2005-05-05

Similar Documents

Publication Publication Date Title
CN1829987B (zh) 用于标签系统的词语数据库扩展
CN100462962C (zh) 文本的标号系统-翻译和在运行时间的多语言支持以及设计
US6418400B1 (en) Representation and processing of EDI mapping templates
US8112401B2 (en) Analyzing externally generated documents in document management system
US7953766B2 (en) Generation of attribute listings for unique identification of data subsets
CN1571968B (zh) 向数据的集合中添加与该数据相关联的元数据的方法
US8275781B2 (en) Processing documents by modification relation analysis and embedding related document information
CN108762743B (zh) 一种数据表操作代码生成方法及装置
US20110289407A1 (en) Font recommendation engine
US20070255694A1 (en) Document-drafting system using document components
US20080019281A1 (en) Reuse of available source data and localizations
US20110161345A1 (en) System and method for retrieval of information contained in slide kits
US8407235B2 (en) Exposing and using metadata and meta-metadata
US7055096B2 (en) Data integrate system and data integrate method
US20030110175A1 (en) Deploying predefined data warehouse process models
US8799256B2 (en) Incorporated web page content
CN112560418B (zh) 从自由形式的表格式数据创建行项目信息
US20080256096A1 (en) Localizing reports using metadata and multilanguage translations
JP7412477B2 (ja) 開発支援システムおよび開発支援方法
CN118297080A (zh) 内容展示方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150513

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150513

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110608

Termination date: 20200722

CF01 Termination of patent right due to non-payment of annual fee