0

For a given subject, can two statements be made whose predicates are identical?

For example, can both the statements on line 2 and 3 co-exist?

data:myDataPoint1234 a abc:GeoPoint ;
  abc:isIdentifiedBy data:lat20 ;
  abc:isIdentifiedBy data:lon150 .

data:lat20 a abc:Latitude ;
  abc:representationValue "20"^^xsd:string .

data:lon150 a abc:Longitude ;
  abc:representationValue "150"^^xsd:string .

UPDATE: Duplicate question: RDF - More than one Object for one Subject-Property

Lisa
  • 4,333
  • 2
  • 27
  • 34
  • 1
    What happens if you try? – Jeen Broekstra May 04 '21 at 00:57
  • @JeenBroekstra RDF4J doesn't seem to want to let us add a second statement about the subject if the predicate is the same. – Lisa May 04 '21 at 02:33
  • 2
    RDF4J (and any RDF tool) definitely does allow that, so something else must be going wrong. Can you [edit] your question to show what you're trying to do, the result you are getting and the result you were expecting? – Jeen Broekstra May 04 '21 at 02:42
  • 1
    why should it not be possible? Without how could anybody work with multi-valued properties? Show the RDF4J code please – UninformedUser May 04 '21 at 06:05
  • @JeenBroekstra & uninformeduser: Thanks for the answer. Agreed it should be possible. I had someone else in my team having trouble with RDF4J so was really just asking the question in principle. – Lisa May 04 '21 at 06:39
  • @Lisa if your team member has any more problems with RDF4J, tell them to reach out on one of the RDF4J support forums. – Jeen Broekstra May 04 '21 at 23:33
  • 1
    Apologies. Realised this is a duplicate question, but was hard to find via search so useful to keep this as a placeholder for search engine. Happy to close as dupe. – Lisa May 06 '21 at 05:23

1 Answers1

0

Yes it is absolutely permitted.

Verified by validating the posted Turtle example at http://mowl-power.cs.man.ac.uk:8080/converter/convert

Double-checked by outputing to XML format and validating using the official W3C converter at https://www.w3.org/RDF/Validator/rdfval

Both parsers accepted the example.

Resulting statements from the W3C parser:

Triples of the Data Model
Number Subject Predicate Object
1 http://abc.blah.com isIdentifiedBy http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#AnnotationProperty
2 http://abc.blah.com representationValue http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#AnnotationProperty
3 http://abc.blah.com GeoPoint http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#Class
4 http://abc.blah.com Latitude http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#Class
5 http://abc.blah.com Longitude http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#Class
6 http://data.blah.com lat20 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#NamedIndividual
7 http://data.blah.com lat20 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://abc.blah.comLatitude
8 http://data.blah.com lat20 http://abc.blah.comrepresentationValue "20"^^http://www.w3.org/2001/XMLSchema#string
9 http://data.blah.com lon150 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#NamedIndividual
10 http://data.blah.com lon150 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://abc.blah.comLongitude
11 http://data.blah.com lon150 http://abc.blah.comrepresentationValue "150"^^http://www.w3.org/2001/XMLSchema#string
12 http://data.blah.com myDataPoint1234 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.w3.org/2002/07/owl#NamedIndividual
13 http://data.blah.com myDataPoint1234 http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://abc.blah.comGeoPoint
14 http://data.blah.com myDataPoint1234 http://abc.blah.comisIdentifiedBy http://data.blah.com lat20
15 http://data.blah.commyDataPoint1234 http://abc.blah.comisIdentifiedBy http://data.blah.com lon150
Lisa
  • 4,333
  • 2
  • 27
  • 34