- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Sun, 14 Apr 2024 17:17:03 -0400
- To: public-rdf-star-wg@w3.org
This modelling issue is not specific to :reifies. Consider :a :source :x . :b :source :x . :x :publication "NYT" . This says that :a and :b have the same :source, whatever that means. If you later want to add more information about :source, for example :year, then you can't put different :years for this :source. You have to either have the same :year or make a change to something like: :a :source :x . :b :source :y . :x :publication "NYT" . :x :year 2023 . :y :publication "NYT" . :y :year 2022. This says that :a and :b have the same value for the :date. peter On 4/14/24 14:37, Souripriya Das wrote: > A shortcoming of using multi-valued rdf:reifies is that you lose the ability > to add statements about the individual triple-terms. I have tried illustrating > this with the following simple examples. > > Example 1: using multi-valued rdf:reifies > ========= > :e rdf:reifies <<( :s1 :p1 :o1 )>>, <<( :s2 :p2 :o2 )>> ; :source :src1 ; > :year 2023 . > :f rdf:reifies <<( :s1 :p1 :o1 )>>, <<( :s3 :p3 :o3 )>> ; :source :src2 ; > :year 2024 . > > What if we want to indicate that the <<(: s1 :p1 :o1 )>> triple-term in :e has > a different :month annotation than the one in :f? The following does not help > because we cannot specify that the one in :e is associated with :g and the one > in :f is associated with :h. > > :g rdf:reifies <<( :s1 :p1 :o1 )>> ; :month 5 . > :h rdf:reifies <<( :s1 :p1 :o1 )>> ; :month 12 . > > Example 2: using single-valued rdf:reifies, along with rdfs:member (or some > similar) property > ========= > > :e1 rdf:reifies <<( :s1 :p1 :o1 )>> . > :e2 rdf:reifies <<( :s2 :p2 :o2 )>> . > :e rdfs:member :e1, :e2 ; :source :src1 ; :year 2023 . > > :f1 rdf:reifies <<( :s1 :p1 :o1 )>> . > :f2 rdf:reifies <<( :s2 :p2 :o2 )>> . > :f rdfs:member :f1, :f2 ; :source :src2 ; :year 2024 . > > This is a multi-level structure that, although more verbose, allows > annotations at each level. So, the following achieves the objective. > > :e1 :month 5 . > :f1 :month 12 . > > The second approach – using single-valued rdf:reifies and rdfs:member – > allows one to use a uniform way to create multi-level structures (e.g., a > document with levels: chapter -> section-> paragraph -> sentence). > > Thanks, > Souri. > > > >
Received on Sunday, 14 April 2024 21:17:08 UTC