我的问题很简短,我对上面的谓词感到困惑。我就是这样使用它的;
ex:Superclass a skos:Concept;
skos:prefLabel "Superclass";
skos:altLabel "Parent class";
skos:hasTopConcept ex:Class, ex:ClassHierarchy .在我看来,这个谓词的用法与更广泛的一样,我能得到一些澄清吗?
谢谢
发布于 2020-12-22 07:27:24
skos:ConceptScheme描述了一个知识组织系统,一个概念的容器。通常,一个概念最多存在于一个方案中,因为例如skos:notation被假定为其方案中的概念提供一个值(对于不同方案中的等价概念,存在特定的映射关系)。
您的用法不正确,因为skos:hasTopConcept用于概念方案,并将概念作为其对象。这意味着该概念在某种程度上是最通用、最广泛的,即在该方案中没有更广泛的内容(但在一般情况下,在其他方案中可能存在)。相反的是skos:topConceptOf,意思是skos:inScheme。
假设您的方案用于表示特定类之间的关系,您可能打算以这种方式对其进行建模:
ex:ClassRelations a skos:ConceptScheme ;
skos:hasTopConcept ex:Class .
ex:Class a skos:Concept ;
skos:topConceptOf ex:ClassRelations . # redundant since the inverse was already specified (inScheme is sufficient)
ex:Superclass a skos:Concept ;
skos:broader ex:Class .然而,我不认为这是一个很好的SKOS用法。我们在这里建模类关系,虽然“是超类的”是有意义的,但它并不比“是类的”更具体,因为这是没有意义的。指定一个普通的旧RDF属性也同样有效。
按照某些编程语言中的“类层次结构”概念,它更适合于实际的层次结构,如类型、引用/值类型、接口等,或特定的类/类型,如对象、字符串、集合、列表等。
https://stackoverflow.com/questions/62030613
复制相似问题