如何在可能性列表中定义 rdfs:range 目标?
How to define an rdfs:range target in a list of possibilities?
我正在尝试声明 属性 phs:hasTheValue
以向对象添加布尔值或整数。
目前,我已经编写了这段代码来定义 属性。
phs:hasTheValue a rdf:Property;
rdfs:range [
a owl:DataRange;
owl:oneOf (xsd:boolean xsd:integer);
];
.
我的问题是由于 owl:oneOf
断言,我无法使用 Protégé 5.0 打开我的文件。这是声明我的 属性 的 rdfs:range
的语法错误还是错误方法?
这不起作用的原因是因为 owl:oneOf
被定义为:
An enumeration is a owl:oneOf element, containing a list of the objects that are its instances.
This enables us to define a class by exhaustively enumerating its elements. The class defined by the oneOf element contains exactly the enumerated elements, no more, no less. For example:
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#Eurasia"/>
<owl:Thing rdf:about="#Africa"/>
<owl:Thing rdf:about="#North_America"/>
<owl:Thing rdf:about="#South_America"/>
<owl:Thing rdf:about="#Australia"/>
<owl:Thing rdf:about="#Antarctica"/>
</oneOf>
您尝试定义的内容不符合 owl:oneOf
的定义。我觉得你需要的是一个正常的工会。
<owl:DatatypeProperty rdf:about="http://www.example.org/demo.owl#hasTheValue">
<rdfs:range>
<rdfs:Datatype>
<owl:unionOf rdf:parseType="Collection">
<rdf:Description rdf:about="&xsd;boolean"/>
<rdf:Description rdf:about="&xsd;integer"/>
</owl:unionOf>
</rdfs:Datatype>
</rdfs:range>
</owl:DatatypeProperty>
我正在尝试声明 属性 phs:hasTheValue
以向对象添加布尔值或整数。
目前,我已经编写了这段代码来定义 属性。
phs:hasTheValue a rdf:Property;
rdfs:range [
a owl:DataRange;
owl:oneOf (xsd:boolean xsd:integer);
];
.
我的问题是由于 owl:oneOf
断言,我无法使用 Protégé 5.0 打开我的文件。这是声明我的 属性 的 rdfs:range
的语法错误还是错误方法?
这不起作用的原因是因为 owl:oneOf
被定义为:
An enumeration is a owl:oneOf element, containing a list of the objects that are its instances. This enables us to define a class by exhaustively enumerating its elements. The class defined by the oneOf element contains exactly the enumerated elements, no more, no less. For example:
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#Eurasia"/>
<owl:Thing rdf:about="#Africa"/>
<owl:Thing rdf:about="#North_America"/>
<owl:Thing rdf:about="#South_America"/>
<owl:Thing rdf:about="#Australia"/>
<owl:Thing rdf:about="#Antarctica"/>
</oneOf>
您尝试定义的内容不符合 owl:oneOf
的定义。我觉得你需要的是一个正常的工会。
<owl:DatatypeProperty rdf:about="http://www.example.org/demo.owl#hasTheValue">
<rdfs:range>
<rdfs:Datatype>
<owl:unionOf rdf:parseType="Collection">
<rdf:Description rdf:about="&xsd;boolean"/>
<rdf:Description rdf:about="&xsd;integer"/>
</owl:unionOf>
</rdfs:Datatype>
</rdfs:range>
</owl:DatatypeProperty>