人们将资源描述框架(RDF)视为无模式数据模型.但是,有一种称为RDF Schema(RDFS)的东西.那么,为什么RDF是无模式数据模型?
RDF Schema有点名不副实.它不是一种真正的模式语言,至少与XML模式或ER模型不是模式相同.
主要区别在于:模式是规定性的:它们规定了数据必须采用的确切形式:此列必须存在,这可以省略,这必须与其他内容具有此特定关系等.任何数据都可以不完全符合模式(通过留下一些东西,或者通过在模式中没有一些额外的列/元素/属性)被自动视为无效(当您尝试插入没有该模式的数据时,关系数据库会出错要插入的表的正确列数,等等).
另一方面,RDF Schema应该更准确地称为"词汇描述语言":它本质上是描述性的.换句话说,它为您提供了为数据定义词汇表的方法("这些类和关系存在,这就是它们挂在一起的方式"),但它不会强制您的数据符合该模式:它完全没问题有一个RDF数据集,它使用特定RDF模式的某些部分,但不使用其他部分,或者另外使用来自其他模式的其他词汇表(甚至是在任何 RDF模式中未明确定义的词汇表).