OWL API 中的注释

Annotation in OWL API

我正在学习如何使用OWL API,我发现这个API和我以前用的API不一样。我想弄清楚一些简单的concepts.I无法理解"Annotation"。我得到这些 from wiki:

The OWL abstract syntax presents an ontology as a sequence of annotations, axioms and facts. Annotations carry machine and human oriented meta-data.

如果你熟悉owl,能举个例子吗? "machine and human oriented meta-data" 是什么意思? 非常感谢。


更新:


谢谢你回答我。我也想写个例子:

<http://data.doremus.org/performance/4db95574-8497-3f30-ad1e-f6f65ed6c896>
    a                      mus:M42_Performed_Expression_Creation ;
    ecrm:P3_has_note       "Créée par Teodoro Anzellotti, son commanditaire, en novembre 1995 à Rotterdam" ;
    ecrm:P4_has_time-span  <http://data.doremus.org/performance/4db95574-8497-3f30-ad1e-f6f65ed6c896/time> ;
    ecrm:P9_consists_of    [ a                        mus:M28_Individual_Performance ;
                             ecrm:P14_carried_out_by  "Teodoro Anzellotti"
                           ] ;
    ecrm:P9_consists_of    [ a                        mus:M28_Individual_Performance ;
                             ecrm:P14_carried_out_by  "à Rotterdam"
                           ] ;
    efrbroo:R17_created    <http://data.doremus.org/expression/2fdd40f3-f67c-30a0-bb03-f27e69b9f07f> ;
    efrbroo:R19_created_a_realisation_of
            <http://data.doremus.org/work/907de583-5247-346a-9c19-e184823c9fd6> ;
    efrbroo:R25_performed  <http://data.doremus.org/expression/b4bb1588-dd83-3915-ab55-b8b70b0131b5> .

我认为这个例子中有注解,"ecrm:P9_consists_of"的对象不是注解。如果我想给 ecrm:P3_has_not 添加注释,该怎么做? 非常感谢。

最简单的owl注解示例是注解断言,例如:

_:x rdfs:comment "this is a comment"@en 

where predicate rdfs:comment - 是一个内置注释 属性,并且有 8 个这样的内置属性。 您还可以提供自己的注释属性。 您还可以对注释进行注释并构建注释树。 复杂嵌套注解示例(turtle):

[ a                      owl:Annotation ;
  rdfs:comment           "indi-comment" ;
  owl:annotatedProperty  rdfs:comment ;
  owl:annotatedSource    [ a                      owl:Axiom ;
                           rdfs:comment           "INDI-ANN" ;
                           owl:annotatedProperty  rdf:type ;
                           owl:annotatedSource    :Indi ;
                           owl:annotatedTarget    :SomeClass1
                         ] ;
  owl:annotatedTarget    "INDI-ANN"
] .

函数语法相同:

ClassAssertion(Annotation(Annotation(rdfs:comment "indi-comment"^^xsd:string) rdfs:comment "INDI-ANN"^^xsd:string) <#SomeClass1> <#Indi>)

这里我们有 class-assertion 公理,它将命名个体 ':Indi' 与 class ':SomeClass1' 绑定;这个公理用 rdfs:comment="INDI-ANN" 注释,而它又具有注释 rdfs:comment(annotation-属性)="indi-comment"(annotation-value) .

我认为函数式语法表示可以被认为是 'human-oriented meta-data',而 turtle 是 'machine-oriented' 一个。

通常,注释是一种提供有关 owl-语句(owl-公理)的附加(和可选)信息的方法。它可以是一个版本、一个 link、一些自定义注释 -属性 等

备注:它是关于OWL2 规范而不是关于OWL-API。任何符合规范的 API 都必须提供类似的方式来处理 owl-注释。