当前位置: 首页 > 专利查询>微软公司专利>正文

模块化有限状态变换机的变换制造技术

技术编号:5440923 阅读:200 留言:0更新日期:2012-04-11 18:40
提供Q框架,简称为QFX,用于以跨一组不同的FST表示类型实现对在 其表示中支持动作信息的FST的动作语义的保存的通用方式执行高效树变换。 QFX也允许在执行树变换的同时保存有序和无序嵌套信息、支持将非确定性数 据结构变换成确定性数据结构,并允许对含有动作语义的机器进行交运算。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术一般针对诸如有限状态变换机等有限状态自动机,尤其涉及其变换。祖旦 冃豕作为一般背景,也被称为有限状态自动机(FSA)的有限状态机(FSM) 是由状态、转移和动作组成的系统的行为的模型。FSM或FSA可使用状态图、 状态转移图、状态表、标记有向图、树等按照各种概念方式表示,它们保存构 成该机器即自动机的状态、转移和动作的关系。存在不同种类的FSM或FSA 及其等效方式,以及其中某些的各种已知转换。目前,存在某些图变换机和树变换机,它们实现例如对某些类型的有向图 数据结构变换由FST建模的一组系统,以形成新的一个或一组FST,例如新的 有向图数据结构的某些方面,然而,这样的系统由于各种原因而受限。例如, 可扩展样式表语言变换(XSLT)是用于XML文档变换的基于XML的语言。 当用于变换其他XML文档时,该文档不被改变;相反,基于现有的XML文 档的内容创建新文档。新文档可由处理器以标准XML句法或按照诸如HTML 或纯文本等另一格式串行化(输出)。XSLT通常用于在不同XML模式之间 转换数据,或者将XML数据转换成网页或PDF文档。实质上,XSLT允许创建描述其他XML文档的变换的XML文档,其又 可被转换成不同的格式。然而,XSLT无法考虑到可用FST表示的动作语义。 在这一方面,动作可能是当处于预定义状态时, 一旦识别某一信息,例如名 字,即执行某一动作。然而,就可为FST定义这样的任意动作而言,XSLT 无法处理作为其变换能力一部分的对这样的任意动作的调用。此外,XSLT无 法在机器上执行补、交和并运算的全部。而且,诸如XSLT等现有变换也无法匹配和构成具有诸如有序和无序嵌套 (例如,被表示为树结构)的有序和无序分层信息两者的FSM。尽管,在某些环境中,存在当变换树时能够处理仅保存有序信息的某些系统,且存在当变换 时能够处理仅保存无序信息的某些系统,但是XSLT或者任何已知的系统都不 包括能跨有向图或树结构保存有序和无序嵌套两者的变换能力。现有技术的有 限状态变换机的变换中的这些和其他缺陷在以下更详细地阐述的本专利技术的各 种示例性非限制性实施例的描述后将变得显而易见。 概述考虑现有技术的上述缺陷,本专利技术提供用于对FST执行高效树变换,例如交、并、补等的一般框架,该框架跨一组不同类型的表示为在其表示中支持动作信息的FST跨变换运算保存动作语义。用于对FST执行高效树变换的框 架也能够在执行树变换的同时保存有序和无序的嵌套信息,且能够支持非确定 性数据结构到确定性数据结构的变换。在一个实施例中,一种方法用于在计算机系统中将指定树结构的数据结构 变换成模块化有限状态变换机(MFST)。该方法包括接收指定表示包括用于 定义动作信息的动作语义的有限状态变换机(FST)的树结构的数据结构。对 由数据结构表示的任何类型的有限状态机(FSM)模型,该方法包括将数据结 构变换成MFST同时在MFST中保存数据结构的动作信息的能力,其中变换包 括对数据结构执行任何交、并和补运算或可归约成任何交、并和补运算的任何 运算。在本专利技术的另一方面中,可根据结果FSM判定得到的FSM是否接受非 空输入。此处提供了简化概述以帮助对以下更详细的描述和附图中的示例性、非限 定性实施例的各方面的基本或大体的理解。然而,本概述并不旨在作为详尽的 或穷尽的概观。本概述的唯一目的是以简化的形式来介绍与本专利技术的各种示例 性、非限定性的实施例相关的一些高层概念,作为以下更为详细的描述的序言。附图简述将参考附图进一步描述本专利技术的用于变换模块化有限状态变换机的树语 法的技术及其相关联的过程,附图中附图说明图1A示出了显示采用由本专利技术提供的一般变换框架变换FST以保存动作 语义的示例性过程的示例性、非限定性流程图1B示出了显示采用由本专利技术提供的一般变换框架变换FST以保存动作语义的示例性过程的示例性、非限定性框图1C示出了显示用于根据本专利技术变换FST的示例性框架和变换引擎的示例性、非限定性框图2A示出了结合本专利技术的变换引擎提供的示例性接口;图2B和2C分别示出了根据本专利技术的实施例提供的PushEnvironment (推入环境)和PopEnvironment (弹出环境)方法的示例性操作。图2D示出了结合本专利技术的变换引擎提供的另一示例性接口;图2E列出了如在由本专利技术提供的变换框架中实现的示例性、非限定性e闭包算法;图2F示出了如由本专利技术提供的变换框架中实现的容纳动作的子集构造技 术的修改;图3A示出了根据本专利技术定义的转换范例的增强集的动作正则表达式 (REGEX)范例,即ar范例的示例性转换;图3B示出了根据本专利技术定义的转换范例的增强集的绑定嵌套范例,即x : [7]范例的示例性转换;图3C示出了根据本专利技术定义的转换范例的增强集的绑定嵌套重复范例, 即;c:m^范例的示例性转换;图3D示出了根据本专利技术定义的转换范例的增强集的;c : (T)范例的示例性转换;图3E示出了根据本专利技术定义的转换范例的增强集的;c : r/ e/范例,即使 用调用的扩充的示例性转换;图3F示出了根据本专利技术定义的转换范例的增强集的;c: 7^e,1+|7范例,即 使用调用的扩充的示例性转换;图4A和4B分别在概念上示出有序(或列表)模式和无序(或集合)模 式,结合这些模式本专利技术的QFX用于跨FST的变换保存有序和无序嵌套信息 两者;图5A示出了显示采用由本专利技术提供的一般变换框架变换FST以保存有序 和/或无序信息的示例性过程的示例性、非限定性流程图; ,图5B示出了显示采用由本专利技术提供的一般变换框架变换FST以保存有序和/或无序信息的示例性过程的示例性、非限定性框图5C到5L示出了根据本专利技术在存在有序或标记信息的情况下对状态机 的变换的示例性、非限定性的各方面;图6A示出了根据本专利技术的QFX的示例性有限状态变换机;图6B到6C分别示出了表示示例性有序嵌套和无序嵌套的树数据结构, 结合这些嵌套本专利技术的QFX用于保存有序和无序嵌套信息两者;图7A示出了根据本专利技术将FSM示例性建模成状态转移表作为示例性状 态机数据结构;图7B示出了根据本专利技术将FSM示例性建模成状态表作为示例性状态机 数据结构;图8A示出了将FSM示例性建模成状态转移图8B示出了根据本专利技术将Moore模型示例表示成示例性类型的状态机数 据结构的变换机;图8C示出了根据本专利技术将Mealy模型示例表示成示例性类型的状态机数 据结构的变换机;图9是表示其中可实现本专利技术的示例性、非限定性网络化环境的框图; 图IO是表示其中可实现本专利技术的示例性、非限定性计算系统或操作环境 的框图。详细描述如背景中所述,用于变换例如往往在计算存储器中表示的标记有向图等 FST和树数据结构的当前框架,对于在跨所有类型的FST变换时保存某些类型 的信息而言不够通用。例如,当前框架无法跨许多类型的FST保存某些FST 的动作语义或由FST表示的有序和无序嵌套信息两者。从而,本专利技术提供此处被称为Q框架(即QFX)的一般框架,用于执行 实现对在其表示中支持动作信息的FST保存动作语义的高效树变换。用于执行本专利技术的高效树变换的Q框架也能够在执行其高效树变换的同时保存有序和 无序嵌套信息。如根据以下描述将理解地,QFX也允许各种本文档来自技高网...

【技术保护点】
一种用于在计算系统中将至少一个树数据结构变换成至少一个模块化有限状态变换机(MFST)的方法,包括: 接收100表示包括用于定义动作信息的动作语义的至少一个有限状态机(FSM)的至少一个树数据结构140a;以及 对由所述至少一个 树数据结构140a表示的任何类型的FSM模型,将所述至少一个树数据结构变换120成至少一个MFST 190同时在所述至少一个MFST 190中保存所述至少一个树数据结构的所述动作信息。

【技术特征摘要】
【国外来华专利技术】2006.9.15 US 11/532,3491.一种用于在计算系统中将至少一个树数据结构变换成至少一个模块化有限状态变换机(MFST)的方法,包括接收100表示包括用于定义动作信息的动作语义的至少一个有限状态机(FSM)的至少一个树数据结构140a;以及对由所述至少一个树数据结构140a表示的任何类型的FSM模型,将所述至少一个树数据结构变换120成至少一个MFST 190同时在所述至少一个MFST 190中保存所述至少一个树数据结构的所述动作信息。2. 如权利要求1所述的方法,其特征在于,所述接收IOO包括接收表示包 括用于定义动作信息的动作语义的至少一个有限状态变换机(FST)的至少一 个树数据结构140a。3. 如权利要求1所述的方法,其特征在于,所述变换120包括采用由变换 引擎180实现的可扩展预定义转换语法170变换所述至少一个树数据结构 140a,所述变换不考虑由所述至少一个树结构140表示的FSM模型的类型而 在所述至少一个MFST中保存所述动作信息。4. 如权利要求1所述的方法,其特征在于,所述变换120包括用预定义的 转换语法170变换所述至少一个树数据结构140a,所述转换语法170不考虑所 述至少一个树结构140a所表示的FSM模型的类型而保存所述至少一个树数据 结构140a的有序和无序嵌套信息两者。5. 如权利要求1所述的方法,其特征在于,所述接收IOO包括接收表示包 括用于定义动作信息的动作语义的所述至少一个FSM的至少一个有向图数据 结构。6. 如权利要求6所述的方法,其特征在于,所述接收IOO包括接收表示包 括用于定义动作信息的动作语义的所述至少一个FSM的至少一个可扩展标记 语言(XML)文档。7. 如权利要求1所述的方法,其特征在于,所述变换120包括对至少两个 树数据结构进行交运算同时在所述至少一个MFST 190中保存所述至少一个树 数据结构140a的所述动作信息。8. 如权利要求1所述的方法,其特征在于,所述接收100包括接收至少一个非确定性树数据结构,且所述变换120包括将所述至少一个非确定性数据结 构变换成确定性的MFST 190。9. 一种包括用于执行如权利要求1所述的方法的计算机可执行指令的计 算机可读介质。10. —种用于将至少一个树数据结构变换成至少一个模块化有限状态 变换机(MFST)的计算系统,包括表示至少一个有限状态机(FSM)的至少一个树数据结构140a,所述至 少一个树数据结构140a是用任何类型的FSM存储模型表示的;用于将所述至少一个树数据结构140a变换成至少一个MF...

【专利技术属性】
技术研发人员:S·E·卢科D·E·兰沃西G·M·德拉利贝拉
申请(专利权)人:微软公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1