Modelling sequence order in OWL-DL ontology

心已入冬 提交于 2019-12-08 07:46:51

问题


As by default sequence order is not maintained in an OWL ontology. How can i model sequence in an OWL-DL ontology ?


回答1:


One way to model a sequence and order its elements is to just introduc a hasNext property to capture sequence order:

Class: SequenceItem
    EquivalentTo: 
        hasNext only SequenceItem

ObjectProperty: hasNext 
    Domain: 
       SequenceItem
    Range: 
       SequenceItem
    InverseOf:
       hasPrevious

Then, assuming the items you want to sequence in order are represented as instances, you can capture their order in the sequence like so:

SequenceItem: item_1
    hasNext: 
         item_2



回答2:


OWL allows you to state e.g.:

  • every item follows at most one item.
  • every item is followed by at most one item.
  • every first-item is an item that follows no item.
  • Item1 is an item and is followed by Item2.
  • ...

These statements allow you to describe sequences (possibly open-ended, i.e. with an infinite model).

(The above statements were written in ACE, use the ACE parser to convert them to OWL, where item becomes a class, follows becomes an object property and Item1 and Item2 are individuals.)



来源:https://stackoverflow.com/questions/11789763/modelling-sequence-order-in-owl-dl-ontology

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!