2016-03-07 71 views
0

比方说,我有这三重:RDF表达谓词程度

m:song1 m:hasFeature m:harmony 

,这意味着一首歌与URI m:song1有和谐,好凉爽,到目前为止,但有时我想说的是,它具有和谐公正40%。

一个更好的例子可能是这样的:

m:user1 m:fromPeriod m:adult 
m:user2 m:fromPeriod m:childhood 

我们不能说,以前25岁你的童年,你成年后,它是模糊的,不硬砍。我想说的是,你是50%的成年人和50%的童年

有没有办法做到这一点在RDF和如何如果是(我希望)在门徒

什么,我认为是这样的:

m:user1 m:fromPeriod m:adult 
m:fromPeriod :hasFuzzy 0.5 

是可能的吗? (特别是在Protege中,因为我无法在整个本体论中手写)

+1

您可以使用N元关系模式来执行此操作:https://www.w3.org/TR/swbp-n-aryRelations/ – CaptSolo

回答

1

您正在查看reification,这是语义网和其他地方的常见做法。根据评论中的建议使用n-ary relations是一种方式,也许是正确的方法。

另一种技术是为您的语句(三元)分配URI或bnode,以便您可以对其进行说明。例如,

鉴于三联:

:song_1 :hasFeature :harmony. 

您可以创建:

:statement_1 a rdf:Statement. 
:statement_1 rdf:subject :song_1. 
:statement_1 rdf:predicate :hasFeature. 
:statement_1 rdf:object :harmony. 

那么你可以说这样的话:

:statement_1 :hasSomeValue "40%". 
0

我也查了一些资源模糊Protégé的逻辑像this one

+0

您可以将信息的摘要添加到您的实际答案中,而不仅仅是发布一个链接呢?这样信息就会保留下来,即使链接失效,答案仍然有用。你可以[编辑]你的答案来更新它。 –