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

文档序号:10687199阅读:1052来源:国知局
一种面向互联网的数据服务统一描述方法
【专利摘要】本发明公开了一种面向互联网的数据服务统一描述方法。本方法为:1)创建一领域本体库,其包括若干领域本体,每一领域本体对应一类数据服务;2)根据领域本体对获得的数据服务进行分类;如果该数据服务为一新类别,则为该数据服务创建一领域本体并注册到本体库中;3)根据该数据服务所属类别对应的领域本体,对该数据服务进行基于领域本体的语义标注;4)对已确定类别和语义标注的数据服务进行统一描述。本发明大大提高了数据服务的发现效率。
【专利说明】
一种面向互联网的数据服务统一描述方法
技术领域
[0001] 本发明涉及一种数据服务统一描述方法,尤其涉及一种面向互联网的数据服务统 一描述方法,属于计算机软件技术领域。
【背景技术】
[0002] Web服务作为一种标准的软件封装技术,日益受到大家的关注。因特网上的Web月艮 务种类很多,但没有一个通用的Web服务描述标准能够自动的按照领域进行服务描述。随着 "互联网+"理念的涌现,加速了互联网等相关行业的发展,也带动了传统的行业和更多的企 业以及个人加入到互联网中来。
[0003] 企业或用户更好的获取互联网中的信息来为自己服务,越来越多的企业或个人通 过Web服务的形式发布数据以供他人使用,用户和业务系统在此基础上,通过统一的方式访 问所需的数据,这种方式被称为数据服务。
[0004]数据服务描述文档主要是为了方便数据服务请求者快速的、准确的查找到需要的 数据服务,而对数据服务的功能等一些基本信息进行详细的描述。数据服务描述的发展历 程从简单的对数据服务访问接口进行描述,发展到添加语义信息对数据服务的功能信息进 行描述,再发展到利用QoS属性和上下文信息对数据服务进行描述,该发展历程使得数据服 务从简单的关键字检索变为智能、精确的语义检索,提高了数据服务的发现效率和准确度。 目前,数据服务描述主要是基于语法层次的和基于语义层次的,具有代表意义的数据服务 描述语言有:WSDL简单的对数据服务访问接口等信息进行描述的语言、WSFL(Web Services Flow Language)对数据服务的功能调用和与其它数据服务交互信息进行描述的语言以及 0WL-S(Web Ontology Language Service)对数据服务的功能等信息进行语义描述的语言。
[0005] 然而,企业或个人存在的领域不同,数据的形式各异,在服务的发布过程中,使用 的数据标准和规范也不尽相同,从而导致现有的数据服务描述存在以下问题:
[0006] 1.现有数据服务的发布者存在不同行业或领域,缺乏一个统一的数据标准和规 范,从而造成数据服务描述语义上的异构性;
[0007] 2.随着数据服务的发展和服务消费者的需求越来越复杂,单个的服务无法精确、 快速的满足服务消费者复杂的需求,如何对这些数据服务进行有效的集成,来解决数据服 务消费者的实际需求,成为急待解决的问题;
[0008] 3.没有很好的对数据服务进行分类和语义标注。
[0009]以上这些问题导致了发布的数据服务存在语义上的异构性,数据服务请求很难快 速、精准的获得满足其需求的最佳服务,数据服务之间也很难相互协作,从而造成资源的浪 费。

【发明内容】

[0010]本发明的目的在于提供一种面向互联网的数据服务统一描述方法,解决现有的数 据服务在描述上存在语义异构和难以集成等问题。
[0011 ]为实现发明的目的,本发明采用如下的技术方案:
[0012]面向互联网的数据服务统一描述方法,包括:数据服务的获取、数据服务特征词的 提取、领域本体的构建,数据服务的分类,数据服务的语义标注,以及数据服务统一描述语 言模型UDL4DS(Unified Description Language for Data Services)。
[0013]上述方案涉及以下操作:
[0014] 1.对面向互联网的数据服务的获取;
[0015] 2.获取数据服务描述文档的特征词;
[0016] 3.构建领域本体库;
[0017] 4 ?对数据服务进行分类;
[0018] 5.对数据服务进行语义标注;
[0019] 6.对数据服务进行UDL4DS语言描述;
[0020] 所述为对面向互联网的数据服务的获取是指利用编写的爬虫程序和特定网址两 种方式,获得发布到互联网上的数据服务。
[0021] 所述为获取数据服务描述文档的特征词是指对描述文档中的特定标签进行解析, 获得该标签中的值,得到代表该数据服务的特征词;
[0022] 所述为数据服务所涉及的领域建立领域本体是指对数据服务所涉及领域中的词 汇进行建模,并为各词汇之间建立合适的关系。
[0023]所述对数据服务进行分类是指在所获得的数据服务的特征词和所建的领域本体 基础上,计算二者的相似度,对数据服务进行分类。
[0024]所述对数据服务进行语义标注是指在所建的领域本体基础上,对数据服务的特征 词进行权重计算,对该数据服务进行语义标注(分类信息作为对数据服务的语义标注,权重 作为数据服务语义明确)。
[0025]所述对数据服务进行UDL4DS语言描述是指根据数据服务的分类、语义标注、设计 的UDL4DS语言描述模型和数据服务描述文档与本描述语言模型的映射关系,对其进行本描 述语言的描述。
[0026]本发明的具体步骤如下:
[0027] 1.获得数据服务进行特征词提取,对其进行分类;
[0028] 2.如果没有该数据服务所涉及的领域本体,则为该领域建立领域本体,否则,直接 到第4步;
[0029] 3.把新建的领域本体注册到本体库中;
[0030] 4.对数据服务进行基于领域本体的语义标注;
[0031] 5.对分好类和语义标注的数据服务进行UDL4DS语言描述。
[0032] 与现有技术相比,本发明的积极效果为:
[0033] 本发明解决了现有技术中未对数据服务进行分类而在数据服务描述上存在语义 差异问题,数据服务难以集成以及数据服务的查找效率低等问题,本发明通过统一的描述 语言模型UDL4HDS来对数据服务进行统一的描述,实现了数据服务之间的协同合作,提高了 数据服务的发现效率。
【附图说明】
[0034]图1为本发明的UDL4DS语言模型的示意图;
[0035]图2为数据服务预处理流程示意图;
[0036]图3为数据服务获取爬虫程序流程图;
[0037]图4为交通运输工具的本体示意图。
[0038]图5为WSDL描述语言与UDL4DS描述语言的映射关系示意图。
[0039]
【具体实施方式】
[0040] 为使本发明的目的、技术方案和优点更加清楚明白,以下结合附图对本发明进一 步详细说明:
[0041] 本发明的UDL4DS语言模型包括三个部分,分别是数据服务的执行信息、数据服务 的基本信息,数据服务的语义信息,如图1所示:
[0042] 所述数据服务的执行信息是整个语言模型的核心部分,其主要负责对数据服务调 用过程中方法的执行过程,主要对以下几方面进行描述:数据服务的URL,数据服务的操作 名以及该操作的输入/输出参数信息进行描述。
[0043] 所述数据服务的基本信息主要是对数据服务的服务名、所属类型以及功能注释等 信息进行描述。
[0044] 所述数据服务的语义信息(数据服务的分类的一些信息)主要是对数据服务的分 类信息进行描述。
[0045] 图2是一个数据服务预处理流程示意图,它包含了数据服务的获取、数据服务特征 词的获取、领域本体的构建以及数据服务的分类(根据获取的WSDL文档的特征词与构建的 所有领域本体的中心向量进行语义相似度计算,划分该WSDL文档属于哪个类别,每一个类 别对应一个领域本体,然后基于此基础对所有的数据服务进行统一的描述)。
[0046] 数据服务的获取主要通过自己编写的爬虫程序和特定网站两种方式。其中,爬虫 程序的步骤是(爬取需要有一个目标URL,对该URL对应的网页中的超链接进行与所需URL的 正则表达式匹配,匹配,则下载该网页内容;不匹配,则将其页面中的超链接加入队列,等待 匹配,直到队列达到设定的阈值,爬虫结束。特定的URL是手动的一种收集形式,公布的 URL):
[0047] 1.设定目标网址匹配的正则表达式;
[0048] 2.对给定的网址与该正则表达式进行匹配,若匹配成功,则该网址的内容是需要 的内容,进行下载,若匹配不成功,则获取该网址对应网页上的链接,写入队列;
[0049] 3.若队列的长度小于设定的阈值,则重复步骤2;
[0050] 4.当队列的长度大于设定的阈值时,爬取停止。
[0051] 爬虫程序的流程图如图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 文档分到最接近的那个类别中),对其进行下载。
[0052]数据服务特征词的获取主要是通过对数据服务的描述文档的主要标签进行解析 (依靠java中dom4 j . jar编写相应的处理方法,对xml文档想要的标签中进行解析),获得主 要标签的属性值,主要代码如下所示:


[0056]由于数据服务的分类和语义标注都是建立在领域本体的基础上,因此在对数据服 务进行分类和语义标注之前,数据服务需要具有相关的领域本体。如果本体库中没有相应 的领域本体,则需要请求本体库的维护人员建立相关的领域本体。
[0057] 领域本体的创建过程如下:
[0058] 1.本体是一个领域内共享概念的形式化说明,在创建领域本体之前需要具备相关 的领域知识或者咨询相关领域的专家,以尽可能准确的确定所需要的词汇以及词汇之间的 关系;
[0059] 2.用斯坦福大学开发的本体创建工具Prot6g6来创建相关领域的本体树,词汇之 间的关系是通过Protggg创建的本体树来表现,即得到领域本体(依靠构建本体的工具和本 发明中得到的相关信息来构建适合本发明的领域本体);
[0060] 3.通过Jena提供的API将创建的领域本体注册(对数据服务进行分类,每一个类别 对应一个领域本体)到本体库中以供用户查询。
[0061 ]图4为一个简单的运输工具领域本体示意图,其中car,plane,train等都是 Transportation的子类,BMW和BYD是car的两个instance(实例)。
[0062]数据服务的分类基于领域本体的数据服务分类方法分为三个步骤:
[0063] 1.对获得的数据服务特征词文档,根据空间向量模型构建特征词向量;
[0064] 2.利用语义词典(WordNet ),计算特征词向量与领域本体形成的中心向量(Domain Vector,DV)的语义距离;
[0065] 3.根据计算的语义距离,选取合适的分界线来划分该文档属于哪个领域。
[0066]基于领域本体的数据服务分类方法中的语义距离计算如下所示:
[0067]

[0069] 特别说明,WordNet就像是一个词典,名词、动词、形容词和副词各自被组织成一个 同义词的网络,每个同义词集合都代表一个基本的语义概念,并且这些集合之间也由各种 关系连接。通过它就能计算出两个单词之间的相似度,下面是WordNet内部计算两个单词语 义相似度的公式:
[0070] 特征提取:
[0071 ] 利用WordNet提供的接口函数,从WordNet的同一词(Synset)、属类词(Class word)和意义解释(Sense explanation)这个集合中抽取出候选同义词,然后进行特征提 取,计算出feature(SW):
[0072] feature(Sff) = {{ffs}, {ffc}, {We}}
[0073] {Ws}: W〇rdNe t 中 Sen s eW所有的同义词;
[0074] {WchSenseW所有的相关的属类;
[0075] {We} :SenseW的解释中所有的实词。
[0076] 意义相似度和词语相似度的计算:
[0077] 根据上面对词汇语义特征的描述,两个词汇意义(Sense)(意义是WordNet词典对 特征词的解释)之间的相似度可以通过计算其在三个不同的意义特征空间中的距离来得 到。距离越小,相似度越大。依据意义相似度我们就可以容易地计算出WordNet中两个词语 之间的相似度。
[0078] 意义相似度:
[0079]
[0080] 其中:
[0081 ] No(SW):W意义(即单词W代表的意思,WordNet中有记录)的顺序(是WordNet里面定 义好的)。例如,the first sense = l,the second sense = 2......
[0082] IDF(Wi):从WordNet中训练得到的构建WordNet时出现某个单词Wi(单词Wi是计算 的特征词SWi通过WordNet提出的特征词集合中的一个单词,SWi是要计算相似度的特征词, wi是WordNet词典对该词提取该词典对其定义的特征词j集合中的单词i)的文档的倒数,BP 该单词Wi的词频;
[0083] Wsi表示WordNet单词Wi的同义词、Wsj表示WordNet单词Wj的同义词、W ci表示WordNet 单词Wi的相关属类、Wcj表示WordNet单词Wj的相关属类、Wei表示WordNet单词Wi的解释的所 有实词、W e j表示WordNet单词Wj的解释的所有实词。
[0084] Ks = 1.5:同义词特征的权重,
[0085] Kc=l:类属特征的权重,
[0086] Ke = 0.5:意义解释的权重,
[0087] Qu:出现(是WordNet中出现的)单词Wi的指标集,
[0088] Qv:出现单词wj的指标集
[0089] 语义相似度:
[0090]
[0091] (SW1是1词汇所有通过WordNe t得的特征,SWI i表示I词汇的第i个特征;本发明提 到的利用WordNet来计算两个单词的语义相似度,内部的计算公式就是该公式,在上面的伪 代码1?7行5;[111(¥0油,0\%0油)中被利用),¥(^(1如1:就相当于一个字典,计算两个单词的语义 相似度,需要先计算意义相似度,然后才能计算两个单词的语义相似度表示该单词,SW1 表示单词Wi在WordNet中的特征词。
[0092] 其中分别表示计算语义相似度的两个词)
[0093] | SWI | :W1的sense个数(单词解释个数,这是WordNet词典对该词汇W1的解释),
[0094] | SW2 | :W2的sense的个数。
[0095] 数据服务语义标注(特征词在该WSDL描述文档的权重)是指在领域本体中,词汇之 间存在一定的关联性,考虑到这种关联性,给出特征词的权重计算公式:
[0097] 公式(1)中:fij表示特征词i在特征词文档j中出现的频率,m表示特征词i在所有 特征文档中出现的个数,N表示所有的特征词文档个数,W[m,j ]表示特征词m在特征词文档j 中的权重,M表示特征文档j中特征词总数,5加^表示特征词文档中词汇i和其它词汇m之间 的语义关系,(m表示特征词文档j中的词汇)由公式(2)求得。下面我们给出公式(2) 的定义。
[0098] 定义1概念关系:两个概念Ci和C2在同一个本体的不同层次,若概念Ci是概念C2的 父类概念,则Q ;若概念Ci是概念C2的子类概念,则=) CV。
[00"] 定义2父类概念集合一个本体中概念C的所有父类概念集合(Concept Parent, CP),CP至少包含概念C,则CP乒伞。
[0100]定义3概念语义相似度:VC^CjGO,则两个概念CdPCj之间的语义相似度为 Smc c e _,其值为匕的所有父类概念集合C^pCj的所有父类概念集合CjP的交集,与二者 并集的比值,计算公式如下:
[0102]最后,将特征词集合及其权值(该权重是公式(1)计算的权值,是这个特征词在这 篇特征词文档中所占的比重)依据本体的空间向量模型VSM进行存储(每一列代表一个数据 服务描述文档,每一行代表这个特征词在所有文档中的权重的一个M X N行矩阵),把含有这 些特征词的WSDL文档与相应的特征词进行关联,从而数据服务描述文档与领域本体之间的 概念形成了映射,对数据服务进行语义标注。
[0103]图5主要是给出WSDL描述文档与UDL4DS的映射关系,从而对数据服务进行本描述 语言模型的描述(映射关系是说明WSDL描述文档中的主要标签的信息是与UDL4DS描述文档 中的那些标签是对应的,其相应标签的值是依靠java的dom4 j,jar,编写相应的方法得到, 在编写方法生UDL4DS描述文档中标签的xml文档,即对WSDL描述文档描述成对应的UDL4DS 描述语言的文档)。
【主权项】
1. 一种面向互联网的数据服务统一描述方法,其步骤为: 1) 创建一领域本体库,其包括若干领域本体,每一领域本体对应一类数据服务; 2) 根据领域本体对获得的数据服务进行分类;如果该数据服务为一新类别,则为该数 据服务创建一领域本体并注册到本体库中; 3) 根据该数据服务所属类别对应的领域本体,对该数据服务进行基于领域本体的语义 标注; 4) 对已确定类别和语义标注的数据服务进行统一描述。2. 如权利要求1所述的方法,其特征在于,对已确定类别和语义标注的数据服务进行 UDL4DS语言描述。3. 如权利要求1所述的方法,其特征在于,对数据服务进行分类的方法为: 31) 对获得的数据服务进行特征词提取,构建特征词向量; 32) 计算该特征词向量与每一领域本体的中心向量的语义距离; 33) 根据计算的语义距离,确定该数据服务所属的类别。4. 如权利要求3所述的方法,其特征在于,计算该语义距离的方法为: 41)对于特征词向量中每个单词wordi:计算该单词wordi与同一中心向量中的每个概念 的语义相似度,得到该单词wordi与该中心向量的最大语义相似度maxSD;以及计算该单词 wordi与该中心向量中每个概念的语义相似度;如果该单词wordi的语义相似度大于maxSD 值,则将该语义相似度赋值给maxSD; 4 2)累加该特征词向量中各单词的max SD值,得到该特征词向量与该中心向量的语义距 离。5. 如权利要求4所述的方法,其特征在于,所述词语相似度为:其中,Wi,W2分别表示计算语义相似度的两个词,SW1为单词Wi在WordNet中的特征词集合、 SW2为单词W2在WordNet中的特征词集合,SWli是单词I的第i个特征词,SW1 j是单词I的第j 个特征词,SimilarityO为意义相似度函数,| SW11为单词I的解释个数,| SW2 |为单词W2的 解释个数。6. 如权利要求5所述的方法,其特征在于,所述意义相似度函数的计算方法为:其中,No (SW)是WordNet中单词W代表的意思的顺序,SWi表示单词Wi在WordNet中的特征词, SWj表示单词Wj在WordNet中的特征词,IDF(Wi)为WordNet中单词Wi的词频,Ks为同义词特征 的权重,K c为类属特征的权重,Ke为意义解释的权重,Qu是WordNet中单词wi的指标集,Q v是 WordNet中出现单词Wj的指标集,Wsi表示WordNet中单词Wi的同义词、Wsj表示WordNet中单词 Wj的同义词、Wci表示WordNet中单词Wi的属类、Wcj表示WordNet中单词Wj的相关属类、W ei表示 WordNet中单词Wi的解释的所有实词、Wej表示WordNet中单词Wj的解释的所有实词。7. 如权利要求3所述的方法,其特征在于,为每一特征词设置一权重,加权累加该特征 词向量中各单词的maxSD值;其中,特征词的权重计算公式为:W[m, j ]表示特征词m在特征词文档j中的权重,M表示特征词文档j中的特征词总数,fij 表示特征词i在特征词文档j中出现的频率,m表示特征词i在所有特征文档中出现的个数, N表示所有的特征词文档个数,示特征词文档j中词汇i与词汇m之间的语义关系。
【文档编号】G06F17/30GK106055702SQ201610458956
【公开日】2016年10月26日
【申请日】2016年6月22日
【发明人】陈彦萍, 唐成务, 杨威, 郭超
【申请人】西安邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1