Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
Add introduction of triple terms and accompanying Turtle examples #16
base: main
Are you sure you want to change the base?
Add introduction of triple terms and accompanying Turtle examples #16
Changes from 6 commits
0b1993e
3a4f196
c444e0d
7af2b16
fad20b7
b54250e
051a328
962dec8
a7d1daf
b714385
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Trying to use less words to say the same thing (likely a matter of writing style, but still, I think simplicity is important for a primer)
As the atomic unit of description in RDF, the triple (or statement) states a directed relationship between two resources. Sometimes, we need to describe this relationship itself in more detail.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 to @william-vw 's proposal
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, this is better. While I also prefer "atomic" (as in "atomic proposition"), there have been some reactions to using that (since triples have components). That's why I used "basic". But I'll try this out. Keep commenting if something even better comes to mind.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of going into details, how about following the above paragraph directly with an example:
For instance, given the following:
We may want to say the following about the relationship:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Going into details is what this is about, but I appreciate your advice to approach it gently. However, your suggested form can be misleading, as it appears to conflate the proposition with a circumstance thereof.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel like
<Bob> <is interested in> <the Mona Lisa>
is already quite specific - it does not reflect a need for an occurrence / token. (Avoiding the discussion on whether occurrences are always needed.) Hence, I didn't see an issue with this particular example.E.g.,
<the Mona Lisa> <depicts> <cypress tree>
could be found in many different sources and at different dates.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think in this PR we should focus on how to use reifiers, and continue the debate on why they are needed in w3c/rdf-star-wg#138? The primer should convey the design, but not all of the theory. (Perhaps RDF Concepts needs to cover more of that? Or Semantics; after all, it is where the original reification documentation resides.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would actually prefer a graphical example, building on the figure we already have.
Below is a quick and dirty experiment
Note that I just had the idea of linking the arc to the reifier with a wiggly line, which is reminiscent of the tilda we use in Turtle :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Depending on the outcome of the discussion, this statement can be weakened.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel there is a non sequitur here; the terms annotate, reference and details are no longer used in the second part.
A suggestion:
Conceptually, we can annotate a simple statement with something more detailed.
[figure]
The dotted circle annotates the "is interested in" arc and is called a reifier.
A reifier expresses a concrete circumstance of Bob's interest, and details it with a type and a date of origin.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a feeling that confusion will increase due to
a <Interest>
and<is interested in>
. Changing the latter to<hasInterest>
might be enough to solve this.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @william-vw and @pchampin for these suggestions! I've tried to work much of that into 051a328.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@TallTed:
The
<is interested in>
is the more abstract binary relationship, following the existing example in the primer. Changing it to<hasInterest>
implies remodelling, to instead link from<Bob>
to the reified<Interest>
. That would be better modelling if such interests as resources where of primary interest (heh). But the point here is to show how such more detailed interests can link to the simple proposition itself, as a reification thereof. Thus allowing us to keep the (arguably too) simple relationship.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure what "fixed" is supposed to mean here. Are there any objects in an RDF graph, that are not "fixed"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, I guess there aren't. (Except maybe bnodes?)
That phrasing is an attempt to hint at the unicity ("type nature") of the propositions denoted by triple terms. But I'll seek to rephrase this as I'm working your other suggestions into the text. (Reordering; adding a figure; cutting or shortening.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I understand the reason for the original example - annotations as a segue to reifiers - but I felt it difficult to understand. Perhaps due to its format (with the tilde) being not immediately clear to me, it no longer mentioning triple terms (so it felt like a bit of a non-sequitur), and it introducing another concept (IMO unnecessarily, namely "annotation").
Perhaps it could be simplified as follows:
This can be done using triple terms as references to statements. A triple term is a fixed object that identifies a statement using its subject, predicate and object components. For instance:
In turn, triple terms can be "concretized" using so-called reifiers. Here, a reifier turns Bob's interest into a concrete circumstance, which can then be described:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The advice from e.g. @franconi during the last Semantic TF meeting was (IIUC) to concentrate on annotations. I agree, admittedly based on my library work, where the bulk of our use cases for RDF-star utilize those. To mitigate that bias, I've looked elsewhere too. Other sentiments appear to confirm this; see e.g. this post by Bob DuCharme. My experiments with our collected use cases (including Wikidata and Uniprot descriptions adapted to this form) mostly seem to confirm this as well.
So my goal here, which might not be achieved yet, is to begin with that and then explain how such "footnotes with details" are expressed trough reifying triples.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your explanation of "footnotes with details" makes it clearer what your intent was :-)
I can see an analogy with Wikipedia where a claim can be "backed" by multiple citations; each of those citations can then have separate provenance data.
(To me, a footnote provides singular details on a claim; it would rather be in line with the triple term as subject view.)
In other words, the analogy wasn't fully clear to me ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also believe that annotations are the easiest path to come to triple terms. That was the original RDF-star use case (where embedded triples were also automatically asserted).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This sentence took many readings (I think I still don't understand it) :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Point taken; it got a bit twisted during a rewrite. How about:
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pnames have not been introduced yet, so this should rather be the full IRI (or an abstract description thereof).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thank you for these and refer to 051a328 to see if that is more satisfactory.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be great if we could elaborate on that aspect, since it outlines the practical benefits of using reifiers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agree here too; see 051a328.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could also add a separate info box on alternatives:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed. Please see if 051a328 addresses this.