【问题标题】:How can i define the predicate skos:hasTopConcept?我如何定义谓词 skos:hasTopConcept?
【发布时间】:2020-05-26 20:11:47
【问题描述】:

我的问题很简短,我对上述谓词感到困惑。我是这样用过的;

ex:Superclass a skos:Concept;
            skos:prefLabel "Superclass";
            skos:altLabel "Parent class";
            skos:hasTopConcept ex:Class, ex:ClassHierarchy .

在我看来,这个谓词的使用方式与 Broader 相同,我可以澄清一下吗

谢谢

【问题讨论】:

  • 您应该查看w3.org/TR/skos-reference/#schemes 以了解hasTopConcept 的用途,它是skos:inScheme 的子属性
  • 将这个谓词与更广泛的比较是错误的吗?似乎它实现了概念的相同目的
  • 你读过4.5的例子吗?
  • @UninformedUser 是的,我读到了。但是例如,我仍然不清楚以下示例中的 Skos:Narrower 是否因为 HasTopConcept 是多余的:
  • exc:Superclass a skos:Concept; skos:hasTopConcept exc:Class, exc:ClassHierarchy . skos:narrower exc:ClassHieararchy

标签: rdf semantic-web predicate turtle-rdf knowledge-management


【解决方案1】:

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 属性也可以。

与某些编程语言中的“类层次结构”概念相结合,它更适合实际的层次结构,如类型、引用/值类型、接口等,或特定的类/类型,如 Object、String、Collection、列表等

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-02
    • 2013-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多