如果我用对象属性替换 owl:someValuesFrom 限制,那么这个 Crop Ontology 的含义会发生什么变化

问题描述 投票:0回答:1

我目前正在尝试找出他们想通过作物本体论告诉我什么含义,并在此过程中学习一些有关本体论和OWL的知识(我对这个主题还很陌生)。在那里,

owl:someValuesFrom
限制被大量使用,通过某种关系将术语链接在一起,例如
method_of
scale_of
。我不明白为什么他们不只是通过对象属性链接类。

作为一个具体的例子,我添加了水稻作物本体的摘录。请帮助我理解如果我只是通过对象属性链接所提到的类,我会传达什么样的含义。我在下面附上了我的研究尝试和水稻本体的摘录

OWL 帮助页面说明了这些限制:

换句话说,它定义了一类个体 x,其中至少有一个 y(类描述的实例或数据范围的值),使得 (x,y) 对是 P 的实例。

...我无法真正理解。在 Stack Overflow 上搜索“OWL sameValueAs 对象属性”没有产生任何结果。

在摘录中,Rice Ontology 大致定义了:

  • 方法 -> ... -> 产量测量
  • 性状 -> ... -> 谷物产量
  • 变量 -> ... -> GrYld_Comp_kgha1
  • 规模 -> ... -> kg_per_ha

1 可能是从一小块地块的收获中根据其他产量参数进行计算/外推

  • kg_per_ha -[scale_of]-> Yield measurement -[method_of]-> Grain yield
  • GrYld_Comp_kgha -[variable_of]-> { Grain yield, Yield measurement, kg_per_ha }

初始定义

@prefix : <https://cropontology.org/rdf/> .
@prefix prl: <http://purl.org/dc/terms/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <https://cropontology.org/rdf/> .


:Method         rdf:type owl:Class .            ## <https://cropontology.org/rdf/Method>
:Computation    rdf:type owl:Class ;     ## <https://cropontology.org/rdf/Computation>
    rdfs:subClassOf :Method .

:Scale          rdf:type owl:Class .            ## <https://cropontology.org/rdf/Scale>
:Numerical  rdf:type owl:Class ;    ## <https://cropontology.org/rdf/Numerical>
    rdfs:subClassOf :Scale .

:Trait          rdf:type owl:Class .
:Agronomic rdf:type owl:Class ;
    rdfs:subClassOf :Trait .

:Variable       rdf:type owl:Class .            ## <https://cropontology.org/rdf/Variable>

:scale_of       rdf:type owl:ObjectProperty .   ## <https://cropontology.org/rdf/scale_of>
:variable_of    rdf:type owl:ObjectProperty .   ## <https://cropontology.org/rdf/variable_of>

:Grain_yield    rdf:type owl:Class ;   ## <https://cropontology.org/rdf/CO_320:0000073> 
    rdfs:subClassOf :Agronomic ;
    skos:definition "Amount of grain (weight) produced per area"@en ;
    

使用限制定义 Grain_yield、Yield_measurement 和 GrYld_Comp_kgha

:Yield_measurement  rdf:type owl:Class ;   ## <https://cropontology.org/rdf/CO_320:0000469> 
    rdfs:subClassOf :Computation ,
    [ 
        rdf:type owl:Restriction ;
        owl:onProperty :method_of ;
        owl:someValuesFrom :Grain_yield
    ] ;
    rdfs:label "Yield measurement"@en ;
    skos:definition "Harvest grain from at least 5 m2/plot, discarding at least three border rows. Thresh, dry the rough (paddy) rice to 14% moisture content, and weigh."@en .

 
:kg_per_ha  rdf:type owl:Class ;     ###  https://cropontology.org/rdf/CO_320:0000470
    rdfs:subClassOf :Numerical ,
    [ 
        rdf:type owl:Restriction ;
        owl:onProperty :scale_of ;
        owl:someValuesFrom :Yield_measurement
    ] ;
rdfs:label "kg per ha"@en .


:GrYld_Comp_kgha    rdf:type owl:Class ;  ## <https://cropontology.org/rdf/CO_320:0000745>
    rdfs:subClassOf :Variable ,
    [ rdf:type owl:Restriction ;
        owl:onProperty :variable_of ;
        owl:someValuesFrom :Grain_yield .
    ] ,
    [ rdf:type owl:Restriction ;
        owl:onProperty :variable_of ;
        owl:someValuesFrom :Yield_measurement 
    ] ,
    [ rdf:type owl:Restriction ;
        owl:onProperty :variable_of ;
        owl:someValuesFrom :kg_per_ha .
    ] ;
    prl:contributor "IRRI" , "Jeffrey Detras" ;
    rdfs:label "GrYld_Comp_kgha"@en ;
    skos:altLabel "GrYld_Comp_kgha"@en .

为什么我不能这样做:


:Yield_measurement  rdf:type owl:Class ;  
    rdfs:subClassOf :Computation ;
    :method_of :Grain_yield; 
    skos:definition "Harvest grain from at least 5 m2/plot, discarding at least three border rows. Thresh, dry the rough (paddy) rice to 14% moisture content, and weigh."@en .

kg_per_ha   rdf:type owl:Class ;    
    rdfs:subClassOf :Numerical  ;
    :scale_of :Yield_measurement; 
rdfs:label "kg per ha"@en .

:GrYld_Comp_kgha    rdf:type owl:Class ;
    rdfs:subClassOf :Variable ,
    :variable_of :Grain_yield,
                 :Yield_measurement,
                 :kg_per_ha ;
    rdfs:label "GrYld_Comp_kgha"@en .
    
owl ontology semantic-web
1个回答
0
投票

:产量测量 rdf:类型 owl:类;
rdfs:subClassOf :计算 ;
:method_of :Grain_yield;

在此示例中,您尝试以类图中表示的方式表示类。但 OWL 中的属性并不是这样工作的:在面向对象的视图中,属性不能独立于定义它们的类而使用,而在 OWL 中,属性可以在没有任何类的情况下存在。

owl:someValuesFrom 是一种存在性限制:它定义了一个类,其元素都至少有一个与其关联的属性实例,无论是否在本体中声明(开放世界假设在那里发挥作用)。面向对象视图中的 closes 是一个不能为 null 的属性,即使它的值当前未知。

© www.soinside.com 2019 - 2024. All rights reserved.