zoukankan      html  css  js  c++  java
  • 总结:rdf:ID和rdf:about的区别(转载)

    1rdf:IDrdf:about的区别:

    rdf:about的值是一个完整URIref,注意也可以是相对URI,(相对于xml:base;

    rdf:ID是对rdf:about的值的缩写,其值是一个“ XML Name”,所以,不能是数字开头,不能有“/”符号等。

     

    例如:rdf:ID="PizzaBase" 等价于rdf:about="(xml:base)+#+PizzaBase "

    这个xml:base的值可以在XML文件头声明,如你例子中的,xml:base="http://www.owl-ontologies.com/unnamed.owl" 如果没有声明,则其值是RDF文件所放在的位置uri

     

    2)rdf:resource rdf:about

     

    <owl:disjointWith rdf:resource="#PizzaBase"/>

     

    <owl:disjointWith >

       <rdf:Description rdf:about="#PizzaBase" />

    </owl:disjointWith >

    的缩写。这里必须没有对资源="#PizzaBase" 做进一步的说明。所以,rdf:resource只能出现在表示属性的节点中,如这里的owl:disjointWith节点。

     

      <owl:disjointWith>

                 <owl:Class rdf:about="#PizzaTopping"/>

        </owl:disjointWith>

    是等价于:

    <owl:disjointWith >

       <rdf:Description rdf:about="#PizzaTopping" >

             <rdf:type rdf:resource="&rdfs;Class" />

       </rdf:Description>

    </owl:disjointWith >

     

    这里不能用rdf:resource了,因为声明了#PizzaTopping是一个类。

     

    所以,我们可以看出:

    说明了:  <owl:Class rdf:ID="PizzaBase">

    以后,后面的都是用:

     <owl:disjointWith rdf:resource="#PizzaBase"/>

    了。

    如果Pizza是用rdf:ID定义的,那么要增加对Pizza的描述,就必须用rdf:about。因为同一个RDF文档中,不能出现两个rdf:ID="Pizza",否则RDF Parser就会报错。

    附录:

    <?xml version="1.0"?>

     

    <rdf:RDF

     

        xmlns:owl="http://www.w3.org/2002/07/owl#"

     

        xmlns="http://www.owl-ontologies.com/unnamed.owl#"

     

        xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"

     

        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

     

      xml:base="http://www.owl-ontologies.com/unnamed.owl">

     

      <owl:Ontology rdf:about=""/>

     

      <owl:Class rdf:ID="PizzaBase">

     

        <owl:disjointWith>

     

          <owl:Class rdf:ID="Pizza"/>

     

        </owl:disjointWith>

     

        <owl:disjointWith>

     

          <owl:Class rdf:ID="PizzaTopping"/>

     

        </owl:disjointWith>

     

      </owl:Class>

     

      <owl:Class rdf:about="#Pizza">

     

        <owl:disjointWith rdf:resource="#PizzaBase"/>

     

        <owl:disjointWith>

     

          <owl:Class rdf:about="#PizzaTopping"/>

     

        </owl:disjointWith>

     

      </owl:Class>

     

      <owl:Class rdf:about="#PizzaTopping">

     

        <owl:disjointWith rdf:resource="#PizzaBase"/>

     

        <owl:disjointWith rdf:resource="#Pizza"/>

     

      </owl:Class>

     

    </rdf:RDF>

  • 相关阅读:
    如何提高软件可维护性
    UML系列 (二)四种关系
    软件工程
    软件工程需求规格说明书
    机房收费系统可行性分析报告
    ThreadStaticAttribute 的使用
    WPF:Border 控件
    几篇介绍在页面中引用脚本文件的技术文档
    收集两篇介绍 Fildder 的文章
    收集三篇关于数据库主键设计的文章
  • 原文地址:https://www.cnblogs.com/Jacquette/p/273157.html
Copyright © 2011-2022 走看看