微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

xml – rdf:resource,rdf:about和rdf:ID之间的差异

rdf:resource,rdf:about和rdf:ID之间的概念差异是什么?我做了一些调查,但他们之间的区别对我来说还不清楚。例如,在第一次声明资源时是否使用rdf:ID,rdf:resource用于引用已存在的资源等。

如果你提供一些小例子,我会很高兴的。

要清楚这只是关于编写rdf的一种特殊方式:即RDF / XML。其他语法没有这些差异。

有了免责声明:

我们要做的是写下表格的陈述:

subject predicate object

特别是:

subjectURI predicate objectURI

那么我们如何在RDF / XML中引入主题和对象URI呢?

> rdf:about设置语句的主题URI,它可以是绝对的(http://example.com/)或相对于文档的BASE解析(例如/ foo / bar,#fra)。 (像html中的href一样)
> rdf:resource再次设置语句的对象URI,绝对或相对。
> rdf:ID设置主题URI,但它只能在此文档中。 ID也只能使用一次。非常喜欢< a name =“baz”>或者html中的id =“baz”。

rdf:不鼓励ID

>你可以用rdf:about或rdf:资源替换它,片段为#baz和
>如果您多次使用相同的ID,它可能会导致xml问题。

也就是说,它是多余的并且是潜在的错误来源。

回想起来,通常只需要一个属性来指定URI,因为从RDF / XML语法中可以看出某些东西是主题还是对象:

<ex:Foo ...> - subject
  <ex:prop ... /> - property then object
</ex:Foo>

<ex:Foo ...> - subject
  <ex:prop> - property
    <ex:Bar ... /> - subject (and implictly an object chaining from prevIoUs) 
...

(经验法则:奇数行rdf:约,偶数行,rdf:资源)

并且在元素上使用rdf:about和rdf:resource几乎总是一个错误(你要么处于主题位置,要么处于对象位置)。

TL;博士

避免使用rdf:ID。使用rdf:about和rdf:resource非常像href,前者用于主题,后者用于对象。

额外

忘了提一下rdf:ID可以在一个属性元素上使用,但是它可能会发现一些你可能意想不到的东西:它会重新启用三元组。避免使用rdf:ID。

原文地址:https://www.jb51.cc/xml/293164.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。