Skip to content
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

Change the section on Quoted Triples to Triple Terms. #96

Merged
merged 7 commits into from
Aug 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions spec/asserted-triple-term.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
104 changes: 54 additions & 50 deletions spec/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -172,62 +172,64 @@ <h3>Resources and Statements</h3>
exists, without explicitly naming it.</p>
</section>

<section id="section-quoted-triples">
<h3>Quoted Triples</h3>
<section id="section-triple-terms">
<h3>Triple Terms</h3>

<p class="issue" data-number="81">
As the WG has moved away from the notion of quoted triples, this section needs to be changed such that it does not mention quoted triples anymore but, instead, describes whatever new concept the WG settles on (e.g., <a>triple terms</a>).
</p>

<p>A <dfn>quoted triple</dfn> is an <a>RDF term</a> with the components of
an <a>RDF triple</a>, which can be used as the <a>subject</a> or <a>object</a>
<p>A <a>triple term</a> is an <a>RDF term</a> with the components of
an <a>RDF triple</a>, which can be used as the <a>object</a>
of another triple.</p>

<p>A <a>quoted triple</a> is not necessarily asserted, allowing
<p>A <a>triple term</a> is not necessarily asserted, allowing
statements to be made about other statements that may not be
asserted within an <a>RDF graph</a>.
This allows statements to be made about relationships that may be contradictory.
For a <a>quoted triple</a> to be asserted,
For a <a>triple term</a> to be asserted,
it must also appear in a graph as an <a>asserted triple</a>.</p>

<p>The following diagram represents a statement with an unasserted <a>quoted triple</a>
as the subject.</p>

<figure id="fig-quoted-triple">
<a href="quoted-triple.svg">
<!-- Source for this file is at https://docs.google.com/drawings/d/1I_QxbUgnQXumXzb8c0WNJHIQ-mtRs2S80dDG6i9aOD8 -->
<img src="quoted-triple.svg"
alt="An RDF graph containing a triple that references an unasserted quoted triple (with grey background) as the subject"
<p>A <a>triple term</a> can be used as the object of a <a>triple</a> with the predicate <code>rdf:reifies</code>.
The <a>subject</a> of that <a>triple</a> is called a <dfn>reifier</dfn>.
Copy link
Contributor

Choose a reason for hiding this comment

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

Given that this section is non-normative, I wonder whether it makes sense to put a definition here (<dfn>reifier</dfn>) ?

Copy link
Member Author

Choose a reason for hiding this comment

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

As a reifier is really just a concept, and not a component of the abstract syntax itself, it seems to me that a non-normative definition is fine. I think we also need a concept for "reified triple term", or whatever we come up with. In Turtle, both "reifier" and "reified triple term" will be normatively defined as part of the grammar, and it may be elsewhere, so having the source definition in RDF Concepts makes sense.

But, I'm open to suggestions to handle this better.

Copy link
Contributor

Choose a reason for hiding this comment

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

Makes sense.

Assertions on the <a>triple term</a> are made using the <a>reifier</a>.</p>

Copy link
Member Author

Choose a reason for hiding this comment

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

This could be the place to define a term such as "reified triple term" to describe the syntactic structure that optionally includes a "reifier" and a "triple term".

<p class="note">Using the <a>reifier</a> as an indirect way of referencing a <a>triple term</a>
allows multiple groups of assertions to be separated from each other,
which might be necessary if the same <a>triple term</a> was derived from different sources.
Assertions are always made using the <a>reifier</a>, which can be the <a>subject</a> or <a>object</a>
of different triples.
Concrete syntaxes, such as Turtle [[RDF12-TURTLE]],
may have shortcuts for capturing a <a>triple term</a> with its <a>reifier</a>.</p>

<p>The following diagram represents a statement and a reification of an unasserted <a>triple term</a>.</p>

<figure id="fig-triple-term">
<a href="triple-term.svg">
<!-- A version of this graphic can be found at https://docs.google.com/drawings/d/1RP9Nw5GCNjduWSXZj_EZ8FaAc7p_N-WVmzJ0syvum1k -->
<img src="triple-term.svg"
alt="An RDF graph containing a triple that references an unasserted triple term (with grey background) via a reifier"
style="width:70%"
aria-describedby="fig-quoted-triple-alt"/>
aria-describedby="fig-triple-term-alt"/>
</a>
<figcaption id="fig-quoted-triple-alt">
An RDF graph containing a triple that references an unasserted quoted triple (with grey background) as the subject.
<figcaption id="fig-triple-term-alt">
An <a>RDF graph</a> containing a <a>triple</a> that references an unasserted <a>triple term</a> (with grey background) via a <a>reifier</a>.
</figcaption>
</figure>

<p>A variation on the graph shown in <a href="#fig-quoted-triple"></a> can be described
where the <a>quoted triple</a> is also <a data-lt="asserted triple">asserted</a>.</p>
<p>A variation on the graph shown in <a href="#fig-triple-term"></a> can be described
where the <a>triple term</a> is also <a data-lt="asserted triple">asserted</a>.</p>

<figure id="fig-quoted-asserted-triple">
<a href="quoted-asserted-triple.svg">
<!-- Source for this file is at https://docs.google.com/drawings/d/1aoUEsb07P-nu5rvPRob7O07CRKgnf7tBw2CmRJNuaQ0 -->
<img src="quoted-asserted-triple.svg"
alt="An RDF graph containing two triples where one of them contains the other as the subject; hence, that other triple is both quoted and asserted"
<figure id="fig-asserted-triple-term">
<a href="asserted-triple-term.svg">
<!-- A version of this graphic can be found at https://docs.google.com/drawings/d/1gAHQj4wk87tmeHf4-wnxdgmjq3T05_ovrJq0V-1VXKw -->
<img src="asserted-triple-term.svg"
alt="An RDF graph containing a triple that references an triple term, which is also asserted, via a reifier"
style="width:70%"
aria-describedby="fig-quoted-asserted-triple-alt"/>
aria-describedby="fig-asserted-triple-term-alt"/>
</a>
<figcaption id="fig-quoted-asserted-triple-alt">
An RDF graph containing two triples where one of them contains the other as the subject;
hence, that other triple is both quoted and asserted.
<figcaption id="fig-asserted-triple-term-alt">
An <a>RDF graph</a> containing a <a>triple</a> that references an <a>triple term</a>, which is also asserted, via a <a>reifier</a>.
</figcaption>
</figure>

<p>Note that a <a>quoted triple</a> may also have a quoted triple as its subject or object.</p>

<p class="issue" data-number="34">
This issue considers the potential for additional terminology related to <a>quoted triples</a>.
</p>
<p>Note that a <a>triple term</a> may also have another <a>triple term</a> as an <a>object</a>.</p>
</section>

<section id="referents">
Expand Down Expand Up @@ -494,12 +496,12 @@ <h2>RDF Documents and Syntaxes</h2>
<p>This specification establishes two conformance levels:</p>

<ul>
<li><dfn class="no-export lint-ignore">Full</dfn> conformance
<li><dfn class="no-export lint-ignore">Full conformance</dfn>
supports <a data-lt="RDF graph">graphs</a> and <a data-lt="RDF dataset">datasets</a>
with <a>triples</a> that contain <a>triple terms</a>.
Concrete syntaxes in which such graphs and datasets can be expressed include
[[RDF12-N-TRIPLES]], [[RDF12-N-QUADS]], [[RDF12-TURTLE]], and [[RDF12-TRIG]].</li>
<li><dfn class="no-export lint-ignore">Classic</dfn> conformance
<li><dfn class="no-export lint-ignore">Classic conformance</dfn>
only supports <a data-lt="RDF graph">graphs</a> or <a data-lt="RDF dataset">datasets</a>
with <a>triples</a> that do not contain <a>triple terms</a>.</li>
</ul>
Expand Down Expand Up @@ -591,6 +593,13 @@ <h3>Triples</h3>
<a>object</a> component which is another <a>triple term</a>.
However, by this definition, cycles of <a>triple terms</a> cannot be created.</p>

<p class="note">Every <a>triple</a> with a <a>triple term</a> as its object SHOULD
use <code>http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies</code> (<code>rdf:reifies</code>)
as its <a>predicate</a>.
Every <a>triple</a> whose <a>object</a> is not a <a>triple term</a> SHOULD NOT
use <code>http://www.w3.org/1999/02/22-rdf-syntax-ns#reifies</code> (<code>rdf:reifies</code>)
as its <a>predicate</a>.</p>

<p><a>IRIs</a>, <a>literals</a>,
<a>blank nodes</a>, and <a>triple terms</a> are collectively known as
<span id="dfn-rdf-terms"><!-- obsolete term--></span><dfn data-lt="rdf term">RDF terms</dfn>.</p>
Expand Down Expand Up @@ -1351,7 +1360,8 @@ <h2>Generalized RDF Triples, Graphs, and Datasets</h2>

<p>A <dfn class="export">generalized RDF triple</dfn> is a triple having a subject,
a predicate, and an object, where each can be an <a>IRI</a>, a
<a>blank node</a> or a
<a>blank node</a>, a
<a>triple term</a>, or a
<a>literal</a>. A
<dfn class="export">generalized RDF graph</dfn>
is a set of generalized RDF triples. A
Expand Down Expand Up @@ -1813,16 +1823,10 @@ <h2>Changes between RDF 1.1 and RDF 1.2</h2>
<ul>
<li>Added <a href="#section-dataset-quad" class="sectionRef"></a>
for informative definition of a <a>quad</a>.</li>
<li>Added <a href="#section-quoted-triples" class="sectionRef"></a>
<s>and definitions for <a>quoted triple</a></s>
and <a>asserted triple</a>.

<div class="issue" data-number="81">
The notion of quoted triples is deprecated and will be removed again from this document. Currently, Section <a href="#section-quoted-triples" class="sectionRef"></a> still describes this notion. Once this section is changed to describe whatever new concept the WG settles on (currently, this may be <a>triple terms</a>---see the next bullet point), the previous bullet point can be removed and the addition of the then-rewritten section can be mentioned in the next bullet point.
</div>

<li>Added the notion of a <a>triple term</a> and extended the definition of
<a>RDF triple</a> to permit triple terms as objects.</li>
<li>Added <a href="#section-triple-terms" class="sectionRef"></a>
and definitions for <a>triple term</a> and <a>asserted triple</a>
and extended the definition of
<a>RDF triple</a> to permit triple terms as objects..
gkellogg marked this conversation as resolved.
Show resolved Hide resolved
<li>Added the <a>base direction</a> element as part of
a <a>literal</a>,
and a description of its use in <a href="#section-text-direction" class="sectionRef"></a>.</li>
Expand Down
Loading
Loading