所谓语义(2)
2017-12-28 14:43
190 查看
1.该博文所用到的ontology文件可以在博主的资源共享当中使用积分进行下载
2.为什么需要ontology
以上5条是对为什么需要本体的一个很全面的回答。
3.本体的构建方法(七步法)
4.实际开发本体所经过的步骤
3中提出的方法是一种一般化的方法,但真正开发本体的时候往往要经过以下一些步骤
5.使用七步法手工构建一个university的本体
5.1 Determine domain and scope(确定领域和范围)
这一步需要考虑以下问题
在university本体中设置的 competency questions如下:
Domain: University(educational)
Competency questions:
1.Howmany professors there are for a certain degree program?
2.Howmany students follow a course?
3.Whatare the subjects?
4.Whichdegree a university offers
5.Whoteaches a specific course
6.Whatis the schedule of a course
7.……
5.2 consider reuse(考虑复用现有本体)
该例子没有复用任何已有本体……
5.3 Enumerate important terms(列举重要的专业术语)
University
Course
Degree Type/Level
Schedule
Teacher
Student
Degree Program
Teaches
Offers
credits
course hours
enrolled
person id
……
5.4 Define classes and their hierarchy(定义类和层次结构)
5.5 Define properties(定义属性,包括object property和dataproperty)
5.6 Define constraints(定义约束和限制)
5.7 Create instances(创建实例)
注意,上面这四部直接在protege中实现,具体请参考博主共享资源当中的university_press.owl文件。在这一步有一个技巧可以使用,就是在
整个过程中可以打开reasoner,这样的话,推理机可以事实检测你所构建本体的一致性(consistency),如下图所示,当你的操作不满足一致性的时候,推理机会提示你,然后点击Explain按钮,推理机会帮你解释导致不一致性出现的原因。
6 推理机初体验
上图中,笔者有意在Thing类中添加了一个instance是“University2”,且设置其object property和Data property。然后推理机就识别出来了University2这个instance其实是属于University这个类,如图所示(当然此时你的推理机是打开的),reasoner之所以能够识别到该问题,是因为Universtiy2和Universtiy1的属性相似,所以他认为这两个instance应该是属于一个class。
7. SWRL书写规则,利用reasoner进行推理
7.1 推理前如下图所示
7.2 SWRL规则的添加,如下图所示
7.3 利用新规则和推理机推理之后
2.为什么需要ontology
以上5条是对为什么需要本体的一个很全面的回答。
3.本体的构建方法(七步法)
4.实际开发本体所经过的步骤
3中提出的方法是一种一般化的方法,但真正开发本体的时候往往要经过以下一些步骤
5.使用七步法手工构建一个university的本体
5.1 Determine domain and scope(确定领域和范围)
这一步需要考虑以下问题
在university本体中设置的 competency questions如下:
Domain: University(educational)
Competency questions:
1.Howmany professors there are for a certain degree program?
2.Howmany students follow a course?
3.Whatare the subjects?
4.Whichdegree a university offers
5.Whoteaches a specific course
6.Whatis the schedule of a course
7.……
5.2 consider reuse(考虑复用现有本体)
该例子没有复用任何已有本体……
5.3 Enumerate important terms(列举重要的专业术语)
University
Course
Degree Type/Level
Schedule
Teacher
Student
Degree Program
Teaches
Offers
credits
course hours
enrolled
person id
……
5.4 Define classes and their hierarchy(定义类和层次结构)
5.5 Define properties(定义属性,包括object property和dataproperty)
5.6 Define constraints(定义约束和限制)
5.7 Create instances(创建实例)
注意,上面这四部直接在protege中实现,具体请参考博主共享资源当中的university_press.owl文件。在这一步有一个技巧可以使用,就是在
整个过程中可以打开reasoner,这样的话,推理机可以事实检测你所构建本体的一致性(consistency),如下图所示,当你的操作不满足一致性的时候,推理机会提示你,然后点击Explain按钮,推理机会帮你解释导致不一致性出现的原因。
6 推理机初体验
上图中,笔者有意在Thing类中添加了一个instance是“University2”,且设置其object property和Data property。然后推理机就识别出来了University2这个instance其实是属于University这个类,如图所示(当然此时你的推理机是打开的),reasoner之所以能够识别到该问题,是因为Universtiy2和Universtiy1的属性相似,所以他认为这两个instance应该是属于一个class。
7. SWRL书写规则,利用reasoner进行推理
7.1 推理前如下图所示
7.2 SWRL规则的添加,如下图所示
7.3 利用新规则和推理机推理之后
相关文章推荐
- 所谓语义(1)
- 所谓的Dumb Question
- COM 接口中 也可用 LPCVOID HINSTANCE .... 所谓的非标准类型
- 对象语义与值语义
- 所谓的“原创性写作”
- 强烈谴责一些无聊的所谓“Hacker”的低级行为!
- 所谓“恩爱夫妻”就这样被搅黄
- 深度剖析E680G应用一.所谓的Loader
- 所谓的爱
- 错误 7405: 异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保一致的查询语义。请启用这些选项,然后重新发出查询。
- 模式集成与语义集成
- 所谓男人
- 真的想抨击一下那些"批评家"--所谓的那些专家
- XML+RDF——实现Web数据基于语义的描述
- 现实社会中的所谓程序死循环
- 论坛和博客的语义聚合新势力
- 关于所谓的IPv9
- [文摘]所谓坚持
- 【语义未来】Twine和Scoutlabs揭示的冰山一角
- 我对所谓电信运营商重组和3G发牌的看法