【问题标题】:Is this possible to design a singleton in RDFS?这可以在 RDFS 中设计一个单例吗?
【发布时间】:2012-08-13 12:21:22
【问题描述】:

我实际上是在尝试创建一个 RDFS 模型,并且想知道是否有办法将一个类声明为具有单个实例。

设计的方案是针对一种图,我想将单个节点设计为“根”。我应该使用子类还是属性?我知道 OWL 提供了更多的语义词汇,但我打算保持“基本”。

【问题讨论】:

    标签: rdf rdfs


    【解决方案1】:

    不,您不能在 RDFS 中这样做。我也不确定这是否有用。只需定义您的类并将单个资源声明为将该类作为其类型。断言不可能有其他资源具有该类型有什么好处?

    【讨论】:

      【解决方案2】:

      阅读您的“用例”后,我的印象是您更喜欢功能属性:hasRoot,这样一件事就只能有一个根。正如 cygri 所说,这不能在纯 RDFS 中完成,但一个简单的 OWL 片段就足够了:

      :hasRoot  a  owl:FunctionalProperty .
      

      那么,对于给定的实体x,只能有一个实体y,这样关系x :hasRoot y 成立。那么,如果你有以下数据:

      :x  :hasRoot  :y .
      :x  :hasRoot  :z .
      

      你可以得出结论:

      :y  owl:sameAs  :z .
      

      然而,在大多数情况下,这种推理是不需要的,而 cygri 的建议足够简单,只要您的应用程序确保定义了单个根即可。

      【讨论】:

        猜你喜欢
        • 2022-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-18
        相关资源
        最近更新 更多