本体开发的有关问题和命名规范——some Problems and Naming Conventions of Ontology development

   笔者在本体开发导论一文中简要的论述了本体开发的一般过程及相关概念的理解,这样我们可以对本体及其开发过程有一个初步的轮廓性的认识。本文将对本体开发中常见的一些问题进行阐述,以及对相关的规范进行介绍。

概念的命名规范

1)概念命名时不要使用本体中默认的字符,如“classslotproperty”等,否则易引起混淆。

2)在使用英文描述概念时,尽量不要使用缩略词,这样容易引起误解。

3)某个类的子类的命名应当对称。如葡萄酒的子类可以描述为白酒红酒,或者,而不能写为白酒或者红酒

4)使用前缀或后缀来区分类与属性。如使用前缀“has”,后缀“of”

5)在使用英文时表示的单复数问题,并没有强制的规定,单复数均可,但要注意保证整个系统的一致性。

6)在用英文命名时应注意使用大写和分割符。类的命名通常首字母大写,而槽的命名通常首字母小写。对于多个单词构成的命名,要使用分割符,如空格、下划线、横杠等,也可以结合大小写,如Meal course,Meal_course,Meal_Course,Meal-course等都是符合要求的,但这里仍要强调要保持系统的一致性。

其他问题说明

1)在建设本体时,最好制定一个内部规范,并坚持执行。这样便于理解、维护和后续学习。

2Inverse slots(槽对称)。在定义本体时往往要使用对称的概念,这样可以避免数据冗余(因为若存储两个方向的信息则显得资源浪费,如我们知道上海到武汉的距离,自然也就知道武汉到上海的距离,这样就只需要知道 其中一个的距离即可,而不必输入两个距离),但由于本体是对事物的一种显性化的描述,虽然我们能直接推知武汉到上海的距离,我们还是需要将其表示出来,这就是属性对称关系Inverse slots.

3Disjoint subclass(互斥类)两个类如果没有相同的实例,则这两个类可以定义为互斥类。

4)本体所包含的信息应当依具体应用而定。本体不需要包含事物的所有的信息,概念的细化程度也需要移需要而定。all of them depends on your application!

5Multiple inheritance(多重继承类)。有的类的父类可以是多个,这时我们将子类称为多重继承类。

6)避免概念循环。如出现A的子类是BB的子类又是A的情况。

7)类的传递性。如AB的子类,BC的子类,则AC的子类。

  当然,对于本体的类、属性和实例之间的关系远不止这些,他们有许多种其他的关系。也正是由于他们之间的这种关系,才使得本体有着广泛的应用,才为后续的推理奠定了基础。

参考文献

 [1] Ontology Development 101: A Guide to Creating Your First Ontology, Natalya Fridman Noy and Deborah L. McGuinness. Stanford Knowledge Systems Laboratory Technical Report KSL-01-05 and Stanford Medical Informatics Technical Report SMI-2001-0880, March 2001. 

 

 
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页