0

让我们考虑这个简单的本体论Events

< Event, rdf:type, owl:Thing >
< Event, follow, Event >
< Event, precede, Event >
< Event, hasRank, integer^^sxd:integer >

如果 r2 = r1 + 1,则等级为 r1precede的事件 e1 等级为 r2 的事件 e2。我们也称 e2 followe1。

RDFS属性的语义followprecede使用以下 SPARQL 查询在三元组存储中实现

CONSTRUCT {
  <?e1, precede, ?e2> .
  <?e2, follow, ?e1> .
}
WHERE {
  <?e1, hasRank, ?r1> .
  <?e2, hasRank, ?r2> .
  FILTER (?r2 = ?r1+1) 
}

现在考虑我们要添加 的概念Pattern。模式可以是项集(即事件集)或序列(有序事件集)

an itemset is a set of events 
P = {e1,...,eN}

a sequence is an itemset with a constraint in order
P = {e1, ..., eN} + \forall e_i, e_{i+1} < e_i, precede, e_i+1 > and < e_{i+1}, follow , e_i > 

< Pattern, rdf:type, owl:Thing >
< Itemset, rdfs:subClassOf, Pattern >
< Sequence, rdfs:subClassOf, Pattern >
< Pattern, contains, Event >

如何表示序列中顺序约束的语义,以清楚地区分它与中的项集RDFS

4

0 回答 0