OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xri-editors message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [xri-editors] feedback on k - Self References


Gabe, I suspect this topic, being as abstract as it is, may be tough to
deal with in email. We might need a special call and/or whiteboard or IM
session to drill through examples. I'm getting together in person with
Dave M on Thursday at least an hour before the 3pm Editor's call - maybe
then?
 
My short form answer to what I *think* you are asking is this:
 
A cross-reference is a delegated identifier (absolute or relative) used
in the context of another identifier (its parent context). There are two
exceptions:
 
1) When the cross-reference is the top-level authority segment, e.g.,
xri:(urn:abc:123/456):2:3:45.
 
2) When the cross-reference is the ENTIRE XRI, e.g.,
xri:(urn:abc:123/456)
 
In case #1, the cross-reference is serving as a reference to some other
globally unique ID defined in some other identifier scheme, and either
this identifier is recognized by the resolver's XRI community or it will
produce an error. Still, it is a "global cross-reference" because it is
a cross-reference resolved in a global scale.
 
Case #2 is simply case #1 with no additional delegation below the global
cross-reference. This form of a cross-reference is thus a self-reference
because it doesn't refer to any other resource representation - it IS
the resource representation.
 
As for the relative cross-reference syntax, the example I gave of
xri:=(.John.Doe) is not a self-reference. It's a cross-reference under
the "=" space. A self-reference would be xri:(=(.John.Doe)).
 
Does that answer your question?
 
=Drummond 
 
 
 
-----Original Message-----
From: Wachob, Gabe [mailto:gwachob@visa.com]
Sent: Tuesday, November 04, 2003 1:40 PM
To: 'xri-editors@lists.oasis-open.org'
Subject: [xri-editors] feedback on k - Self References
 
Drummond-
 
    I'm going to give you more feedback on the k version today, but I
wanted to get this started off because I'm not going to be able to get
to it until much later today. This email is on "Self References". 
 
    This terminology and concept is still unclear to me. You say in
section 1.1.1 that self references are equivalent to expressing the
intent that an identifier is not to be resolved. And then you give
examples (like the concept of love, the planet jupiter, etc). 
 
    I don't understand how the term "self reference" is related to this
concept of not-to-be-resolved-ness. The modal case is a cross reference.
The corner condition is the "top level cross reference" where the
parentheses are "outside" the xri (btw, is this in the BNF? I don't
remember seeing it.) -- the so-called xri(..) form. It seems the term
"self reference" has marginal correlation to the "top level cross
reference" situation and no relationship to the modal cross reference
use. 
 
    In section 2.1.1.5, you talk about a use of XRIs where you want to
talk about the identifier rather than the thing the identifiers "points
to". Most identifiers schemes I know of don't attempt to do this through
syntax, but rather through context, if at all. (ie the XML BASE spec
says how relative URIs are interpreted based on the context in which
they appear). 
 
    We've created a special syntax for this desire to refer to the
identifier rather than the thing the identifier points to (this could
lead to some interesting uses where you encode data in an xri:(..) form,
but thats another topic). I don't see how this interpretation (referring
to the identifier rather than the identified resource) extends to any
other situation other than the special top-level cross reference (ie
xri:(..) form) we've defined. 
 
    Furthermore, I wanted to continue talking about the (.foo.bar) form
that loses me. In other email, we've discussed how to put a human name
under a gcs namespace. Ie =JohnDoe, =John.Doe, =(.John.Doe), etc. The
last example was given as a solution which appears to use the
"self-reference" form. I don't understand this use at all. Can it be
explained in terms of self-rerferences, or are we overloading the ()
construct? 
 
    -Gabe


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]