属性不“属于”RDF 或 OWL 中的类。相反,属性可能具有域和范围,它们指定具有该属性的三元组的主题或对象属于某个类或数据类型。例如,如果我们说 hasName 的域是 Agent,那么每当我们看到“x hasName {something}”时,我们就可以推断出“x rdf:type Agent”。听起来您想说有一个属性 anni_persona,并且它的域是 Persona。这只是在某处声明anni_persona rdfs:domain Persona的问题。
现在,要将数据库表中的值转换为 RDF 数据,我认为您只需查看文档中的第 6 节:
Ad2rq:PropertyBridge
将数据库列与 RDF 属性相关联。属性桥用于将属性附加到由类映射创建的 RDF 资源。这些属性的值通常是文字,但也可以是 URI 或将资源与其他资源相关联的空白节点,例如,论文:author
属性的值可以是代表人的 URI。
如果属性桥中使用的列之一NULL
用于某些数据库行,则不会为与这些行对应的资源创建任何属性。
根据该文档中的示例,您最终会得到以下内容:
map:AnniPersona a d2rq:PropertyBridge ;
d2rq:belongsToClassMap map:Persona ;
d2rq:property :anni_persona ;
d2rq:column "Persone.Anni" .