- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Fri, 22 Jan 2021 13:20:25 -0500
- To: public-rdf-star@w3.org
As I've mentioned several times it turns out that reification can be used in many different ways, each producing a different variation of RDF*. I've also sent out several examples of defining RDF* using reification. If << s p o >> is just replaced by _:b rdf:subject s . _:b rdf:predicate p . _:b rdf:object o . with a different blank node for each occurrence of the embedded triple then you get transparency and non-uniqueness. If you require using the same blank node for a triple then you get uniqueness. Uniqueness can be by document, by graph, or universal. (Of course, using the same blank node in multiple RDF graphs doesn't always get what you might think it does.) If you add extra links for non-blank subjects, predicates, or objects of embedded triples that link to literal versions of the subject, predicate, and object then you get a semi-opaque version. The literals can just be strings whose values are a canonical representation of the subject, predicate, or object. If these links are also added for blank node subjects, predicates, or objects then you get a fully opaque version. So it is possible to define several versions of RDF* with very minimal additions to RDF. Several versions of opacity can be achieved by using three new predicates. Uniqueness can be achieved by using the same blank node for an embedded triple, which is done during the construction of RDF graphs from surface syntaxes. peter
Received on Friday, 22 January 2021 18:20:39 UTC