我很困惑为什么 RDF 比 XML 更适合语义网。例如,在 RDF 中,我有以下主语、谓语、宾语三元组
<rdf:Description rdf:about=“#York”>
<tel>6086592</tel>
</rdf:Description>
我可以用 XML 写类似的东西
<person name="#York">
<tel>6086592</tel>
</person>
那么使用 RDF 有什么意义呢。需要澄清一下吗?
RDF 的重点是 RDF 三元组的集合(在谓词的某些本体的上下文中解释)是知识的系统化表示。
相比之下,虽然 XML 也可以解释为知识,但没有框架可以将一组 XML 文档和模式与另一组相关联。
另一个区别是RDF 是一个“开放的”信息模型……从某种意义上说,您可以随意添加新的知识形式(例如新的谓词URL)。相比之下,XML 受显式模式的约束,如果没有,则受工具处理特定 XML 结构的能力的限制。这些往往会使基于 XML 的信息模型“封闭”。
您可以简单地将任何 RDF 三元组集合表示为 XML。(您的示例确实做到了这一点!)RDF (+ OWL) 与普通 XML 的不同之处在于它更丰富、更灵活的信息/知识建模方式。
(这有点像比较汇编语言和 Java。它们在计算上是等价的,但 Java 更具表现力,因此更易于使用。)
XML 只是数据的一种语法,RDF 试图提供一个描述数据的框架。使用 XML,它是一种方便的、机器可读的格式,您可以验证 (DTD)、转换 (XSLT) 或查询 (XPath) 的格式。但它试图为数据提供任何形式的含义,这取决于读取它的任何内容,并且它可能因应用程序而异。
使用 RDF 的好处之一是您可以使用标准 RDF模型理论、RDFS之类的东西或使用任何OWL2配置文件的非常富有表现力的语义来为数据附加形式含义。
RDF 可以表示为 XML,但不要纠结于此。RDF 有很多语法,其中大多数比 RDF/XML 更人性化,例如 Turtle。随心所欲地表示数据,含义保持不变。
您可能会发现RDF 入门是一个有用的地方,可以开始更多地了解 RDF 以及它的用途。
XML 数据模型是一棵树。RDF 数据模型是一个图。
树是一个无向图,其中任何两个顶点都通过一个简单的路径连接。您可以使用 XML 表示图形,但不像使用 RDF 那样简单自然。