-
Notifications
You must be signed in to change notification settings - Fork 38
Description
Originally posted by @TallTed in #525 (comment)
data-shapes/shacl12-node-expr/index.html
Lines 862 to 863 in 59d8c1a
# This is a path values expression that is expected to return zero or one values | |
shnex:pathValues ex:fullName ; |
[@TallTed] I think this may be the root of the difference between
pathValues
andpathValue
. "zero or one values" leads to the troublesomely indeterminate expansion of "zero values or one value".zero pathValues
reads better thanzero pathValue
, whileone pathValue
reads better thanone pathValues
. (no pathValue
andno pathValues
both read OK.)It's too bad parentheses are problematic in predicate identifiers, e.g.,
shnex:pathValue(s)
and "zero or one value(s)". I think these might be acceptable to all, and perhaps the problems are small enough to likewise accept.Similar discussion applies to
focus node
,focus nodes
, andfocus node(s)
.[@HolgerKnublauch] I am usually in favor of singular names for RDF properties, so (has) child over children. But here this is similar to sh:values which also produces multiple values as a list. I hope I can proceed here, as this has two approvals now and other branches are waiting for this change. If you still feel this issue is critical enough, feel free to open a new ticket.
This might be quickly closed, depending on the answer to my next question:
Do these "produce multiple values as a list" along the lines of —
ex:entity
sh:values "value1, value2, value3" .
— or (what I've been thinking) along the lines of —
ex:entity
sh:values "value1" ,
"value2" ,
"value3" .
I think no-one will argue with me whether both are lists.
In the latter case, I will continue to push strongly for the singular identifiers.
In the former case, I will work to accept the plural identifier though I still believe the singular identifier is better.
(This has arisen in other contexts, particularly schema:keywords
, which is indeterminately documented, and has led to some users having "keyword 1, keyword 2, keyword 3"
and other users having "keyword 1", "keyword 2", "keyword 3"
. Imagine the frustration that ensues downstream, when someone tries to merge these two graphs, and instead of having them collapse perfectly into 3 triples or 1 triple, depending on their own preconception, finds that they have four triples each with a unique values for the schema:keywords
predicate!)