使用Protege进行本体构建(实践)

Protege

Protégé软件是斯坦福大学医学院生物信息研究中心基于Java语言开发的本体编辑和知识获取软件,或者说是本体开发工具,也是基于知识的编辑器,属于开放源代码软件。

游戏本体

使用Protege进行本体构建(实践)_第1张图片
对于这里的本体,我们可以定义四种类型的本体对象:self-standing(独立式类),modifiers(修饰式类),relations(关系或者对象属性、数据属性)、definable(可定义类)

构建步骤

1.IRI
首先打开protege, 修改IRI
使用Protege进行本体构建(实践)_第2张图片
2. Entities
选择编辑栏Entities-Owl:Thing;选择导航栏-Tools-Create class hierarchy…
使用Protege进行本体构建(实践)_第3张图片
点击Continue,完成本体构建得到下图:
使用Protege进行本体构建(实践)_第4张图片
注意点,点击完Continue会出现:
使用Protege进行本体构建(实践)_第5张图片
这表示一个实体只能属于同一级的类当中的一个,比如数独游戏如果归为Sudoku这个类就不能再归类于LeaguOfLegends, Chess,或者WorldOfWarcraft.正如下图Sudoku类的Discription-Disjoint with中显示的一样。
使用Protege进行本体构建(实践)_第6张图片
3.ObjectProperty
选择Entities-Object property-owl:topObjectProperty;选择Tools-Create object property hierarchy,添加本体的对象属性,如下图:
使用Protege进行本体构建(实践)_第7张图片
3.1 Description
使用Protege进行本体构建(实践)_第8张图片
对于每一种对象属性来说,可以定义其对应的Domain和Range:
Domain:表示域,指定当前关系的主语类型
Range:表示取值范围,指定当前关系的宾语类型
比如:hasDifficulty的主语类型应该是Game,宾语类型应该是ValuePartition.
使用Protege进行本体构建(实践)_第9张图片
使用Protege进行本体构建(实践)_第10张图片3.2 Characteristic
除了在Description上添加一些公理以外,还能够添加一些约束,例如Description左边栏的Characteristic,
使用Protege进行本体构建(实践)_第11张图片
Functional:指单值属性
Inverse functional: 可逆关系
Transitive: 传递关系
Symetric: 对称关系
Asymetric: 非对称关系
Reflexive: 反身性
Irreflexive: 非反射性
3. 添加其他公理
4.1除了以上的公理约束添加方法,也可以对指定类添加公理,例如:Chess游戏添加以下公理
Entities-Chess-Description-Subclass of-Class expression editor:
使用Protege进行本体构建(实践)_第12张图片
添加完成后,可以看到如下结果:
使用Protege进行本体构建(实践)_第13张图片
4.2 Entities-Description-Equivalent to使用
使用Protege进行本体构建(实践)_第14张图片
这里便可以实现将DifficultyValuePartition与Hard or Normal or Easy进行等价关联。
便可将hasDifficulty中的Ranges改成DifficultyValuePartition。
使用Protege进行本体构建(实践)_第15张图片

  1. 添加Definable class
    Game-(右击)add subclass
    使用Protege进行本体构建(实践)_第16张图片
    这里定义MultPlayerGame类,可以添加公理:
    Subclass of:
    使用Protege进行本体构建(实践)_第17张图片
    Edit-Convert to defined class:
    使用Protege进行本体构建(实践)_第18张图片
    这时候可定义类便定义好了。
  2. OntoGraf
    为了查看已经定义的本体,可以使用图形化工具栏OntoGraf,查看类与关系
    使用Protege进行本体构建(实践)_第19张图片
    6.对可定义的类,可以使用推理机制,得到推理后更加完善的本体信息
    Reasoner-HermiT,选择推理工具
    Reasoner-Configure-确定,查看推理工具是否能正常使用
    Reasoner-Start Reasoner, 开始推理
    选择OntoGraf-Inferred可以查看推理后的结果:
    使用Protege进行本体构建(实践)_第20张图片
    可以看到对于定义的可定义类,推理后各自将相应的类添加到这些可定义类中,从而完善了本体的信息。

你可能感兴趣的:(理论与实战,知识图谱)