代码之家  ›  专栏  ›  技术社区  ›  Choulin

如何在OWL或RDFS中定义“共同参与”属性?

  •  0
  • Choulin  · 技术社区  · 10 年前

    我想知道如何表达这样一个概念:如果两个代理是一个事件的参与者,他们应该与对称属性“共同参与”联系起来。

    我觉得我可以做一些限制,但不知道怎么做。

    事件本体定义如下: http://motools.sourceforge.net/event/event.html

    1 回复  |  直到 10 年前
        1
  •  3
  •   Joshua Taylor    10 年前

    如果两个代理是一个事件的参与者,他们应该与 对称属性“共同参与”。

    您可以在OWL2中使用子属性链公理来实现这一点。由于数据看起来像:

    enter image description here

    我们可以看到有一条从X到Y的链

    参与者In&子弹参与者 -1

    因此,您可以断言:

    (参与者 -1 )&sqsubsteq;共同参与

    然后你就能推断出

    X与Y共同参与
    Y与X共同参与

    在Protege中,它看起来像这样:

    protege screenshot

    这里有一个OWL本体,它包含以下公理:

    @prefix :      <http://stackoverflow.com/q/29238387/1281433/> .
    @prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
    @prefix owl:   <http://www.w3.org/2002/07/owl#> .
    @prefix xsd:   <http://www.w3.org/2001/XMLSchema#> .
    @prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
    
    :       a       owl:Ontology .
    
    :participatesIn  a  owl:ObjectProperty .
    
    :coParticipatesWith  a          owl:ObjectProperty ;
            owl:propertyChainAxiom  ( :participatesIn _:b0 ) .
    _:b0    owl:inverseOf  :participatesIn .
    
    <rdf:RDF
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns:owl="http://www.w3.org/2002/07/owl#"
        xmlns="http://stackoverflow.com/q/29238387/1281433/"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
        xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
      <owl:Ontology rdf:about="http://stackoverflow.com/q/29238387/1281433/"/>
      <owl:ObjectProperty rdf:about="http://stackoverflow.com/q/29238387/1281433/participatesIn"/>
      <owl:ObjectProperty rdf:about="http://stackoverflow.com/q/29238387/1281433/coParticipatesWith">
        <owl:propertyChainAxiom rdf:parseType="Collection">
          <owl:ObjectProperty rdf:about="http://stackoverflow.com/q/29238387/1281433/participatesIn"/>
          <rdf:Description>
            <owl:inverseOf rdf:resource="http://stackoverflow.com/q/29238387/1281433/participatesIn"/>
          </rdf:Description>
        </owl:propertyChainAxiom>
      </owl:ObjectProperty>
    </rdf:RDF>