[renaming this thread to something more
relevant]
Giovanni,
I agree with Markus – I can’t
make sense of having an XDI document as an XDI subject. I’m not sure my
point from my earlier message came across, but I was saying that when you use XDI
context syntax – the // syntax – it does _not_ assert that the previous XDI document
is the subject of an XDI statement. It says that the previous XDI statement _contains_ another XDI statement. For
example, in the following X3 Simple graph…
=drummond
+email
/
=drummond
+email+home
“dsr.example@gmail.com”
+email+work
“drummond.example@cordance.net”
…you can make the following “compound
XDI statement”:
=drummond/+email//=drummond/+email+home
This compound statement does not assert an
XDI document as a subject. It asserts the following:
1) =drummond is an XDI subject
2) +email is an XDI predicate of this
subject
3) The object is another XDI document
4) =drummond is an XDI subject in this
contained XDI document
5) +email+home is an XDI predicate of that
XDI subject
6) “dsr.example@gmail.com” is
the literal value of that XDI object
If you wanted to have an entire XDI
document as the subject of an XDI statement, I think the syntax you are looking
for is:
(xdi-subject/$context$xdi)/xdi-predicate/xdi-object
In this XDI statement:
1) (xdi-subject/$context$xdi) is a cross
reference that uniquely identifies an XDI document:
a)
xdi-subject is the XDI subject authoritative for a reference to the XDI
document
b)
$context$xdi is the context type
2) xdi-predicate is the XDI predicate whose
subject is the entire previous cross-reference
3) xdi-object is whatever the XDI object
is (literal, another XDI subject, or another XDI document)
****************
As for the issue of whether a literal can
be an XDI subject, my primary concern about that is how to treat it under XDI
addressing rules. In every XDI context, the XRIs must be unique. So there are
two directions we could take:
1) Allow literals to be XDI subjects, but
ignore them from an XDI addressing perspective (i.e., they would be “invisible”
from an addressing standpoint.)
2) Allow literals as XDI subjects in
syntax, but for addressing purposes, have a specified transformation into
relative XRI. For example:
[“Drummond Reed”[+email[““dsr.example@gmail.com”]]] <==X3
with literal as non-addressable subject
[%44rummond%20%52eed[+email[““dsr.example@gmail.com”]]] <==X3
with literal as addressable XRI subject
Thoughts?
=Drummond
From:
markus.sabadello@gmail.com [mailto:markus.sabadello@gmail.com] On Behalf Of Markus Sabadello
Sent: Monday, March 17, 2008 9:10
AM
To: Giovanni Bartolomeo
Cc: Drummond Reed;
barnhill_william@bah.com; xdi@lists.oasis-open.org
Subject: Re: [xdi] Groups - XDI
RDF v8 Comments-Barnhill (pdf) (XDI RDF v8 Comments-Barnhill.pdf) uploaded
From the standpoint of having already implemented this, the proposal of
allowing a subject to be an XDI document (aka subcontext aka inner graph) is a
nightmare..
I can think of at least the following immediate problems:
- Some of the serialization formats may not be able to express this.
- We always said that subjects in a graph must be unique. Can this still be
enforced with inner graphs as subjects?
- What will XDI messages look like that make changes to these subjects?
I don't feel too secure about allowing literals as subjects either, but I can't
really argue why at this point..
But I'm just thinking loud.. Of course all this is not necessarily a reason not
to do it :)
Markus
On Sat, Mar 15, 2008 at 1:39 PM, Giovanni Bartolomeo <giovanni.bartolomeo@uniroma2.it>
wrote:
At 20.52 13/03/2008, Drummond Reed wrote:
Giovanni,
It's a subtle point, but when you use subcontext syntax (//), the parent XDI
document is not the subject of the child XDI document. It is the container
("context") for the child. Thus I don't think the ABNF should change.
Ok, I see; so if my understanding is correct, we have both the
possibility to have a whole XDI document as an RDF object as well as a
"contained" object ("subcontext"). Thus, the original
question: in these ABNF excerpts, how could we specify that a subject can be an
XDI document? E.g.
X3
= *( "[" sub *( "[" pred *( "[" obj "]"
) "]" ) "]" )
sub = [ comment ] xri-reference [ comment ]
sub = [ comment ] (xri-reference / X3) [ comment ]
pred = [ comment ] xri [ comment ]
obj = [ comment ] ( xri-reference / literal / X3 ) [ comment ]
literal = """ *char """
comment = "<--" *c-char "-->"
RE the question of whether to allow a
literal as an XDI subject, yes, I have thought about, for reasons which I'll
explain on today's call (if we have time).
I would allow this; especially if we'll standardize inverse predicates,
we should allow a subject to be a literal, as well as a XDI document or a xri-reference.
RE whether a predicate should be able to be an XDI document, my immediate
answer is no – RDF predicates are strictly URIs; XDI predicates should be
strictly XRIs.
Yes, I agree with this. To summarize, I would be in favour of having
the same definition for subjects and objects:
sub
= [ comment ] (xri-reference / literal / X3) [ comment ]
pred = [ comment ] xri [
comment ]
obj = [ comment ] ( xri-reference / literal / X3 ) [ comment ]
what do you think?
Thanks,
Giovanni
Talk to you shortly,
=Drummond
From: Giovanni
Bartolomeo [
mailto:giovanni.bartolomeo@uniroma2.it]
Sent: Thursday, March 13, 2008
3:11 AM
To: Drummond Reed; 'Markus
Sabadello'
Cc: barnhill_william@bah.com;
xdi@lists.oasis-open.org
Subject: RE: [xdi] Groups - XDI
RDF v8 Comments-Barnhill (pdf) (XDI RDF v8 Comments-Barnhill.pdf) uploaded
Hello Drummond,
Thanks for this clarification; however, if my understanding is correct, this
means that an XDI document can also be subject of another XDI document, other
than object.
Doesn't this implies that we should update ABNF syntax making the definition of
subject somehow similar to the one for object?
X3 = *(
"[" sub *( "[" pred *( "[" obj "]" )
"]" ) "]" )
sub = [ comment ] xri-reference [ comment ]
sub = [ comment ] (xri-reference / X3) [ comment ]
pred = [ comment ] xri [ comment ]
obj = [ comment ] ( xri-reference / literal / X3 ) [ comment ]
literal = """ *char """
comment = "<--" *c-char "-->"
Further questions are:
should allow literals as a
subject?
should be predicate definition
similar to subject and object one update, e.g. may a predicate contain an XDI
document?
however I'm not quite convinced with these last two ideas... comments welcome!
Giovanni
At 22.38 12/03/2008, Drummond Reed wrote:
Just to be
clear, the "n-segment" syntax was deprecated in the V9 XDI RDF Model
document ( http://wiki.oasis-open.org/xdi/XdiRdfModel)
due to the problems identified in this thread. To be precise, it was unclear
whether
s1
p1
o1
p2
o2
meant that s1/p1/o1 was the subject of p2/o2 or not. It was also unclear how
cross-reference syntax would be applied.
We solved both problems by eliminating "n-segment" syntax in the V9
document. Now it should be unambiguous that if you want to express that
s1/p1/o1 is the subject of p2/o2, you say:
(s1/p1/o1)/p2/o2
What did remain is the // syntax for subcontexts, which allows you to solve the
RDF "blank node problem" by providing an address for a blank node.
That address is simply // (which fits very nicely from a conceptual standpoint
since the identifier for that segment is "blank").
So if I want to say that the object of s1/p1 is a blank node, I can write it as
s1/p1// . This creates a new XDI context in which I can express another set of
XDI statements whose XRIs are unique in this context.
We'll go over the practical uses for this on the call tomorrow – agenda
coming out shortly.
=Drummond
From: markus.sabadello@gmail.com
[ mailto:markus.sabadello@gmail.com]
On Behalf Of Markus Sabadello
Sent: Wednesday, March 12, 2008
10:44 AM
To: Giovanni Bartolomeo
Cc: barnhill_william@bah.com;
xdi@lists.oasis-open.org
Subject: Re: [xdi] Groups - XDI
RDF v8 Comments-Barnhill (pdf) (XDI RDF v8 Comments-Barnhill.pdf) uploaded
To be honest, I don't really understand the N-Segment syntax anyway.
Why is
s1
p1
o1
p2
o2
better than
s1
p1
o1
o1
p2
o2
?
Markus
On Tue, Mar 11, 2008 at 4:29 PM, Giovanni Bartolomeo <
giovanni.bartolomeo@uniroma2.it> wrote:
Dear Bill, All,
reading your comments about XDI RDF v8 ( http://www.oasis-open.org/committees/download.php/27112/XDI%20RDF%20v8%20Comments-Barnhill.pdf
) I've found this sentence:
One problem with the
3-Segment syntax is that the N-Segment syntax uses cross-references for
reification. This means 3-Segment syntax has to have a different notation for a
subject which is the
statement itself rather than the object of the statement. The 3-Segment
notation for this is a crossreference
within a cross-reference: (()). So a subject of (s/p/o) asserts s/p/o and
starts a new statement
whose subject is o, while a subject of ((s/p/o)) asserts s/p/o and starts a new
statement whose subject is
the statement s/p/o. For example to say that =Drummond is author of the
statement =Bill.Barnhill is a
contributor to the resource represented by @example we would use the XRI:
((@example/+dc+contributor/=Bill.Barnhill))/+dc+author/=Drummond.
Well, I'm wondering how N3 syntax (and consequently X3 simple)
addresses this problem:
If my understanding is correct, the N3 syntaxt
<s1> <p1>
<o1>
<o1> <p2> <o2>
is equivalent to X3 simple
s1
p1
o1
p2
o2
what if I want to express that the whole statement <s1>
<p1> <o1> is the subject of <p2> <o2>? How this can be
represented with X3 Simple?
Breaking into a new subcontext doesn't seem to help, as this explicitly
introduce a new subject!
s1
p1
/
s2
p2
o2
Whereas I just want that the whole statement (s1/p1/o1) is the subject of p2!
What do you think? Am I missing something?
Thanks,
Giovanni
At 11.06 07/02/2008, barnhill_william@bah.com
wrote:
The document named XDI RDF v8 Comments-Barnhill (pdf) (XDI RDF v8
Comments-Barnhill.pdf) has been submitted by Mr. William Barnhill to the OASIS
XRI Data Interchange (XDI) TC document repository. Document Description: View
Document Details: http://www.oasis-open.org/apps/org/workgroup/xdi/document.php?document_id=27112
Download Document: http://www.oasis-open.org/apps/org/workgroup/xdi/download.php/27112/XDI%20RDF%20v8%20Comments-Barnhill.pdf
PLEASE NOTE: If the above links do not work for you, your email
application may be breaking the link into two pieces. You may be able to
copy and paste the entire link address into the address field of your web
browser. -OASIS Open Administration No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.516 / Virus Database: 269.19.19/1256 - Release Date: 02/02/2008
13.50