-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adapting to Triple Terms and Reifiers #49
Comments
|
I definitely agree on not overriding
I also agree on avoiding exposing I also lean towards a
Yes, definitely agree on that too; it comes naturally. |
Interestingly, << <x> :relation <y> ~ <ref-1> >> :p :o .
<ref-2> rdf:reifies <<( <x> :relation <y> )>> .
<z> :says << <x> :relation <y> ~ <ref-3> >> . Which in JSON-LD could be this: [
{
"@id": "ref-1",
"@reifies": {
"@id": "x",
"relation": {"@id": "y"}
},
"p": {"@id": "o"}
},
{
"@id": "ref-2",
"@reifies": {
"@id": "x",
"relation": {"@id": "y"}
}
},
{
"@id": "z",
"says": {
"@id": "ref-3",
"@reifies": {
"@id": "x",
"relation": {"@id": "y"}
}
}
}
] One upshot is that, IMHO, JSON-LD isn't as "triple-oriented" as Turtle; and the above reifications are more like a "neutral" singleton objects if you will (or even "quoted" data, meant without any opacity connotation). Note though that this relies on all data being within the well-formed constraints for triple terms, i.e. only I even think it can be beneficial, and simple enough, to allow {
"@id": "ref-4",
"@reifies": {
"@id": "x",
"firstName": "X",
"lastName": "XY"
},
"p": {"@id": "o"}
} Would be, in Turtle: << <x> :firstName "X" ~ <ref-4> >> .
<< <x> :lastName "XY" ~ <ref-4> >> .
<ref-4> :p :o . |
The direction for RDF 1.2 now abandons quoted triples for triple terms which are intended to be used indirectly through a reifier that relates an identifier to the triple term through
rdf:reifies
. This likely affects how we might represent this in JSON-LD. Rather than using a recursive value on@id
, we may instead do something using additional keywords:The bob example might look more like the following:
This could be reduced by also introducing a
@reifies
keyword (at the expense of adding yet another keyword) as follows:The annotation syntax could also allow for an
@id
entry for assigning the reifier identifier:The text was updated successfully, but these errors were encountered: