人们将资源描述框架(RDF)视为无模式数据模型。但是,有一种称为RDF Schema(RDFS)的东西。那么,为什么RDF是无模式数据模型?
答案 0 :(得分:5)
RDF Schema有点名不副实。它不是真正的模式语言,至少与XML模式或ER模型不是模式相同。
主要区别在于:模式规范性:它们规定了数据必须采用的确切形式:此列必须存在,这可以省略,这个必须与其他东西等具有此特定关系。等任何不完全符合架构的数据(通过留下一些东西,或者通过一些额外的列/元素/属性在模式中)被自动视为无效(当您尝试插入没有适合插入表的列数的数据时,关系数据库会出错)。
另一方面,RDF Schema应该更准确地称为&#34;词汇描述语言&#34;它本质上是描述性。换句话说,它为您提供了为数据定义词汇表的方法(&#34;这些类和关系存在,这就是它们挂在一起的方式&#34;),但它不会强制您的数据符合该模式:使用特定RDF模式的某些部分而不是其他部分的RDF数据集,或者使用其他模式中的其他词汇(甚至是 any <未明确定义的词汇表),这是完全正常的。 / em> RDF Schema)。答案 1 :(得分:1)
在说RDF唯一的好处是无模式时,我说的是RDF作为建模框架;构成链接数据堆栈的许多词汇表,本体和工具不是“RDF”,但它们可以促进它们。这些是以分布式,类似Web的方式处理Web上的数据所必不可少的,但它们不需要RDF来工作。
另一方面,RDF Schema为RDF提供词汇表。
在我看来,只要您完全使用某些词汇表来验证您的RDF,它就不再是无模式的。在这方面,它就像XML:你可以在没有模式的情况下使用它,但大多数人却没有。