OWL中的属性可以同时是objectProperty和datatypeProperty

时间:2016-09-16 12:37:14

标签: xsd owl

我想在OWL中用XSD表示以下xs:simpleType:

<xs:simpleType name="test">
    <xs:union memberTypes="xs:normalizedString">
      <xs:simpleType>
        <xs:restriction base="xs:normalizedString">
          <xs:enumeration value="123"/>
          <xs:enumeration value="456"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>

我使用equivalentClass来表示xs:enumeration:

<owl:Class rdf:about="testEn">
        <owl:equivalentClass>
            <owl:Class>
                <owl:oneOf rdf:parseType="Collection">
                    <rdf:Description rdf:about="testEn_123"/>
                    <rdf:Description rdf:about="testEn_456"/>
                </owl:oneOf>
            </owl:Class>
        </owl:equivalentClass>
    </owl:Class>

将xs:normalizedString和equivalentClass与unionOf链接起来。

xs:normalizedString无法在OWL中表示为Class,对吗?所以我有一个同时属于objectProperty和datatypeProperty的属性。

1 个答案:

答案 0 :(得分:2)

不在OWL 2 DL中,请参阅https://www.w3.org/TR/owl2-new-features/#F12:_Punning

  

...但是,OWL 2 DL仍然存在某些限制:它要求名称不能同时用于类和数据类型,并且名称只能用于一种属性。 ...