首页> 中国专利> 一种面向互联网的数据服务统一描述方法

一种面向互联网的数据服务统一描述方法

摘要

本发明公开了一种面向互联网的数据服务统一描述方法。本方法为:1)创建一领域本体库,其包括若干领域本体,每一领域本体对应一类数据服务;2)根据领域本体对获得的数据服务进行分类;如果该数据服务为一新类别,则为该数据服务创建一领域本体并注册到本体库中;3)根据该数据服务所属类别对应的领域本体,对该数据服务进行基于领域本体的语义标注;4)对已确定类别和语义标注的数据服务进行统一描述。本发明大大提高了数据服务的发现效率。

著录项

  • 公开/公告号CN106055702A

    专利类型发明专利

  • 公开/公告日2016-10-26

    原文格式PDF

  • 申请/专利权人 西安邮电大学;

    申请/专利号CN201610458956.5

  • 发明设计人 陈彦萍;唐成务;杨威;郭超;

    申请日2016-06-22

  • 分类号G06F17/30;

  • 代理机构北京君尚知识产权代理事务所(普通合伙);

  • 代理人司立彬

  • 地址 710121 陕西省西安市长安区韦郭路西安邮电大学南校区

  • 入库时间 2023-06-19 00:43:59

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-20

    授权

    授权

  • 2016-11-23

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20160622

    实质审查的生效

  • 2016-10-26

    公开

    公开

说明书

技术领域

本发明涉及一种数据服务统一描述方法,尤其涉及一种面向互联网的数据服务统一描述方法,属于计算机软件技术领域。

背景技术

Web服务作为一种标准的软件封装技术,日益受到大家的关注。因特网上的Web服务种类很多,但没有一个通用的Web服务描述标准能够自动的按照领域进行服务描述。随着“互联网+”理念的涌现,加速了互联网等相关行业的发展,也带动了传统的行业和更多的企业以及个人加入到互联网中来。

企业或用户更好的获取互联网中的信息来为自己服务,越来越多的企业或个人通过Web服务的形式发布数据以供他人使用,用户和业务系统在此基础上,通过统一的方式访问所需的数据,这种方式被称为数据服务。

数据服务描述文档主要是为了方便数据服务请求者快速的、准确的查找到需要的数据服务,而对数据服务的功能等一些基本信息进行详细的描述。数据服务描述的发展历程从简单的对数据服务访问接口进行描述,发展到添加语义信息对数据服务的功能信息进行描述,再发展到利用QoS属性和上下文信息对数据服务进行描述,该发展历程使得数据服务从简单的关键字检索变为智能、精确的语义检索,提高了数据服务的发现效率和准确度。目前,数据服务描述主要是基于语法层次的和基于语义层次的,具有代表意义的数据服务描述语言有:WSDL简单的对数据服务访问接口等信息进行描述的语言、WSFL(Web ServicesFlow Language)对数据服务的功能调用和与其它数据服务交互信息进行描述的语言以及OWL-S(Web Ontology Language Service)对数据服务的功能等信息进行语义描述的语言。

然而,企业或个人存在的领域不同,数据的形式各异,在服务的发布过程中,使用的数据标准和规范也不尽相同,从而导致现有的数据服务描述存在以下问题:

1.现有数据服务的发布者存在不同行业或领域,缺乏一个统一的数据标准和规范,从而造成数据服务描述语义上的异构性;

2.随着数据服务的发展和服务消费者的需求越来越复杂,单个的服务无法精确、快速的满足服务消费者复杂的需求,如何对这些数据服务进行有效的集成,来解决数据服务消费者的实际需求,成为急待解决的问题;

3.没有很好的对数据服务进行分类和语义标注。

以上这些问题导致了发布的数据服务存在语义上的异构性,数据服务请求很难快速、精准的获得满足其需求的最佳服务,数据服务之间也很难相互协作,从而造成资源的浪费。

发明内容

本发明的目的在于提供一种面向互联网的数据服务统一描述方法,解决现有的数据服务在描述上存在语义异构和难以集成等问题。

为实现发明的目的,本发明采用如下的技术方案:

面向互联网的数据服务统一描述方法,包括:数据服务的获取、数据服务特征词的提取、领域本体的构建,数据服务的分类,数据服务的语义标注,以及数据服务统一描述语言模型UDL4DS(Unified Description Language for Data Services)。

上述方案涉及以下操作:

1.对面向互联网的数据服务的获取;

2.获取数据服务描述文档的特征词;

3.构建领域本体库;

4.对数据服务进行分类;

5.对数据服务进行语义标注;

6.对数据服务进行UDL4DS语言描述;

所述为对面向互联网的数据服务的获取是指利用编写的爬虫程序和特定网址两种方式,获得发布到互联网上的数据服务。

所述为获取数据服务描述文档的特征词是指对描述文档中的特定标签进行解析,获得该标签中的值,得到代表该数据服务的特征词;

所述为数据服务所涉及的领域建立领域本体是指对数据服务所涉及领域中的词汇进行建模,并为各词汇之间建立合适的关系。

所述对数据服务进行分类是指在所获得的数据服务的特征词和所建的领域本体基础上,计算二者的相似度,对数据服务进行分类。

所述对数据服务进行语义标注是指在所建的领域本体基础上,对数据服务的特征词进行权重计算,对该数据服务进行语义标注(分类信息作为对数据服务的语义标注,权重作为数据服务语义明确)。

所述对数据服务进行UDL4DS语言描述是指根据数据服务的分类、语义标注、设计的UDL4DS语言描述模型和数据服务描述文档与本描述语言模型的映射关系,对其进行本描述语言的描述。

本发明的具体步骤如下:

1.获得数据服务进行特征词提取,对其进行分类;

2.如果没有该数据服务所涉及的领域本体,则为该领域建立领域本体,否则,直接到第4步;

3.把新建的领域本体注册到本体库中;

4.对数据服务进行基于领域本体的语义标注;

5.对分好类和语义标注的数据服务进行UDL4DS语言描述。

与现有技术相比,本发明的积极效果为:

本发明解决了现有技术中未对数据服务进行分类而在数据服务描述上存在语义差异问题,数据服务难以集成以及数据服务的查找效率低等问题,本发明通过统一的描述语言模型UDL4HDS来对数据服务进行统一的描述,实现了数据服务之间的协同合作,提高了数据服务的发现效率。

附图说明

图1为本发明的UDL4DS语言模型的示意图;

图2为数据服务预处理流程示意图;

图3为数据服务获取爬虫程序流程图;

图4为交通运输工具的本体示意图。

图5为WSDL描述语言与UDL4DS描述语言的映射关系示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合附图对本发明进一步详细说明:

本发明的UDL4DS语言模型包括三个部分,分别是数据服务的执行信息、数据服务的基本信息,数据服务的语义信息,如图1所示:

所述数据服务的执行信息是整个语言模型的核心部分,其主要负责对数据服务调用过程中方法的执行过程,主要对以下几方面进行描述:数据服务的URL,数据服务的操作名以及该操作的输入/输出参数信息进行描述。

所述数据服务的基本信息主要是对数据服务的服务名、所属类型以及功能注释等信息进行描述。

所述数据服务的语义信息(数据服务的分类的一些信息)主要是对数据服务的分类信息进行描述。

图2是一个数据服务预处理流程示意图,它包含了数据服务的获取、数据服务特征词的获取、领域本体的构建以及数据服务的分类(根据获取的WSDL文档的特征词与构建的所有领域本体的中心向量进行语义相似度计算,划分该WSDL文档属于哪个类别,每一个类别对应一个领域本体,然后基于此基础对所有的数据服务进行统一的描述)。

数据服务的获取主要通过自己编写的爬虫程序和特定网站两种方式。其中,爬虫程序的步骤是(爬取需要有一个目标URL,对该URL对应的网页中的超链接进行与所需URL的正则表达式匹配,匹配,则下载该网页内容;不匹配,则将其页面中的超链接加入队列,等待匹配,直到队列达到设定的阈值,爬虫结束。特定的URL是手动的一种收集形式,公布的URL):

1.设定目标网址匹配的正则表达式;

2.对给定的网址与该正则表达式进行匹配,若匹配成功,则该网址的内容是需要的内容,进行下载,若匹配不成功,则获取该网址对应网页上的链接,写入队列;

3.若队列的长度小于设定的阈值,则重复步骤2;

4.当队列的长度大于设定的阈值时,爬取停止。

爬虫程序的流程图如图3所示,本爬虫软件设定的正则表达式为:\w+(s)?://(\w*\.)*\w*(:\d+)?/?(\w+/)*?\w*+\.(wsdl)?(asmx\?wsdl)?(asmx\?WSDL)?(svc\?wsdl)?(wsdl\#\w*\.\w*)?;特定的网站主要从数据服务发布在互联网上真实的注册中心,如https://www.webxml.com.cn、https://www.onvif.org、https://ws2.service objects.net等网站,这些注册中心列出了数据服务的接口、提供者、数据服务的具体的实现和WSDL描述文档的URL等信息,对该注册中心上注册URL进行链接,找到该URL对应的数据服务的WSDL描述文档(一个网站会有很多个WSDL文档,我们会先对获取到的WSDL描述文档进行分类,只是获取该网站上面的WSDL文档,会进行语义相似的计算,把WSDL文档分到最接近的那个类别中),对其进行下载。

数据服务特征词的获取主要是通过对数据服务的描述文档的主要标签进行解析(依靠java中dom4j.jar编写相应的处理方法,对xml文档想要的标签中进行解析),获得主要标签的属性值,主要代码如下所示:

由于数据服务的分类和语义标注都是建立在领域本体的基础上,因此在对数据服务进行分类和语义标注之前,数据服务需要具有相关的领域本体。如果本体库中没有相应的领域本体,则需要请求本体库的维护人员建立相关的领域本体。

领域本体的创建过程如下:

1.本体是一个领域内共享概念的形式化说明,在创建领域本体之前需要具备相关的领域知识或者咨询相关领域的专家,以尽可能准确的确定所需要的词汇以及词汇之间的关系;

2.用斯坦福大学开发的本体创建工具Protégé来创建相关领域的本体树,词汇之间的关系是通过Protégé创建的本体树来表现,即得到领域本体(依靠构建本体的工具和本发明中得到的相关信息来构建适合本发明的领域本体);

3.通过Jena提供的API将创建的领域本体注册(对数据服务进行分类,每一个类别对应一个领域本体)到本体库中以供用户查询。

图4为一个简单的运输工具领域本体示意图,其中car,plane,train等都是Transportation的子类,BMW和BYD是car的两个instance(实例)。

数据服务的分类基于领域本体的数据服务分类方法分为三个步骤:

1.对获得的数据服务特征词文档,根据空间向量模型构建特征词向量;

2.利用语义词典(WordNet),计算特征词向量与领域本体形成的中心向量(DomainVector,DV)的语义距离;

3.根据计算的语义距离,选取合适的分界线来划分该文档属于哪个领域。

基于领域本体的数据服务分类方法中的语义距离计算如下所示:

特别说明,WordNet就像是一个词典,名词、动词、形容词和副词各自被组织成一个同义词的网络,每个同义词集合都代表一个基本的语义概念,并且这些集合之间也由各种关系连接。通过它就能计算出两个单词之间的相似度,下面是WordNet内部计算两个单词语义相似度的公式:

特征提取:

利用WordNet提供的接口函数,从WordNet的同一词(Synset)、属类词(Classword)和意义解释(Sense explanation)这个集合中抽取出候选同义词,然后进行特征提取,计算出feature(SW):

feature(SW)={{WS},{WC},{We}}

{Ws}:WordNet中SenseW所有的同义词;

{Wc}:SenseW所有的相关的属类;

{We}:SenseW的解释中所有的实词。

意义相似度和词语相似度的计算:

根据上面对词汇语义特征的描述,两个词汇意义(Sense)(意义是WordNet词典对特征词的解释)之间的相似度可以通过计算其在三个不同的意义特征空间中的距离来得到。距离越小,相似度越大。依据意义相似度我们就可以容易地计算出WordNet中两个词语之间的相似度。

意义相似度:

其中:

No(SW):W意义(即单词W代表的意思,WordNet中有记录)的顺序(是WordNet里面定义好的)。例如,the first sense=1,the second sense=2……

IDF(wi):从WordNet中训练得到的构建WordNet时出现某个单词wi(单词wi是计算的特征词SWi通过WordNet提出的特征词集合中的一个单词,SWi是要计算相似度的特征词,wi是WordNet词典对该词提取该词典对其定义的特征词j集合中的单词i)的文档的倒数,即该单词wi的词频;

Wsi表示WordNet单词wi的同义词、Wsj表示WordNet单词wj的同义词、Wci表示WordNet单词wi的相关属类、Wcj表示WordNet单词wj的相关属类、Wei表示WordNet单词wi的解释的所有实词、Wej表示WordNet单词wj的解释的所有实词。

Ks=1.5:同义词特征的权重,

Kc=1:类属特征的权重,

Ke=0.5:意义解释的权重,

Qu:出现(是WordNet中出现的)单词wi的指标集,

Qv:出现单词wj的指标集

语义相似度:

(SW1是W1词汇所有通过WordNet得的特征,SW1i表示W1词汇的第i个特征;本发明提到的利用WordNet来计算两个单词的语义相似度,内部的计算公式就是该公式,在上面的伪代码R7行Sim(wordi,DVwordi)中被利用),WordNet就相当于一个字典,计算两个单词的语义相似度,需要先计算意义相似度,然后才能计算两个单词的语义相似度;W1表示该单词,SW1表示单词W1在WordNet中的特征词。

其中:(W1,W2分别表示计算语义相似度的两个词)

|SW1|:W1的sense个数(单词解释个数,这是WordNet词典对该词汇W1的解释),

|SW2|:W2的sense的个数。

数据服务语义标注(特征词在该WSDL描述文档的权重)是指在领域本体中,词汇之间存在一定的关联性,考虑到这种关联性,给出特征词的权重计算公式:

公式(1)中:fij表示特征词i在特征词文档j中出现的频率,ni表示特征词i在所有特征文档中出现的个数,N表示所有的特征词文档个数,W[m,j]表示特征词m在特征词文档j中的权重,M表示特征文档j中特征词总数,Simim表示特征词文档中词汇i和其它词汇m之间的语义关系,(m表示特征词文档j中的词汇)Simim值由公式(2)求得。下面我们给出公式(2)的定义。

定义1概念关系:两个概念C1和C2在同一个本体的不同层次,若概念C1是概念C2的父类概念,则若概念C1是概念C2的子类概念,则

定义2父类概念集合一个本体中概念C的所有父类概念集合(Concept Parent,CP),CP至少包含概念C,则CP≠φ。

定义3概念语义相似度:Cj∈O,则两个概念Ci和Cj之间的语义相似度为其值为Ci的所有父类概念集合CiP和Cj的所有父类概念集合CjP的交集,与二者并集的比值,计算公式如下:

最后,将特征词集合及其权值(该权重是公式(1)计算的权值,是这个特征词在这篇特征词文档中所占的比重)依据本体的空间向量模型VSM进行存储(每一列代表一个数据服务描述文档,每一行代表这个特征词在所有文档中的权重的一个M×N行矩阵),把含有这些特征词的WSDL文档与相应的特征词进行关联,从而数据服务描述文档与领域本体之间的概念形成了映射,对数据服务进行语义标注。

图5主要是给出WSDL描述文档与UDL4DS的映射关系,从而对数据服务进行本描述语言模型的描述(映射关系是说明WSDL描述文档中的主要标签的信息是与UDL4DS描述文档中的那些标签是对应的,其相应标签的值是依靠java的dom4j,jar,编写相应的方法得到,在编写方法生UDL4DS描述文档中标签的xml文档,即对WSDL描述文档描述成对应的UDL4DS描述语言的文档)。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号