Ontology 建模:对象 属性 还是数据 属性?
Ontology Modelling: Object Property or Data Property?
我正在对一个 ontology 建模,它应该用来表示关于餐馆、他们提供的菜肴、价格和美食类型的知识。
该系统的功能之一是允许用户浏览吃某种特定菜肴的地方或搜索专门提供某些菜系的餐馆。
考虑到这一点,我已经建模了我的第一个版本ontology,但我的问题出现了。
要代表餐厅的特色:(a)我应该把它作为一个对象属性,有class Cuisine 或 (b) 就像数据 属性 一样,即作为 餐厅Class?
选择 a 或 b 有什么影响?
语义网的座右铭是“事物,而不是字符串”。这就是 RDF/RDFS/OWL 与其他建模框架的不同之处。
在OWL2中,对象属性可能具有不同的characteristics,而数据属性可能没有:
此外,由于可判定性原因,数据属性不能成为 property chains. All these restrictions 的一部分。
有很多菜系,它们可以有自己的属性(至少,详细描述)和关系,所以我建议使用对象属性。
原则上,ontology 的目的是描述关于某个主题的知识。 ontology 应该部分回答问题 "What is a [NameOfTheConceptYouWantToDefine]?"。在 OWL 中,通过提供类别(OWL classes)和类别对象(OWL 个人)之间或对象与数据之间的二元关系来回答问题值(文字)。例如,问自己这个问题 "what is an ingredient?"。如果您的答案是 "an ingredient is a finite sequence of unicode characters",那么您将需要一个数据类型 属性 来将某物与一种成分相关联。如果您认为成分是日期或数字,也是如此。
但是,如果您认为一种成分是无法在数据结构中进行数字编码的实体,那么您可能需要一个特定的 class 和对象属性来关联它。
但是,本体也可以用作关于您所描述事物的数据结构的指南。有时,用字符串来描述事物比谈论事物本身更方便。例如,可以使用字符串来描述食谱的成分。此字符串不应与成分本身混淆。为了明确区分,您可以使用具有明确名称的数据类型属性,例如 ex:ingredientDescription
.
现在,问问自己 "what is a cuisine?"。它是字符串、数字还是日期?您需要进一步描述菜系还是只需要基于字符串的菜系描述?
我正在对一个 ontology 建模,它应该用来表示关于餐馆、他们提供的菜肴、价格和美食类型的知识。
该系统的功能之一是允许用户浏览吃某种特定菜肴的地方或搜索专门提供某些菜系的餐馆。
考虑到这一点,我已经建模了我的第一个版本ontology,但我的问题出现了。
要代表餐厅的特色:(a)我应该把它作为一个对象属性,有class Cuisine 或 (b) 就像数据 属性 一样,即作为 餐厅Class?
选择 a 或 b 有什么影响?
语义网的座右铭是“事物,而不是字符串”。这就是 RDF/RDFS/OWL 与其他建模框架的不同之处。
在OWL2中,对象属性可能具有不同的characteristics,而数据属性可能没有:
此外,由于可判定性原因,数据属性不能成为 property chains. All these restrictions 的一部分。
有很多菜系,它们可以有自己的属性(至少,详细描述)和关系,所以我建议使用对象属性。
原则上,ontology 的目的是描述关于某个主题的知识。 ontology 应该部分回答问题 "What is a [NameOfTheConceptYouWantToDefine]?"。在 OWL 中,通过提供类别(OWL classes)和类别对象(OWL 个人)之间或对象与数据之间的二元关系来回答问题值(文字)。例如,问自己这个问题 "what is an ingredient?"。如果您的答案是 "an ingredient is a finite sequence of unicode characters",那么您将需要一个数据类型 属性 来将某物与一种成分相关联。如果您认为成分是日期或数字,也是如此。
但是,如果您认为一种成分是无法在数据结构中进行数字编码的实体,那么您可能需要一个特定的 class 和对象属性来关联它。
但是,本体也可以用作关于您所描述事物的数据结构的指南。有时,用字符串来描述事物比谈论事物本身更方便。例如,可以使用字符串来描述食谱的成分。此字符串不应与成分本身混淆。为了明确区分,您可以使用具有明确名称的数据类型属性,例如 ex:ingredientDescription
.
现在,问问自己 "what is a cuisine?"。它是字符串、数字还是日期?您需要进一步描述菜系还是只需要基于字符串的菜系描述?