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

Reorders definitions in RDF-concepts, and add definitions for 'ground' and 'atomic' #173

Merged
merged 4 commits into from
Mar 24, 2025
Merged
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
37 changes: 24 additions & 13 deletions spec/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -591,6 +591,11 @@ <h3>Triples</h3>

<p>The three components (|s|, |p|, |o|) of an [=RDF triple=] are respectively called the <dfn class=export >subject</dfn>, <dfn class=export >predicate</dfn> and <dfn class=export >object</dfn> of the triple.</p>

<p>The set of <span id="dfn-nodes"><!-- obsolete term--></span><dfn data-lt="node">nodes</dfn> of an <a>RDF graph</a>
is the set of <a>subjects</a> and <a>objects</a> of the <a>asserted triples</a> of the graph.
It is possible for a [=predicate=] [=IRI=] to also occur as a [=node=] in
the same graph.</p>

<p><dfn>Triple equality</dfn>:
Two triples (|s|, |p|, |o|) and (<var>s'</var>, <var>p'</var>, <var>o'</var>)
are equal (the same [=RDF triple=]) if and only if all of the following three conditions hold.</p>
Expand All @@ -615,6 +620,10 @@ <h3>RDF Terms</h3>
<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>

<p>
[=IRIs=], [=literals=] and [=blank nodes=] are said to be <dfn data-lt-no-plural>atomic</dfn> [=RDF terms=].
Copy link
Contributor

Choose a reason for hiding this comment

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

Wrt. "atomic", see discussion in #172. (I'm all for the rest of this PR.)

</p>

<p><dfn>RDF term equality</dfn>:
Two [=RDF terms=] |t| and <var>t'</var> are equal (the same [=RDF term=]) if and only if
one of the following four conditions holds:</p>
Expand All @@ -633,10 +642,21 @@ <h3>RDF Terms</h3>
For example, the IRI `http://example.org/` is not equal to a literal whose [=lexical form=] is `http://example.org/`.
</aside>

<p>The set of <span id="dfn-nodes"><!-- obsolete term--></span><dfn data-lt="node">nodes</dfn> of an <a>RDF graph</a>
is the set of <a>subjects</a> and <a>objects</a> of the <a>asserted triples</a> of the graph.
It is possible for a [=predicate=] [=IRI=] to also occur as a [=node=] in
the same graph.</p>
<p>The set of [=RDF terms=] <dfn class=export data-lt="appear">appearing</dfn> in an [=RDF triple=] |t| is defined inductively as follows:</p>

<ul>
<li>The [=subject=], [=predicate=] and [=object=] of |t| [=appear=] in |t|.
<li>If the [=object=] of |t| is an [=RDF triple=] |t2|, then any [=RDF term=] [=appearing=] in |t2| also [=appears=] in |t|.
</ul>

<p>By extension, an [=RDF term=] is said to [=appear=] in an [=RDF graph=] if it appears in an [=asserted triple=] of that graph. An [=RDF triple=] is said to [=appear=] in an [=RDF graph=] if it is either an [=asserted triple=] of that graph or a [=triple term=] [=appearing=] in that graph.</p>

<p>
An [=RDF term=] is said to be <dfn>ground</dfn> if it is an [=IRI=], a [=literal=], or a [=triple term=] in which only [=ground=] terms [=appear=].
By extension, an [=RDF triple=] is said to be [=ground=] if its [=subject=], [=predicate=] and [=object=] are all ground.
An [=RDF graph=] is said to be [=ground=] if all its [=asserted=] triples are [=ground=].
</p>

</section>

<section id="section-IRIs">
Expand Down Expand Up @@ -935,15 +955,6 @@ <h3>Triple Terms</h3>
In a given [=RDF graph=], a [=triple=] can appear as a [=triple term=], an [=asserted triple=], or both.
</p>

<p>The set of [=RDF terms=] <dfn class=export data-lt="appear">appearing</dfn> in an [=RDF triple=] |t| is defined inductively as follows:</p>

<ul>
<li>The [=subject=], [=predicate=] and [=object=] of |t| [=appear=] in |t|.
<li>If a [=triple term=] |t2| appears in |t|, then any [=RDF term=] [=appearing=] in |t2| also [=appears=] in |t|.
</ul>

<p>By extension, an [=RDF term=] is said to [=appear=] in an [=RDF graph=] if it appears in an [=asserted triple=] of that graph. An [=RDF triple=] is said to [=appear=] in an [=RDF graph=] if it is either an [=asserted triple=] of that graph or a [=triple term=] [=appearing=] in that graph.</p>

<p>Triple term equality:
Since triple terms are [=triples=], equality of triple terms is the same as [=triple equality=].</p>

Expand Down
Loading