flo*_*urr 1 rdf semantic-web data-modeling rdfs
我想知道将RDF项目特征建模为什么含义(即利弊):
我不想使用数据属性.我需要用他们的IRI代表清晰的概念.
示例类型1
@prefix : <http://example.org#> .
:Car a rdfs:Class .
:Subaru rdfs:subClassOf :Car .
:Mercedes rdfs:subClassOf :Car .
:Ferrari rdfs:subClassOf :Car .
:c1 a :Subaru .
:c1 a :Mercedes .
:c1 a :Ferrari .
Run Code Online (Sandbox Code Playgroud)
示例类型2
@prefix : <http://example.org#> .
:Car a rdfs:Class .
:CarModel a rdfs:Class .
:Subaru a :CarModel .
:Mercedes a :CarModel .
:Ferrari a :CarModel .
:c1 a :Car ;
:model :Subaru .
:c2 a :Car ;
:model :Mercedes .
:c3 a :Car ;
:model :Ferrari .
Run Code Online (Sandbox Code Playgroud)
如果这个问题听起来太宽泛,请原谅.我知道在这些情况下没有灵丹妙药,我试图了解这种不同建模策略的含义是什么.
这是一个概念建模问题,它不是RDF或OWL独有的,但非常普遍适用.正如你自己所说,没有一个正确的答案.但是,有一些标准可以帮助您决定一种方式或另一种方式.
首先,问问自己被建模的财产是否属于个人的内在财产?措辞略有不同:是否有必要让任何个人拥有这种财产,或者是否有个人没有这种财产?如果属性是内在的,那么这是支持使用子类的一个要点.在你的例子中,可以说这个属性是内在的:没有一个模型就没有汽车可以存在.或者举一个不同的例子:没有哺乳动物可以存在而不是其特定的子类型(长颈鹿,老鼠,狗等).
二,密切相关:属性是不可变的吗?那个,这个属性的价值可以随着时间的推移而改变吗?如果它可以改变,那就是支持使用属性而不是子类.在你的例子中,汽车的模型可能是不可变的(所以这是另一个支持使用子类的点),但如果你要添加,比如说,每辆汽车的颜色,那可能会改变(有一个像样的油漆工作) ,这使得它成为使用属性的候选者(以及颜色可能不是内在属性的事实,如果你认为没有油漆涂层的汽车仍然是汽车).
这两个标准都是完全概念性的,主要是关于你的本体论如何反映"现实世界"的问题.可以说,这对于域本体的可重用性和可理解性而言非常重要.其他考虑可能更实际,并处理诸如您可能会问的查询类型,两种建模方法中的哪一种导致最小可能的数据集(就语句数量而言)等等.
| 归档时间: |
|
| 查看次数: |
53 次 |
| 最近记录: |