terms of this abstract syntax. Concrete RDF syntax is introduced
later in .
-
In the next three subsections we discuss the three types of RDF data
- that occur in triples: IRIs, literals and blank nodes.
+
In the next four subsections we discuss the four types of RDF data
+ that occur in triples: IRIs, literals, blank nodes and triple terms.
@@ -351,6 +351,61 @@
Blank nodes
+
+
Triple terms
+
+
A triple is a simple abstraction for stating a directed, binary
+ relationship between two resources. It is the basic unit of description in
+ RDF. Sometimes we need to describe more detailed circumstances underlying
+ such relationships. While you can describe these using more sophisticated
+ modelling, there is a tension between simple, direct statements and more
+ complex, granular descriptions.
+
+
RDF defines triple terms for this
+ purpose. They make it possible to describe more concrete circumstances,
+ such as events, relationship entities or tokens in data sources, in
+ relation to simple statements. This allows us to keep the simple
+ relationships, rather than remodel them into more complex structures.
Formally, a reifying triple is expressed as a specific relationship from
+ a resource, known as a reifier, and a triple
+ term. A triple term is a fixed object which identify a statement
+ through its constituent subject, predicate and object.
+
+
Reifiers are subjects of triples relating to triple terms using the
+ rdf:reifies predicate. Triple terms should only appear in the
+ object position of such reifying triples.
+
+
Note that triple terms only reference statements. That means
+ that we can describe statements without implying them. This can be useful
+ to describe suggestions or disputed claims. We can also annotate statements
+ with multiple reifiers, to describe various circumstances or sources
+ pertaining to different times, etc.
For more details about the syntax of Turtle please consult the Turtle specification [[RDF12-TURTLE]].
+
+
Representations of reifying triples
+
+
Turtle provides concise notation for reifying and annotating
+ triples. This allows us to encode the example in the section about triple terms, where the simple fact
+ that Bob is interested in the Mona Lisa was annotated with a more
+ specific circumstance.
+
+
We can use an unnamed annotation to state when the interest itself
+ began:
+
+
+
+
We can also describe that Alice has once made the simple claim. Here
+ we use syntax for a reifying triple, which references it without
+ implying its truth:
+
+
+
+
The previous two descriptions can also be combined, as two
+ annotations on one statement. Here we also identify the reifiers with
+ IRIs:
+
+
+
From c444e0d8474b2c9306c7274d9fd6dd8f67dc4c4a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niklas=20Lindstr=C3=B6m?=
Date: Sun, 8 Dec 2024 00:04:53 +0100
Subject: [PATCH 03/16] Move "more details about Turtle" to end of section
---
spec/index.html | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/spec/index.html b/spec/index.html
index 64e8b72..0c93e18 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -822,8 +822,6 @@
Representation of blank nodes
the square brackets are interpreted as triples with the blank node as
subject. Lines starting with '#' represent
comments.
-
-
For more details about the syntax of Turtle please consult the Turtle specification [[RDF12-TURTLE]].
@@ -858,6 +856,8 @@
Representations of reifying triples
data-include-format="text">
+
+
For more details about the syntax of Turtle please consult the Turtle specification [[RDF12-TURTLE]].
A triple is a simple abstraction for stating a directed, binary
- relationship between two resources. It is the basic unit of description in
- RDF. Sometimes we need to describe more detailed circumstances underlying
- such relationships. While you can describe these using more sophisticated
+
As the basic unit of description in RDF, the triple is a simple
+ abstraction for stating a directed relationship between two resources.
+ Sometimes we need to describe more detailed circumstances underlying such
+ relationships. While we can describe these using more sophisticated
modelling, there is a tension between simple, direct statements and more
- complex, granular descriptions.
-
-
RDF defines triple terms for this
- purpose. They make it possible to describe more concrete circumstances,
- such as events, relationship entities or tokens in data sources, in
- relation to simple statements. This allows us to keep the simple
- relationships, rather than remodel them into more complex structures.
-
-
Conceptually, we can annotate a simple statement:
+ complex, granular descriptions. This may require a trade-off between
+ directness and completeness.
+
+
To bridge this difference, we can use triple terms as
+ references to simple statements. A triple term is a fixed object
+ that identifies a statement through its constituent subject, predicate and
+ object.
+
+
This enable us to describe more concrete circumstances, such as events,
+ relationship entities or tokens in data sources, in relation to
+ the simple statements. That allows us to keep them as is, rather than
+ requiring a complete remodelling into more detailed structures, for the
+ sake of occasionally adding details.
+
+
Conceptually, we can annotate a simple statement with a
+ reference to something more detailed:
This annotation refers to the interest itself, as a concrete
- circumstance. We can thus describe it concretely:
+
This annotation refers to Bob's interest as a concrete circumstance, with
+ a date of origin:
<Bob's interest> <is an> <Interest> .
<Bob's interest> <since> <4th of October 1998> .
-
An annotation is formed by the statement itself and a
- reifying triple.
+
Formally, an annotation is formed by two triples: the statement itself
+ and a reifying
+ triple. This expresses the simple relationship and the reifying relation to that from the circumstance, as a concretization thereof:
Formally, a reifying triple is expressed as a specific relationship from
- a resource, known as a reifier, and a triple
- term. A triple term is a fixed object which identify a statement
- through its constituent subject, predicate and object.
-
-
Reifiers are subjects of triples relating to triple terms using the
- rdf:reifies predicate. Triple terms should only appear in the
- object position of such reifying triples.
-
-
Note that triple terms only reference statements. That means
- that we can describe statements without implying them. This can be useful
- to describe suggestions or disputed claims. We can also annotate statements
- with multiple reifiers, to describe various circumstances or sources
- pertaining to different times, etc.
+
Reifiers are subjects of
+ triples relating to triple terms using the rdf:reifies
+ predicate. Triple terms should only appear in the object
+ position of such reifying triples.
+
+
Note that triple terms only reference statements. This means
+ that we can describe statements without implying them. This is useful for
+ describing unknown propositions such as suggestions or disputed claims. We
+ can also annotate statements with multiple reifiers, to describe different
+ circumstances varying on time, location, etc.
From fad20b78705e4188e834b5d661e950c42db62a10 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niklas=20Lindstr=C3=B6m?=
Date: Sun, 8 Dec 2024 17:57:24 +0100
Subject: [PATCH 05/16] Update participants and editors
---
spec/common/participants.html | 2 +-
spec/index.html | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/spec/common/participants.html b/spec/common/participants.html
index fe5a8a6..d8a0ac4 100644
--- a/spec/common/participants.html
+++ b/spec/common/participants.html
@@ -1 +1 @@
-Members of the RDF-star Working Group Group included Achille Zappa, Adrian Gschwend, Andy Seaborne, Antoine Zimmermann, Dan Brickley, David Chaves-Fraga, Dominik Tomaszuk, Dörthe Arndt, Enrico Franconi, Fabien Gandon, Gregg Kellogg, Gregory Williams, Jesse Wright, Jose Emilio Labra Gayo, Julián Arenas-Guerrero, Olaf Hartig, Ora Lassila, Pasquale Lisena, Peter Patel-Schneider, Pierre-Antoine Champin, Raphaël Troncy, Ruben Taelman, Rémi Ceres, Souripriya Das, Stuart Sutton, Ted Thibodeau, Thomas Pellissier Tanon, Timothée Haudebourg, and Vladimir Alexiev.
+Members of the RDF-star Working Group Group included Achille Zappa, Adrian Gschwend, Alan Snyder, Amin Anjomshoaa, Andy Seaborne, Antoine Zimmermann, Dan Brickley, Dave Raggett, Dominik Tomaszuk, Dörthe Arndt, Enrico Franconi, Erich Bremer, Fabien Gandon, Felix Sasaki, Gregg Kellogg, Gregory Williams, Jean-Yves Rossi, Jose Emilio Labra Gayo, Julián Arenas-Guerrero, Kurt Cagle, Niklas Lindström, Olaf Hartig, Ora Lassila, Pasquale Lisena, Peter Patel-Schneider, Pierre-Antoine Champin, Raphaël Troncy, Richard Lea, Ruben Taelman, Rémi Ceres, Souripriya Das, Ted Thibodeau Jr, Thomas Lörtsch, Thomas Pellissier Tanon, Timothée Haudebourg, and Vladimir Alexiev.
diff --git a/spec/index.html b/spec/index.html
index b1cb05d..2d6c7e5 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -21,6 +21,7 @@
editors: [
{ name: "Pierre-Antoine Champin", w3cid: "42931"},
+ { name: "Niklas Lindström" },
],
formerEditors: [
From b54250e8bd6679f03107fb18bdfd64e900ee0a6f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niklas=20Lindstr=C3=B6m?=
Date: Sun, 8 Dec 2024 20:00:19 +0100
Subject: [PATCH 06/16] Incorporate suggested editorial improvements
---
spec/index.html | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/spec/index.html b/spec/index.html
index 2d6c7e5..e2a8f42 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -357,8 +357,8 @@
Triple terms
As the basic unit of description in RDF, the triple is a simple
abstraction for stating a directed relationship between two resources.
- Sometimes we need to describe more detailed circumstances underlying such
- relationships. While we can describe these using more sophisticated
+ Sometimes, we need to describe more detailed circumstances underlying such
+ relationships. While we could describe these using more sophisticated
modelling, there is a tension between simple, direct statements and more
complex, granular descriptions. This may require a trade-off between
directness and completeness.
@@ -367,9 +367,9 @@
Triple terms
data-cite="RDF12-CONCEPTS#dfn-triple-term">triple terms as
references to simple statements. A triple term is a fixed object
that identifies a statement through its constituent subject, predicate and
- object.
+ object components.
-
This enable us to describe more concrete circumstances, such as events,
+
This enables us to describe more concrete circumstances, such as events,
relationship entities or tokens in data sources, in relation to
the simple statements. That allows us to keep them as is, rather than
requiring a complete remodelling into more detailed structures, for the
@@ -403,9 +403,9 @@
Triple terms
Note that triple terms only reference statements. This means
that we can describe statements without implying them. This is useful for
- describing unknown propositions such as suggestions or disputed claims. We
+ describing unknown propositions, such as suggestions or disputed claims. We
can also annotate statements with multiple reifiers, to describe different
- circumstances varying on time, location, etc.
To bridge this difference, we can use triple terms as
- references to simple statements. A triple term is a fixed object
- that identifies a statement through its constituent subject, predicate and
- object components.
-
-
This enables us to describe more concrete circumstances, such as events,
- relationship entities or tokens in data sources, in relation to
- the simple statements. That allows us to keep them as is, rather than
- requiring a complete remodelling into more detailed structures, for the
- sake of occasionally adding details.
-
-
Conceptually, we can annotate a simple statement with a
- reference to something more detailed:
As the basic unit of description in RDF, the triple states a simple,
+ directed relationship between two resources. Sometimes, we need to describe
+ more detailed circumstances underlying such relationships. Conceptually, we
+ can annotate a statement with something more detailed:
-
This annotation refers to Bob's interest as a concrete circumstance, with
- a date of origin:
-
- <Bob's interest> <is an> <Interest> .
- <Bob's interest> <since> <4th of October 1998> .
-
+
+
+
+ Informal triple annotation example: a concretization of a
+ statement described with its own characteristics.
+
-
Formally, an annotation is formed by two triples: the statement itself
- and a reifying
- triple. This expresses the simple relationship and the reifying relation to that from the circumstance, as a concretization thereof:
+
In conjunction to the arc expressing the relationship, the dashed circle
+ in the figure expresses a reifier. This is Bob's interest,
+ with a type and a date of origin, as a concrete circumstance of the fact
+ that Bob is interested in the Mona Lisa.
+
+
Formally, this annotation is composed of four triples:
Reifiers are subjects of
- triples relating to triple terms using the rdf:reifies
- predicate. Triple terms should only appear in the object
- position of such reifying triples.
-
-
Note that triple terms only reference statements. This means
- that we can describe statements without implying them. This is useful for
- describing unknown propositions, such as suggestions or disputed claims. We
- can also annotate statements with multiple reifiers, to describe different
- circumstances varying in time, location, etc.
+
The second triple is called a reifying triple, and
+ expresses a concretization of the proposition stated by the first triple.
+ The object of a reifying triple is a triple term. It denotes the
+ proposition itself, as a logical, abstract object identified through its
+ constituent subject, predicate and object components.
+
+
Triple terms may only appear in the object position,
+ and should be used with the special reifies predicate of reifying
+ triples.
+
+
+
@@ -476,13 +480,13 @@
Multiple graphs
in the intended way. Possible semantics of datasets are described in a separate note
[[RDF11-DATASETS]].
-
+ Informal graph of the sample dataset
-
Fig. 4 depicts the sample dataset.
provides an example
of concrete syntax for this dataset.
@@ -714,7 +718,7 @@
N-Triples
The figure below shows the triples resulting from the example:
-
+ RDF graph resulting from the N-Triples example
@@ -738,7 +742,7 @@
Turtle
support for namespace prefixes, lists and shorthands for datatyped
literals. Turtle provides a trade-off between ease of
writing, ease of parsing and readability. The graph shown in
- Fig. 4 can be
+ Fig. 5 can be
represented in Turtle as follows:
@@ -927,7 +931,7 @@
TriG
The figure below shows the triples resulting from this example.
-
+ Triples resulting from the TriG example
@@ -955,7 +959,7 @@
N-Quads
The nine lines in the N-Quads example correspond to the nine
- arcs in Fig. 5. Lines 1-7 represent quads, where the first
+ arcs in Fig. 6. Lines 1-7 represent quads, where the first
element constitutes the graph IRI. The part of the quad after the
graph IRI specifies the
subject, predicate and object of the statement, following the syntactic
@@ -983,7 +987,7 @@
terms of this abstract syntax. Concrete RDF syntax is introduced
later in .
-
In the next four subsections we discuss the four types of RDF data
- that occur in triples: IRIs, literals, blank nodes and triple terms.
+
In the next four subsections, we discuss the four types of RDF data
+ that occur in triples: IRIs, literals, blank nodes, and triple terms.
@@ -355,7 +355,7 @@
Blank nodes
Triple terms
-
As the basic unit of description in RDF, the triple states a simple,
+
As the basic unit of description in RDF, a triple states a simple,
directed relationship between two resources. Sometimes, we need to describe
more detailed circumstances underlying such relationships. Conceptually, we
can annotate a statement with something more detailed:
@@ -367,7 +367,7 @@
Triple terms
statement described with its own characteristics.
-
In conjunction to the arc expressing the relationship, the dashed circle
+
In conjunction with the arc expressing the relationship, the dashed circle
in the figure expresses a reifier. This is Bob's interest,
with a type and a date of origin, as a concrete circumstance of the fact
@@ -387,7 +387,7 @@
Triple terms
The object of a reifying triple is a triple term. It denotes the
proposition itself, as a logical, abstract object identified through its
- constituent subject, predicate and object components.
+ constituent subject, predicate, and object components.
Triple terms may only appear in the object position,
and should be used with the special reifies predicate of reifying
From b714385931abd798e959cef94811940733b72a16 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niklas=20Lindstr=C3=B6m?=
Date: Wed, 18 Dec 2024 17:50:24 +0100
Subject: [PATCH 10/16] Rephrase triple term note intro and add links
Co-authored-by: Ted Thibodeau Jr
---
spec/index.html | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/spec/index.html b/spec/index.html
index 265f88b..ac77e0b 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -394,10 +394,14 @@
Triple terms
triples.
- "Mona Lisa"The Mona Lisa
-
-
+
+
-
+ style="stroke:var(--purple);stroke-width:3;fill:none;stroke-dasharray:8.0,0.0;stroke-dashoffset:0"/>
+ is an
-
+ Interest
-
+ since
-
+ 4th of October 1998
From 947296c03e8d913f43cb4bff8a1934b5e7c3096c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niklas=20Lindstr=C3=B6m?=
Date: Fri, 10 Jan 2025 15:35:48 +0100
Subject: [PATCH 13/16] Update text to reflect change in figure
---
spec/index.html | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/spec/index.html b/spec/index.html
index 4b061d2..52f207d 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -367,8 +367,8 @@
Triple terms
statement described with its own characteristics.
-
Turtle provides concise notation for reifying and annotating
+
Turtle provides a concise notation for reifying and annotating
triples. This allows us to encode the example in the section about triple terms, where the simple fact
that Bob is interested in the Mona Lisa was annotated with a more
From 3e07f935a5c91bc860783c5b15ea90d6bd52230f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niklas=20Lindstr=C3=B6m?=
Date: Thu, 23 Jan 2025 23:38:39 +0100
Subject: [PATCH 15/16] Update spec/index.html
Co-authored-by: Ted Thibodeau Jr
---
spec/index.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/spec/index.html b/spec/index.html
index dfa1255..4915b59 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -852,7 +852,7 @@
Representations of reifying triples
We can also describe that Alice has once made the simple claim. Here
- we use syntax for a reifying triple, which references it without
+ we use the syntax of a reifying triple, which references it without
implying its truth: