【问题标题】:How to Define My Own Ranges for OWL DataProperties如何为 OWL DataProperties 定义我自己的范围
【发布时间】:2013-01-05 14:15:54
【问题描述】:

我最近开始学习 Web Ontology Language (OWL)。我想用我自己定义的值范围定义一个 DataProperty。 考虑以下属性:

  <owl:DatatypeProperty rdf:ID="myProperty">
     <rdfs:domain rdf:resource="#MyDomain"/>
     <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#double"/>
  </owl:DatatypeProperty>

该属性具有双精度值范围,但我想限制该范围以使我的属性仅接受 0 到 1 之间的双精度值。如果您指导我如何定义我自己的范围,我将不胜感激数据属性。

【问题讨论】:

    标签: rdf owl rdfs


    【解决方案1】:

    在这里(为了简洁,使用 Turtle 而不是 RDF/XML):

    :myProperty  a  owl:DatatypeProperty;
        rdfs:domain  :MyDomain;
        rdfs:range  [
            a  rdfs:Datatype;
            owl:onDatatype  xsd:double;
            owl:withRestrictions ( [xsd:minInclusive 0] [xsd:maxInclusive 1] )
        ] .
    

    我建议您使用xsd:decimal 而不是xsd:double,因为xsd:double 的精度有限,并且与xsd:decimal 不相交,这也使其与xsd:integerxsd:int 等不相交。

    更新: 在 RDF/XML 中,它对应(看看它与 Turtle 相比有多乱):

    <owl:DatatypeProperty rdf:about="#myProperty">
        <rdfs:domain rdf:resource="#MyDomain"/>
        <rdfs:range>
            <rdfs:Datatype>
                <owl:onDatatype rdf:resource="&xsd;double"/>
                <owl:withRestrictions rdf:parseType="Collection">
                    <rdf:Description>
                        <xsd:minInclusive rdf:datatype="&xsd;double">0</xsd:minInclusive>
                    </rdf:Description>
                    <rdf:Description>
                        <xsd:maxInclusive rdf:datatype="&xsd;double">1</xsd:maxInclusive>
                    <rdf:Description>
                    </rdf:Description>
                </owl:withRestrictions>
            </rdfs:Datatype>
        </rdfs:range>
    </owl:DatatypeProperty>
    

    但如果你是直接用文本编辑器编写 RDF,你真的应该学会使用Turtle。它比 RDF/XML 更简单、更简洁。你真的可以看到三重奏。而且它很快就会成为标准,即将转向 W3C 候选推荐标准。

    **2017 年 10 月 3 日更新:Turtle was standardised in February 2014。如果您更喜欢基于 JSON 的 RDF 表示法,还有 JSON-LD,另一个 W3C 标准。

    【讨论】:

    • 谢谢。你也可以把它写成 RDF/XML 格式吗?我尝试自己转换它,但由于我对 Turtle 不是很熟悉,所以没有得到任何可接受的结果。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-27
    • 2015-07-07
    • 1970-01-01
    • 1970-01-01
    • 2010-12-03
    • 2020-02-26
    • 1970-01-01
    相关资源
    最近更新 更多