CN106095947B - 面向资源树的语义查询访问控制方法及系统 - Google Patents
面向资源树的语义查询访问控制方法及系统 Download PDFInfo
- Publication number
- CN106095947B CN106095947B CN201610421721.9A CN201610421721A CN106095947B CN 106095947 B CN106095947 B CN 106095947B CN 201610421721 A CN201610421721 A CN 201610421721A CN 106095947 B CN106095947 B CN 106095947B
- Authority
- CN
- China
- Prior art keywords
- description
- semantic
- resource
- tree
- triple
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000013507 mapping Methods 0.000 claims description 8
- 238000012423 maintenance Methods 0.000 claims description 7
- 238000005406 washing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013550 semantic technology Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9027—Trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种面向资源树的语义查询访问控制方法及系统,方法包括:在图形数据库中添加与资源树的每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中的语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中;若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源;根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中;根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
Description
技术领域
本发明属于物联网技术领域,具体涉及一种面向资源树的语义查询访问控制方法及系统。
背景技术
目前,大部分的物联网平台系统均采用符合REST(Representational StateTransfer,简称REST,中文意思为表现层状态转换)原则的软件架构风格(即,RESTful风格)进行设计,该系统中的物联网资源会以树状结构的形式暴露,每个资源作为该资源树上的一个节点,可以被一个URL地址标识。随着物联网的发展,语义技术逐渐被引入到物理网系统中来满足物联网互操作和智能查询等的需求,目前在物联网领域国际标准化组织(oneM2M)设定的物理网系统中,为了能够使用语义技术,需要将语义信息分别标注在资源树中相应资源下的语义描述资源中。
现有技术中,由于基于图形数据库的语义处理技术和语义信息表示技术同样源自于语义Web技术,并且经过多年的发展已经相对成熟,因此,一般将语义信息集中存储在图形数据库中,基于图形数据库进行语义处理能够具有较高的效率。另外,在处理语义查询时,同样要增加访问控制限制,以保证查询的语义信息必须是查询发起角色有权限访问的信息。
现有技术采用的语义查询访问控制方法具体为:在关系型数据库中存储有基于资源树上各个节点的访问控制信息(包括访问控制角色和访问权限信息),该信息可能会被不同的角色在不同的节点上发起更新;并且,在图形数据库内设置有关于访问控制信息的三元组信息,三元组需要与关系型数据库中存储的访问控制信息保持同步,这样,在关系型数据库中的访问控制信息发生更新后,就需要将图形数据库中与访问控制相关的所有的三元组信息进行相应更新,而一条访问控制信息往往会约束很多个三元组的访问,这样更新所带来的系统开销非常大,甚至会抵消基于图形数据库进行语义处理带来的效率优势。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一,提出了一种面向资源树的语义查询访问控制方法及系统,不会带来额外的开销。
为解决上述问题之一,本发明提供了一种面向资源树的语义查询访问控制方法,包括:在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中;若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源;根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中;根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
优选地,若一个所述描述对象实例描述在至少两个所述语义描述资源中,则:所述在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中,包括:在所述图形数据库中添加子描述实例,用于关联所述描述对象实例和描述约束实例,并且添加三元组,用于指示每个子描述实例描述在与之关联的语义描述资源对应的语义描述资源实例中:
所述根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中,包括:
根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例中。
优选地,所述根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例中,具体为:
设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量描述在确定的允许访问的语义描述资源对应的语义描述资源实例中。
优选地,还包括:维护所述图形数据库中的所述语义描述资源实例和资源树中的语义描述资源的映射关系。
优选地,所述在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,包括:在将资源树的语义描述资源中的语义信息存入图形数据库时,在在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组。
本发明还提供一种面向资源树的语义查询访问控制系统,包括:第一添加模块,用于在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中;确定模块,用于若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源;第二添加模块,用于根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中;查询模块,用于根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
优选地,所述第一添加模块,用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,在所述图形数据库中添加子描述实例,用于关联所述描述对象实例和描述约束实例,并且添加三元组,用于指示每个子描述实例描述在与之关联的语义描述资源对应的语义描述资源实例中;所述第二添加模块,用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例描述中。
优选地,所述第二添加模块,用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量描述在确定的允许访问的语义描述资源对应的语义描述资源实例中。
优选地,还包括:维护模块,用于维护所述图形数据库中的所述语义描述资源实例和资源树中的语义描述资源的映射关系。
优选地,所述第一添加模块,用于在将资源树的语义描述资源中的语义信息存入图形数据库时,在在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组。
本发明具有以下有益效果:
本发明提供的面向资源树的语义查询访问控制方法及系统,由于在图形数据库中添加了与资源树的每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中的语义信息的描述对象实例相关的三元组,而访问控制信息与现有技术相类似存储在关系型数据库中,因此,接收到语义查询请求后先根据访问控制信息和目标路径确定允许访问的语义描述资源,再在语义查询请求中添加三元组约束来所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中,最后根据添加三元组约束之后的语义查询请求在图形数据库中进行语义查询。由于本发明在图形数据库中引入与语义描述资源相关的三元组替代现有技术中与访问控制相关的三元组,该与语义描述资源相关的三元组不需要随着访问控制信息的更新而更新,因此,本发明与现有技术中相比,不需要因系统中访问控制信息更新导致更新图形数据库中大量的三元组,因此,减少了额外的开销。
附图说明
图1为本发明实施例1提供的面向资源树的语义查询访问控制方法的流程图;
图2为本发明实施例提供的面向资源树的语义查询访问控制系统的原理框图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图来对本发明提供的面向资源树的语义查询访问控制方法及系统进行详细描述。
为便于描述本发明提供的面向资源树的语义访问控制方法,先介绍该语义访问控制方法所应用的环境,应用于一种面向资源树的语义访问控制系统,下文中会简称为系统。另外,在本文中,所谓三元组的第一元一般称为描述对象(例如,洗衣机),第二元一般称为约束关系(例如,设备编号),第三元一般称为描述约束(例如,设备编号为10)。
实施例1
图1为本发明实施例1提供的面向资源树的语义查询访问控制方法的流程图;请参阅图1,该面向资源树的语义查询访问控制方法包括以下步骤:
S1,系统在图形数据库中添加与资源树的每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中的语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中。
具体地,系统可以但不限于:在将资源树的语义描述资源中的语义信息存入图形数据库时,添加与资源树的每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中的语义信息的描述对象实例相关的三元组。
还具体地,该语义描述资源实例可以但不限于用国际化资源标识符(Internationalized Resource Identifiers,简称IRI)来标识。
S2,若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源。
其中,资源树的访问控制信息存储在关系型数据库中,且可在不同资源节点被更新。
S3,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中。
S4,根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
可以理解,由于本发明技术在图形数据库中引入与语义描述资源相关的三元组替代现有技术中与访问控制相关的三元组,由于该与语义描述资源相关的三元组不需要随着访问控制信息的更新而更新,因此,本发明与现有技术中相比,不需要因系统中访问控制信息更新导致更新图形数据库中大量的三元组,因此,减少了额外的开销。
优选地,系统维护所述图形数据库中的所述语义描述资源实例和资源树中的语义描述资源的映射关系,以使图形数据库中的语义描述实例和语义描述资源同步,而且基本不会带来额外的开销。
下面举例说明本实施例提供的语义查询访问控制方法。首先,描述所涉及的资源树和资源树中各个节点的访问控制信息。其中,资源树中包括资源WashMachine_A和资源WashMachine_B,分别作为资源树中的节点,各自被一个URL地址标识,且各自具有一个语义描述资源;应用A的仅能够访问资源WashMachine_A的语义信息,而不能访问WashMachine_B的语义信息。
针对资源WashMachine_A,其URL地址为http://www.M2MPlatform.com/devices/WashMachine_A;其语义描述资源为SemanticDescriptor_A,其URL地址为http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_A;该语义描述资源中的语义信息包括:厂商,为Haier;设备编号,为1064612345789;操作资源A,地址为www.M2MPlatform.com/devices/WashMachine_A/Operation_A。
该语义描述资源SemanticDescriptor_A中的语义信息采用RDF具体描述如下:
<rdf:RDF>
<rdf:Description rdf:about=”http://www.M2MPlatform.com/devices/WashMachine_A”>
<rdf:type rdf:resource=”http://www.M2MPlatform.com/ontologies/m2m#WashMachine”/>
<m2m:hasOperation rdf:resource=”http://www.M2MPlatform.com/devices/WashMachine_A/Operation_A”/>
<m2m:hasVendor>Haier</m2m:hasVendor>
<m2m:hasSerialNum>1064612345789</m2m:hasSerialNum>
</rdf:Description>
</rdf:RDF>
针对资源WashMachine_B,其URL地址为http://www.M2MPlatform.com/devices/WashMachine_B;其语义描述资源为SemanticDescriptor_B,其URL地址为http://www.M2MPlatform.com/devices/WashMachine_B/SemanticDescriptor_B,该语义描述资源中的语义信息包括:厂商,为Sumsung;设备编号,为1077212345678;操作资源B,地址为www.M2MPlatform.com/devices/WashMachine_B/Operation_B。
该语义描述资源SemanticDescriptor_B中的语义信息采用RDF具体描述如下:
<rdf:RDF>
<rdf:Description rdf:about=”http://www.M2MPlatform.com/devices/WashMachine_B”>
<rdf:type rdf:resource=”http://www.M2MPlatform.com/ontologies/m2m#WashMachine”/>
<m2m:hasOperation rdf:resource=”http://www.M2MPlatform.com/devices/WashMachine_B/Operation_B”/>
<m2m:hasVendor>Samsung</m2m:hasVendor>
<m2m:hasSerialNum>1077212345678</m2m:hasSerialNum>
</rdf:Description>
</rdf:RDF>
接着,具体描述在上述资源树和资源树中各个节点的被访问控制权的情况下的语义查询访问控制方法,包括以下步骤:
S10,系统使用诸如SPARQL语句在图形数据库中存入资源WashMachine_A和资源WashMachine_B的上述语义信息。
针对资源WashMachine_A:
针对资源WashMachine_B:
S11,系统在图形数据库中添加资源WashMachine_A和资源WashMachine_B一一对应的语义描述资源实例与该语义描述资源中的语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中。
针对资源WashMachine_A,添加的三元组用于指明语义信息的描述对象实例devices:WashMachine_A描述在对应的语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_A中。
具体过程为:
针对资源WashMachine_B,添加的三元组用于指明语义信息的描述对象实例devices:WashMachine_B描述在对应的语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_B中。
具体过程为:
S12,系统维护三元组中语义描述资源实例的IRI标识和资源树的语义描述资源的映射关系。
对于WashMachine_A,<http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_A>指向http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_A。
对于WashMachine_B,<http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_B>指向http://www.M2MPlatform.com/devices/WashMachine_A/SemanticDescriptor_B。
S13,应用A需要寻找洗衣机及其操作,在http://www.M2Mplatform.com/devices路径下发起语义查询请求。
SPARAL语句如下:
PREFIX m2m:<http://www.M2Mplatform.com/ontologies/m2m#>
SELECT?device?operation
WHERE{
?device a m2m:WashMachine
?device m2m:hasOperation?operation
}
S14,系统根据语义查询请求的目标路径和预先设置的资源树的访问控制信息,确定该目标路径下应用A仅能够访问的是资源WashMachine_A的语义描述资源中的语义信息。
S15,系统找到资源WashMachine_A对应的语义描述资源SemanticDescriptor_A所对应的语义描述资源实例,在应用A的SPARQL语句中添加三元组约束,用以指示查询中涉及的描述对象实例属于WashMachine_A语义描述资源对应的语义描述实例中。
修改后的SPARQL语句如下:
S16,系统根据步骤S15的SPARQL语句在图形数据库中进行查询。
S17,图形数据库根据系统请求的步骤S15的SPARQL语句返回如下查询结果:
Device:http://www.M2MPlatform.com/devices/WashMachine_A;
Operation:http://www.M2MPlatform.com/devices/WashMachine_A/Operation_A。
S18,系统将上述查询结果返回至应用A:
由上述查询结果可以验证:由于预先设置的访问控制信息中应用A仅能够访问资源WashMachine_A的语义信息,而不能访问WashMachine_B的语义信息,因此,返回的结果只有关于资源WashMachine_A的相关信息。
实施例2
本实施例提供的面向资源树的语义查询访问控制方法与上述实施例1提供的面向资源树的语义查询访问控制方法相类似,同样包括步骤S1~S4,由于步骤S1~S4在实施例1中已有了详细地描述,在此不再赘述。
下面仅描述本申请与上述实施例1的不同点。具体地:若一个所述描述对象实例描述在至少两个所述语义描述资源中,则上述步骤S1包括:在图形数据库中添加子描述实例,用于关联所述语义描述资源的语义信息中三元组的描述对象实例和描述约束实例,并且添加三元组,用于指示每个子描述实例描述在与之关联的语义描述资源对应的语义描述资源实例中。在该实施例中,子描述实例只关联了三元组中的描述对象实例和描述约束实例,实际中也可加上与三元组中的约束关系的关联,构成子描述实例和三元组的完整关联。
上述步骤S3包括:根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例中。
另外,该步骤S3具体为:设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量描述在确定的允许访问的语义描述资源对应的语义描述资源实例中。
下面举例详细说明本实施例2提供的面向资源树的语义查询访问控制方法。首先,该例子所涉及的资源树和预设的访问控制信息。其中,资源树包括资源WashMachine_C,其具有两个语义描述资源SemanticDescriptor_C1和SemanticDescriptor_C2,资源WashMachine_C的URL地址为http://www.M2MPlatform.com/devices/WashMachine_C;语义描述资源SemanticDescriptor_C1的URL地址为http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1;语义描述资源SemanticDescriptor_C2的URL地址为http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C2。访问控制信息为:应用C仅能够访问语义描述资源SemanticDescriptor_C1的语义信息,而不能访问语义描述资源SemanticDescriptor_C1的语义信息。
语义描述资源SemanticDescriptor_C1中的语义信息包括:厂商,为Haier;操作资源C,地址为www.M2MPlatform.com/devices/WashMachine_A/Operation_A。
该语义描述资源SemanticDescriptor_C1中的上述语义信息采用RDF描述如下:
rdf:RDF>
<rdf:Description rdf:about=”http://www.M2MPlatform.com/devices/WashMachine_C”>
<rdf:type rdf:resource=”http://www.M2MPlatform.com/ontologies/m2m#WashMachine”/>
<m2m:hasOperation rdf:resource=”http://www.M2MPlatform.com/devices/WashMachine_C/Operation_C”/>
<m2m:hasVendor>Haier</m2m:hasVendor>
</rdf:Description>
</rdf:RDF>
语义描述资源SemanticDescriptor_C2中的语义信息包括:设备编号,为1064654321。
该语义描述资源SemanticDescriptor_C2中的上述语义信息采用RDF描述如下:
<rdf:RDF>
<rdf:Description rdf:about=”http://www.M2MPlatform.com/devices/WashMachine_C”>
<rdf:type rdf:resource=”http://www.M2MPlatform.com/ontologies/m2m#WashMachine”/>
<m2m:hasSerialNum>1064654321</m2m:hasSerialNum>
</rdf:Description>
</rdf:RDF>
接着,描述本实施例提供的语义查询访问控制方法,包括如下步骤:
S21,系统使用诸如SPARQL语句在图形数据库中存入资源WashMachine_C上述语义信息,具体如下:
S22,系统在图形数据库中添加子描述实例Sub_descriptor1、Sub_descriptor2、Sub_descriptor2,用于关联语义描述资源中的三元组的描述对象实例和描述约束实例,具体如下:
S23,在图形数据库中添加三元组,用于描述子描述实例Sub_descriptor1描述在语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1中,子描述实例Sub_descriptor2描述在语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1中,子描述实例Sub_descriptor3描述在语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C2中,具体语句如下:
S24,系统维护三元组中语义描述资源实例的IRI标识和资源树的语义描述资源的映射关系。
具体地,<http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1>指向http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1;<http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C2>指向http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C2。
S25,应用C需要寻找洗衣机及其操作和设备编号,在http://www.M2Mplatform.com/devices路径下发起语义查询请求。
SPARAL语句如下:
PREFIX m2m:<http://www.M2Mplatform.com/ontologies/m2m#>
SELECT?device?operation?serial
WHERE{
?device a m2m:WashMachine.
?device m2m:hasOperation?operation.
?device m2m:hasSerialNum?serial
}
S26,系统根据语义查询请求的目标路径和预先设置的资源树的访问控制信息,确定该目标路径下应用C仅能够访问的是语义描述资源SemanticDescriptor_C1的语义信息。
S27,系统找到语义描述资源SemanticDescriptor_C1所对应的语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1,在应用C的SPARQL语句中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例描述中。
具体地,设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,如下文中的,temp1和temp2,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量temp1和temp2描述在确定的允许访问的语义描述资源对应的语义描述资源实例http://www.M2MPlatform.com/devices/WashMachine_C/SemanticDescriptor_C1中。
修改后的SPARQL语句如下:
S28,系统根据步骤S27的SPARQL语句在图形数据库中进行查询。
S29,图形数据库根据系统请求的步骤S27的SPARQL语句返回如下查询结果:
Device:http://www.M2MPlatform.com/devices/WashMachine_C;
Operation:http://www.M2MPlatform.com/devices/WashMachine_C/Operation_C;
Serial:空;
temp1:m2m:Sub_descriptor1;
temp2:空。
S30,系统根据上述查询结果向应用C返回如下信息:
Device:http://www.M2MPlatform.com/devices/WashMachine_C
Operation:http://www.M2MPlatform.com/devices/WashMachine_C/Operation_C;
Serial:空。
由上述查询结果可以验证:由于预先设置的访问控制信息中应用C仅能够访问语义描述资源SemanticDescriptor_C1的语义信息,而不能访问语义描述资源SemanticDescriptor_C2的语义信息,因此,返回的设备编号(Serial)一项为空。
实施例3
图2为本发明实施例提供的面向资源树的语义查询访问控制系统,请参阅图2,该面向资源树的语义查询访问控制系统包括:第一添加模块10、确定模块11、第二添加模块12、查询模块13和维护模块14。
其中,第一添加模块10用于在图形数据库中添加与资源树的每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中的语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中。
确定模块11用于若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源。
第二添加模块12,用于根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中。
查询模块13用于根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
优选地,第一添加模块10用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,在所述图形数据库中添加子描述实例,用于关联所述语义描述资源的语义信息中三元组的描述对象实例和描述约束实例,并且添加三元组,用于指示每个子描述实例描述在与之关联的语义描述资源对应的语义描述资源实例中。
第二添加模块12用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例描述中。
具体地,第二添加模块用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量描述在确定的允许访问的语义描述资源对应的语义描述资源实例中
另外,维护模块14用于维护所述图形数据库中的所述语义描述资源实例和资源树中的语义描述资源的映射关系
本实施例提供的面向资源树的语义查询访问控制系统的具体工作过程如上述实施例1和2,在此不再赘述。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (10)
1.一种面向资源树的语义查询访问控制方法,其特征在于,包括:
在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中;
若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源;
根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中;
根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
2.根据权利要求1所述的面向资源树的语义查询访问控制方法,其特征在于,若一个所述描述对象实例描述在至少两个所述语义描述资源中,则:
所述在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中,包括:
在所述图形数据库中添加子描述实例,用于关联所述描述对象实例和描述约束实例,并且添加三元组,用于指示每个子描述实例描述在与之关联的语义描述资源对应的语义描述资源实例中:
所述根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中,包括:
根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例中。
3.根据权利要求2所述的面向资源树的语义查询访问控制方法,其特征在于,所述根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例中,具体为:
设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量描述在确定的允许访问的语义描述资源对应的语义描述资源实例中。
4.根据权利要求1所述的面向资源树的语义查询访问控制方法,其特征在于,还包括:
维护所述图形数据库中的所述语义描述资源实例和资源树中的语义描述资源的映射关系。
5.根据权利要求1所述的面向资源树的语义查询访问控制方法,其特征在于,所述在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,包括:
在将资源树的语义描述资源中的语义信息存入图形数据库时,在在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组。
6.一种面向资源树的语义查询访问控制系统,其特征在于,包括:
第一添加模块,用于在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组,用以指示每个描述对象实例的语义信息描述在相应的语义描述资源实例中;
确定模块,用于若接收到语义查询请求,则根据资源树的访问控制信息和目标路径确定允许访问的语义描述资源;
第二添加模块,用于根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例描述在与该确定的允许访问的语义描述资源对应的语义描述资源实例中;
查询模块,用于根据添加三元组约束之后的语义查询请求,在所述图形数据库中进行语义查询。
7.根据权利要求6所述的面向资源树的语义查询访问控制系统,其特征在于,所述第一添加模块,用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,在所述图形数据库中添加子描述实例,用于关联所述描述对象实例和描述约束实例,并且添加三元组,用于指示每个子描述实例描述在与之关联的语义描述资源对应的语义描述资源实例中;
所述第二添加模块,用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示所要查询的描述对象实例和描述约束实例所关联的子描述实例描述在该确定的允许访问的语义描述资源对应的语义描述资源实例描述中。
8.根据权利要求7所述的面向资源树的语义查询访问控制系统,其特征在于,所述第二添加模块,用于在一个所述描述对象实例描述在至少两个所述语义描述资源中时,设置与所要查询的描述对象实例和描述约束实例所关联的子描述实例的数量相一致的子描述实例变量,根据确定允许访问的语义描述资源在接收到的语义查询请求中添加三元组约束,用以指示每个子描述实例变量描述在确定的允许访问的语义描述资源对应的语义描述资源实例中。
9.根据权利要求6所述的面向资源树的语义查询访问控制系统,其特征在于,还包括:
维护模块,用于维护所述图形数据库中的所述语义描述资源实例和资源树中的语义描述资源的映射关系。
10.根据权利要求6所述的面向资源树的语义查询访问控制系统,其特征在于,所述第一添加模块,用于在将资源树的语义描述资源中的语义信息存入图形数据库时,在在图形数据库中添加与每个语义描述资源一一对应的语义描述资源实例与该语义描述资源中语义信息的描述对象实例相关的三元组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610421721.9A CN106095947B (zh) | 2016-06-14 | 2016-06-14 | 面向资源树的语义查询访问控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610421721.9A CN106095947B (zh) | 2016-06-14 | 2016-06-14 | 面向资源树的语义查询访问控制方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106095947A CN106095947A (zh) | 2016-11-09 |
CN106095947B true CN106095947B (zh) | 2019-07-09 |
Family
ID=57845489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610421721.9A Active CN106095947B (zh) | 2016-06-14 | 2016-06-14 | 面向资源树的语义查询访问控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106095947B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528849B (zh) * | 2016-11-24 | 2020-08-04 | 上海交通大学 | 面向完整历史记录的图查询开销方法 |
CN107612833A (zh) * | 2017-09-20 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种基于存储系统的uri路由方法及相关装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104123369A (zh) * | 2014-07-24 | 2014-10-29 | 中国移动通信集团广东有限公司 | 一种基于图形数据库的配置管理数据库系统及实现方法 |
US9229930B2 (en) * | 2012-08-27 | 2016-01-05 | Oracle International Corporation | Normalized ranking of semantic query search results |
-
2016
- 2016-06-14 CN CN201610421721.9A patent/CN106095947B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9229930B2 (en) * | 2012-08-27 | 2016-01-05 | Oracle International Corporation | Normalized ranking of semantic query search results |
CN104123369A (zh) * | 2014-07-24 | 2014-10-29 | 中国移动通信集团广东有限公司 | 一种基于图形数据库的配置管理数据库系统及实现方法 |
Non-Patent Citations (1)
Title |
---|
基于RDF视图的语义查询重写相关技术研究;刘文菊;《万方数据库》;20150520;第二章第2.2.1节,第三章第3.2.1节、第3.4、第3.6-3.7节,第五章第5.2节 |
Also Published As
Publication number | Publication date |
---|---|
CN106095947A (zh) | 2016-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102209276B1 (ko) | 메시징 프로토콜 통신 관리 | |
US11341202B2 (en) | Efficient method of location-based content management and delivery | |
CN105981331B (zh) | 用来支持流量政策执行的实体处理注册表 | |
Di Martino et al. | Cloud services composition through cloud patterns: a semantic-based approach | |
US20130019089A1 (en) | Applying settings in a cloud computing environment based on geographical region | |
CN102843426B (zh) | 基于智能父节点的Web缓存资源共享系统和方法 | |
JP2017517064A (ja) | トランザクションミドルウェアマシン環境におけるドメイン間メッセージ通信のためにバイパスドメインモデルおよびプロキシモデルをサポートし、かつサービス情報を更新するためのシステムおよび方法 | |
US20140059094A1 (en) | Making use of a file path to determine file locality for applications | |
CN112015696B (zh) | 数据访问、数据关系设置方法、装置及存储介质 | |
CN107306247B (zh) | 资源访问控制方法及装置 | |
CN106095947B (zh) | 面向资源树的语义查询访问控制方法及系统 | |
CN114401319B (zh) | 一种请求处理方法、装置、服务器及存储介质 | |
CN107948005B (zh) | 物联网协议的更新方法及装置 | |
US10887267B2 (en) | Intelligent notification routing and delivery | |
US10452295B1 (en) | Data routing in information processing system utilizing persistent memory | |
US20210406227A1 (en) | Linking, deploying, and executing distributed analytics with distributed datasets | |
EP3043510B1 (en) | Decoupled name security binding for ccn objects | |
Repta et al. | Towards the development of a cyber-intelligent enterprise system architecture | |
US10956506B1 (en) | Query-based data modification | |
JP2017536609A (ja) | 自動コンピューティングシステムのパーソナライズ | |
US9948706B2 (en) | Preemptive address mapping for server load balancing | |
KR20150043992A (ko) | 리소스 접근 방법 및 이를 적용한 시스템 | |
US20230099061A1 (en) | Multi-tenant hosting of inverted indexes for text searches | |
WO2017181775A1 (zh) | 分布式授权管理方法及装置 | |
CN114430379B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |