首页 > 解决方案 > 如何将时间实例添加到本体

问题描述

我在 protege 中创建了一个时间本体,其中我必须将分钟、秒和小时值添加为 09,19 等。在输出时我想将时间显示为 11:30:00。当我将实例添加到小时然后秒时,它向我显示了那个人已经添加了。如何解决这个问题?

标签: instanceontology

解决方案


如果我理解正确,您想要实现的是拥有一个类,例如Time,您可以为其指定小时、分钟和秒。这实际上是一个n-ary 关系的示例,您可以将时间关系建模为一个类。对此进行建模的一种方法是:

DataProperty: hours
    Domain: Time 
    Range: xsd:byte[>= "0"^^xsd:byte , <= "24"^^xsd:byte]


DataProperty: minutes>
    Domain: Time
    Range: xsd:byte[>= "0"^^xsd:byte , <= "60"^^xsd:byte]

DataProperty: seconds>
    Domain: Time
    Range: xsd:byte[>= "60"^^xsd:byte , <= "0"^^xsd:byte]

Class: Time

然后指定,假设某个商店的营业时间,如 8:30,您可以创建以下个人:

Individual: openingTime
    Types: Time

    Facts:  
     hours  "8"^^xsd:byte,
     minutes  "30"^^xsd:byte,
     seconds  "0"^^xsd:byte

推荐阅读