一种基于本体学习的Web服务语义提取方法技术

技术编号:3543913 阅读:310 留言:0更新日期:2012-04-11 18:40
基于本体学习的Web服务语义提取方法,首先提取当前WSDL文件中的语义信息:通过读取WSDL文件中的类型定义信息,对每个类型依次进行语法结构以及类型定义结构的解析,建立相应的本体结构;其次在完成对当前WSDL文件的解析后,将所获取的本体存入数据库中并完成对本体的精炼过程:依次取解析后获取的本体,在本体库中查找相同或相关的本体,通过本体直接的比较,获取本体间隐含的关系,丰富本体结构,完成此过程后将此本体及比较结果存入数据库中;最后通过对当前WSDL文件中服务相关信息的解析,建立服务与本体之间的关系。本发明专利技术通过使用本体学习的方法,为无语义信息的服务自动的添加相应的语义信息,可以用于服务发现领域,提高服务发现效率。

【技术实现步骤摘要】

本专利技术涉及一种Web服务语义提取方法,尤其涉及一种基于本体学习的 Web服务语义提取方法。技术背景随着Web服务技术的日趋成熟,业界开始广泛使用Web服务作为新的分 布式软件构件,然而Web服务的广泛使用也使得网络上可用的Web服务数量 急剧增加,如同Web—样,用户对Web服务的査找、访问以及维护变得越来 越困难。目前,Web服务基本上都采用WSDL文件描述,并有UDDI(统一描述、发 现和集成方法)技术支持Web服务的发布、存储和查找。这种技术主要依靠服 务的名字和描述进行关键字査找,它丢失了许多服务描述文件中原有的信息, 用户查询服务的效率较低,无法实现Web服务的自动化,更不能满足服务自 动组合的需求。Web服务急需一种新的方式。为此,研究者们针对提高Web服务的高效性和准确性展开了研究,这些 研究主要从两个不同的方向考虑。 一类是为Web服务引入语义网技术,采用 本体对服务的属性进行描述,保证服务语义的精确和一致性,同时在服务的 查找过程中采用语义推理,弥补了关键字查找不能区分同名异义和异名同义 的缺点,但并没有统一的本体模型和很好的语义Web服务开发工具,因此在 工程实践中存在一定困难, 一直没有得到很好的推广。另一类研究则建立在 目前的现实状况之上,使用标准的WSDL语言进行服务。这类研究主要使用 WSDL文件中的关键字和XML文档的结构对服务进行聚类分析。虽然它们中也提到了基于语义的匹配,但是它们通常只能提取概念而无法获得概念之间的 关系,这与目前使用本体的语义描述方法还存在着相当大的差别。而本体学 习的方法可以从一定程度上解决上述问题。综上所述,虽然Web服务已经有许多相关的研究,但是在现实中实用化 的技术很少,Web服务应用的实际情况和前沿理论研究之间还存在巨大的鸿 沟,如何解决现实问题并且向前推动Web服务技术的发展应该成为现在研究 的重要内容。
技术实现思路
本专利技术的目的在于克服上述现有技术的缺点,提供了一种基于本体学习 的Web服务语义提取方法,本专利技术能够实现从Web服务描述文件中自动获取 本体,并以此为基础为Web服务添加语义,从而减少程序开发人员手工加入 语义的负担,提高服务效率。为达到上述目的,本专利技术采用的技术方案是1) 读取需要解析的WSDL文件,建立类型集合并初始化一个空本体集合 用于暂存从该WSDL文件中获取的本体,进入步骤2);2) 从类型集合中取出一个未处理标签,查找本体集合中是否存在与当前 要处理的标签同名的本体,如果存在则进入步骤4),否则以该标签作为本体 的名字构造一个新的本体对象并将其加入本体集合,进入步骤3);3) 首先分析该标签的语法结构,根据其对应的语义关系建立相应的本体 以及本体之间的关系,并将新建立的本体加入本体集合;然后在类型集合中 查找该标签对应的文档节点,分析其文档结构,如果存在子元素则对子元素 标签进行步骤2)处理,之后根据文档结构对应的语义关系建立本体之间的 关系;4) 如果类型集合中还存在未处理类型,取该类型的标签进入步骤2),否则依次取本体集合中的本体进入步骤5);5) 从本体集合中取一个未存储本体,在本体库中査找是否存在与该本体 同名的本体,如果存在则合并这两个本体,进入步骤7);否则将此本体存入 本体库,进入步骤6);6) 取出与该本体具有相同祖先或者与该本体包含有相同本体的本体,依 次取出这些本体与该本体进行比较,根据比较结果建立这些本体的关系,进 入步骤7);7) 如果本体集合中还存在未存储本体,进入步骤5),否则进入步骤8)8) 解析WSDL文件中的服务相关信息,根据操作输入输出对应的类型参 数为服务添加语义信息。本专利技术步骤3)具体过程如下3. 1预处理将标签进行分词处理,得到一个有序的英文单词词组,然 后再查找其中每个单词词性;3.2如果存在介词,则根据介词的位置将本体分割成小段,如果标签第 一个词为动词,则分割第一小段,经过分割后,各个小段都成为名词短语, 以每个小段为名建立本体,并根据常见语法结构及其对应语义关系中的策略 建立本体之间的联系;3.3对各个小段,如果词的个数大于l,查询最后的名词,分割短语,以 各段为名建立本体,按照常见语法结构及其对应语义关系中的策略建立本体 之间的联系;3. 4判断是否存在单词个数大于1的名词短语,若有则返回步骤3. 3);3. 5根据标签的名字在类型集合中查找相应文档元素,判断这个元素的 类型是element、 simpleType还是complexType,若不存在则结束对该标签 的语义分析,element、 simpleType禾口 complexType者P是XML Schema中的元素类型;3. 6如果是element类型,看其中是否有type属性即看其类型是否在类 型集合中存在,如果存在则取type属性对应的标签为当前标签,进入步骤2) 并将此本体与类型名对应的本体建立等价关系,然后看是否有子元素;如果 没有type属性,则直接看是否有子元素,如果有子元素则进入步骤2),并 使用相应的策略建立语义关系,否则结束对该标签的语义分析;3. 7如果是simpleType类型,取其标签为当前处理标签,进入步骤2), 然后看其是使用哪种形式构建,根据常见文档结构及其对应语义关系中的策 略建立语义关系,之后结束对该标签的语义分析;3. 8如果是complexType类型,取其标签为当前处理标签,进入步骤2)然 后取其子元素,看构建方式是扩展还是自定义,如果是扩展,取base属性对 应的标签为当前标签,进入步骤2),然后根据常见文档结构及其对应语义关 系中的策略建立两者的包含关系;如果是自定义,看其是否有name属性,如 果有,取name属性对应的标签为当前标签,进入步骤2,并根据常见文档结构 及其对应语义关系策略建立语义关系;否则查看是否有子元素,如果有子元 素,继续取子元素进行分析,如果没有仍未分析过的子元素,结束对该标签 的语义分析。所说的步骤5)在本体库中查找是否存在与该本体同名的本体,如果存 在则合并这两个本体,在合并的过程中比较当前的本体与其他本体之间的关 系与数据库中先前存储的关系,若有新的关系则在数据库中插入新数据,若 没有新关系,则看是否比较完所有关系,若没有比较完所有关系则返回取一 个未比较的关系继续进行比较,若比较完所有关系,则进行第7)步骤,看 是否有未存储的关系,如果有则存入数据库,处理完后该本体存储过程结束, 到步骤7;如果不存在同名的本体,则将此本体存入本体库,进入步骤6。所说的步骤6)整个比较过程包括对本体名称的比较及对本体内部包含 关系的比较,过程如下所示,记Cl为两个本体相似的置信度,C2为两本体 等价的置信度,0.5 〈 Cl 〈 C2 〈 1:6. 1取两本体名称进行分词,获取词性,然后根据査词典确定包含词汇 的词性,并按词汇顺序排列;6. 2如果本体包含的词汇存在介词则将词汇分割成小段,并取两个本体 第一小段进行比较,若没有介词转入6. 3;6. 3从小段的最后开始往前依次比较名词和动词,看对应的词语是否相 似,如果末尾的名词已不相似,可以置相似词的个数为零并到下一步,按公 式Score=synNum/max(size(Al本文档来自技高网
...

【技术保护点】
基于本体学习的Web服务语义提取方法,其特征在于: 1)读取需要解析的WSDL文件,建立类型集合并初始化一个空本体集合用于暂存从该WSDL文件中获取的本体,进入步骤2); 2)从类型集合中取出一个未处理标签,查找本体集合中是否存在与当前要处理的标签同名的本体,如果存在则进入步骤4),否则以该标签作为本体的名字构造一个新的本体对象并将其加入本体集合,进入步骤3); 3)首先分析该标签的语法结构,根据其对应的语义关系建立相应的本体以及本体之间的关系,并将新建立的本体加入本体集合;然后在类型集合中查找该标签对应的文档节点,分析其文档结构,如果存在子元素则对子元素标签进行步骤2)处理,之后根据文档结构对应的语义关系建立本体之间的关系; 4)如果类型集合中还存在未处理类型,取该类型的标签进入步骤2),否则依次取本体集合中的本体进入步骤5); 5)从本体集合中取一个未存储本体,在本体库中查找是否存在与该本体同名的本体,如果存在则合并这两个本体,进入步骤7);否则将此本体存入本体库,进入步骤6); 6)取出与该本体具有相同祖先或者与该本体包含有相同本体的本体,依次取出这些本体与该本体进行比较,根据比较结果建立这些本体的关系,进入步骤7); 7)如果本体集合中还存在未存储本体,进入步骤5),否则进入步骤8) 8)解析WSDL文件中的服务相关信息,根据操作输入输出对应的类型参数为服务添加语义信息。...

【技术特征摘要】

【专利技术属性】
技术研发人员:齐勇王坚沈林峰罗元盛徐东红
申请(专利权)人:西安交通大学
类型:发明
国别省市:87[中国|西安]

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

1