Skip to content

Conversation

@domel
Copy link
Contributor

@domel domel commented Sep 5, 2025

See #61

Here’s a summary of the main changes:

Expanded and Clarified Explanation:

  • The definition of a "triple term" is rewritten for clarity. The new text emphasizes that a triple term is a reference to a proposition and does not by itself imply assertion in the RDF graph.
  • It clarifies that for a triple term to be considered asserted, it must appear both as a top-level triple and as an unasserted triple term in the same graph.
  • The explanation about asserted vs. unasserted triple terms is made more precise.

Added Details on Transparency:

  • A new paragraph explains that RDF terms in a triple term have the same meaning as when they appear in asserted triples, describing triple terms as "transparent."

Expanded Description of Reification:

  • The explanation of reifying triples and reifiers is reworded for clarity and detail.
  • A new concept, "triple annotation," is introduced: when a triple term used in reification is also asserted, triples sharing the same reifier subject are considered a triple annotation.

New Paragraph on Propositions and Reifiers:

  • Additional detail is provided on what triple terms and reifiers denote: triple terms denote abstract, logical propositions, while reifiers may denote statements, beliefs, events, etc.
  • It is explained that reifiers are intended to serve diverse use cases and that the meaning of rdf:reifies is deliberately generic.
  • The possibility of multiple reifiers for one proposition and one reifier for multiple propositions is mentioned.
  • The text explicitly allows statements about unasserted or contradictory triples.

Preview | Diff

@domel
Copy link
Contributor Author

domel commented Sep 6, 2025

Note that it is still a draft (we are waiting for w3c/rdf-concepts#237), but your reviews are welcome.

@domel domel requested a review from hartig September 6, 2025 15:13
domel and others added 6 commits September 8, 2025 16:33
Co-authored-by: Pierre-Antoine Champin <[email protected]>
Co-authored-by: Pierre-Antoine Champin <[email protected]>
Co-authored-by: Pierre-Antoine Champin <[email protected]>
Co-authored-by: Pierre-Antoine Champin <[email protected]>
@domel domel requested a review from pchampin September 8, 2025 14:47
spec/index.html Outdated
Comment on lines 843 to 845
When the triple term of a reifying triple also appears in the same graph as an asserted triple,
the subset of triples that share the same
reifier as subject is called a <em>triple annotation</em>.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does a triple annotation only annotate an asserted triple? That doesn't match my understanding... that an annotation can apply to a triple term whether or not that triple term is also asserted.

What happens, for instance, if the asserted triple is dropped, but the reifying triple — and the triples that share the same reifier as subject — are retained?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TallTed How about this:

The subset of triples that share the same reifier as subject is called a triple annotation, regardless of whether the triple term of the reifying triple also appears in the same graph as an asserted triple. When it does, the triple annotation qualifies that asserted triple; when it does not, it qualifies the unasserted proposition denoted by the triple term.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does a triple annotation only annotate an asserted triple?

We have been using "annotate", {| |} shorthand syntax in Turtle, when the triple is also asserted.

What happens, for instance, if the asserted triple is dropped, but the reifying triple — and the triples that share the same reifier as subject — are retained?

Dropping the asserted triple does not affect other triples.
The "annotated triple" terminology no longer applies.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A triple annotation is defined as being on an asserted triple.

In Concepts, triple annotation is defined as:

When the triple term of a reifying triple also appears in the same graph as an asserted triple, the subset of triples that share the same reifier as subject is called a triple annotation.

This notion is syntactic, and defines the abstract syntax version of what in Turtle is expressed as:

:Alice :name "Alice" {| :accordingTo :Bob |} .

In a different graph, where the triple annotated above is not asserted, we only have a reifying triple, here with the reifier also described:

<< :Alice :name "Alice" >> :accordingTo :Bob .

That is not an annotation. It is crucial in this context to keep the notions "description about" and "annotation on" distinctly different.

(We (myself included) also need to be careful about the use of "qualification", to avoid implying anything pertaining to truth value in the interpretation. Annotations make a reifying connection to a relation that simply holds from a qualifying circumstance (and this connection also simply holds, as any binary relation does or does not in RDF). But the latter does not affect whether it holds, which is the truth value of the asserted triple (under RDF interpretation). It being asserted (a triple in the graph) means that the binary relation of the proposition it denotes unequivocally holds in the interpretation.)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small tweaks. Maybe this satisfies @niklasl, @domel, and @afs?

The subset of triples that have the same reifier as their subject is called a triple annotation, regardless of whether the triple term of the reifying triple also appears in the same graph as an asserted triple. When it does, the triple annotation describes that asserted proposition denoted by the triple; when it does not, the triple annotation describes the unasserted proposition denoted by the triple term.

domel and others added 2 commits September 13, 2025 10:37
Co-authored-by: Ted Thibodeau Jr <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
spec/index.html Outdated
Comment on lines 843 to 845
When the triple term of a reifying triple also appears in the same graph as an asserted triple,
the subset of triples that share the same
reifier as subject is called a <em>triple annotation</em>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does a triple annotation only annotate an asserted triple?

We have been using "annotate", {| |} shorthand syntax in Turtle, when the triple is also asserted.

What happens, for instance, if the asserted triple is dropped, but the reifying triple — and the triples that share the same reifier as subject — are retained?

Dropping the asserted triple does not affect other triples.
The "annotated triple" terminology no longer applies.

domel and others added 2 commits September 13, 2025 13:23
Co-authored-by: Andy Seaborne <[email protected]>
Co-authored-by: Andy Seaborne <[email protected]>
@domel domel requested a review from TallTed September 13, 2025 11:33
@domel domel marked this pull request as ready for review September 13, 2025 11:34
@domel
Copy link
Contributor Author

domel commented Sep 13, 2025

@niklasl and @afs Do you want me to add a note, e.g.,

Note. If the asserted triple is absent, the reifying triple and any triples about its reifier constitute a description about the proposition denoted by the triple term; this is not a triple annotation as defined above.

@niklasl
Copy link

niklasl commented Sep 13, 2025

@niklasl and @afs Do you want me to add a note, e.g.,

Note. If the asserted triple is absent, the reifying triple and any triples about its reifier constitute a description about the proposition denoted by the triple term; this is not a triple annotation as defined above.

@domel I think a note would be very valuable. But it's not a description about the logical proposition, if "about" implies "as subject", but about the resource denoted by the reifier which reifies the proposition. It is the various kinds of resources that connect to the proposition as a resource (hence it is reified) which are described.

I believe "description about X" tends to mean asserted triples with X being the subject of each (but sometimes the object, it may be a vaguer notion; cf. CBD). As far as I know, "annotation on X" has rarely if ever been used as a synonym for that. Now, in RDF 1.2, we're defining "triple annotation" as asserting a triple, reifying it using a reifier, and then using that reifier as the subject of further assertions. We need to ensure these notions are not mixed up.

I'm beginning to think we may need it (such a note) in Concepts... (See w3c/rdf-concepts#240)

Co-authored-by: Ted Thibodeau Jr <[email protected]>
domel and others added 2 commits September 27, 2025 14:32
@domel domel requested review from TallTed, afs and pchampin September 27, 2025 12:51
Copy link
Member

@TallTed TallTed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe we've got it.

@domel domel merged commit 5d94e24 into main Oct 3, 2025
2 checks passed
@domel domel deleted the aligned_with_Concepts branch November 13, 2025 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants