[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [xri] Editorial change: "non-resolution" to "self-reference"
Loren, here's my best shot at the "why" for self-references. It comes via an excerpt from an email I was cc'd on from another TC member, Matthey Dovey, who was describing why someone might want to use an idenitifier that was explicitly self-referential: D) As a good net citizen, the user does not want to use an identifier that might be assumed by software to imply the existence of a corresponding resource in a default binding scheme - so that an attempt to retrieve that resource is likely but doomed to failure. In short, one good need for self-referential syntax is the same one we had in our original requirements doc, which is simply when the XRI author wants to tell resolvers no to try to resolve the self-reference because it exists only to identify something (i.e., for some application to test for equivalence with another identifier) and is not intended for resolution. Here's a second very simple but practical use case. Say you have a list of three XRIs, xri:@foo/bar, xri:@foo/baz, and xri:@foo/:03, stored in a directory that all describe the same resource stored someplace else in the network (i.e., all 3 XRIs are aliases or synonyms for the resource). Now say that you want to delete NOT the resource itself, but one of these three XRIs that point to the resource (say the second one). If your application said, "DELETE xri:@foo/baz", you would delete the resource. But if your application could say, "DELETE xri:(@foo/baz)", then it would be clear that you wanted to delete the *identifier* and not the resource. Does that help? =Drummond -----Original Message----- From: Loren West [mailto:firstname.lastname@example.org] Sent: Tuesday, September 30, 2003 11:39 PM To: email@example.com Subject: RE: [xri] Editorial change: "non-resolution" to "self-reference" Drummond, The cross-reference example (and value proposition) you gave is very clear. I also understand - from a theoretical point of view - that self references are for referencing the identifier, not the resource. Can you help me to understand when I'd want to use a self- reference? And from a machine point of view - can the parser know that it has a cross-reference vs. a self-reference, and would a parser or resolver do something different with one or the other? Apologies in advance if I'm slower than others at getting my head around self-references. I understand the "what", it's the "why" that I'm struggling with. Thank you, =Loren > -----Original Message----- > From: Drummond Reed [mailto:firstname.lastname@example.org] > Sent: Tuesday, September 30, 2003 6:19 PM > To: Loren West; email@example.com > Subject: RE: [xri] Editorial change: "non-resolution" to > "self-reference" > > > Ah, Loren, good test. Since cross-references and > self-references are two > of the six key features of XRIs (along with unlimited delegation, > persistence, global context symbols, and internationalization), here's > how I'd describe and compare them. > > A cross-reference is an identifier used in the context of another > identifier. The primary usage of cross references is to allow multiple > authorities (contexts) to share the same identifier for the > same logical > resources. For example, xri:=John/(+phone.number)/(+work) and > xri:=Mary/(+phone.number)/(+work) allow both John and Mary to refer to > the same logical resource (their respective work phone numbers) using > the same identifiers. > > A self-reference is an identifier used to refer to itself. The primary > usage of self-references is to allow humans and computers to > refer to an > identifier itself rather than the resource the identifier > would normally > identify. For example, xri:foo refers to the resource with > the relative > reassignable identifier "foo", while the xri:(.foo) refers to the > identifier "foo" itself and NOT the identified resource. > > You could say that every cross-reference is also a > self-reference to the > XRI contained in the cross-reference, and you'd be right (both > syntactically and logically), but I'm not sure what > additional cognitive > value that would buy ;-) > > =Drummond > > -----Original Message----- > From: Loren West [mailto:firstname.lastname@example.org] > Sent: Tuesday, September 30, 2003 4:30 PM > To: Drummond Reed; email@example.com > Subject: RE: [xri] Editorial change: "non-resolution" to > "self-reference" > > Drummond, > > Can you describe the differences between "self-reference" and > "cross-reference"? XRI syntax has these two things, the > syntactical and logical differences between them aren't > clear (at least to me). > > Thank you, > > =Loren > > > -----Original Message----- > > From: Drummond Reed [mailto:firstname.lastname@example.org] > > Sent: Tuesday, September 30, 2003 4:00 PM > > To: email@example.com > > Subject: [xri] Editorial change: "non-resolution" to > "self-reference" > > > > > > As we continue to prepare the final working draft (now > slated to be 09 > > after Gabe's posting of 08 today), I'd like to put to rest > a lingering > > terminology issue: the term "non-resolvable". We have found numerous > > times now that this term creates confusion because, as Gabe > says, what > > we really mean when we use it to describe an XRI is > > "not-to-be-resolved". > > > > In other words, "non-resolvable" DOESN'T mean the XRI CAN'T > > be resolved, > > it simply means in this context that the purpose of the XRI > is only to > > determine equivalence and thus it should not be dereferenced. > > > > Examples: > > > > xri:@foo > > xri:(@foo) > > > > The former is intended to be resolved to the resource identified by > > "@foo". The latter is a way of expressing that resolution is NOT > > intended, and that the XRI merely expresses "the identifier with the > > value '@foo'". > > > > We have never disagreed that this is useful, we just haven't known > > exactly what to call it. As we have written many times (and as David > > Booth illustrated in his white paper about the different > uses of URIs > > that we cited in the XRI Requirements doc), what we intend > by the term > > "non-resolution" is same thing accomplished in English language by > > putting a word in quotes, e.g., "the word "user-friendly" has become > > commonplace in computer literature". > > > > It finally hit me what this really is: a self-reference. > > Since the whole > > purpose of an identifier is to serve as a reference to a > resource, we > > need special syntax - in both human and computer languages - for the > > special case when we DON'T mean "the thing being identified", but > > instead mean "the identifier itself", i.e., a self-reference. > > > > I've already begun using this term in several documents > > describing this > > feature of XRIs and it works like a charm - simply substitute > > "self-reference" for "non-resolvability" and "self-referential" for > > "non-resolvable". It works especially well because cross-reference > > syntax is already a key feature of XRIs, and now we can list > > self-reference syntax alongside it. > > > > So the formal proposal is to make the terminology substitution above > > beginning with the 09 draft. Any objections, please post ASAP > > - silence > > will be deemed consensus. > > > > =Drummond > > > > > > To unsubscribe from this mailing list (and be removed from > > the roster of the OASIS TC), go to > > http://www.oasis-open.org/apps/org/workgroup/xri/members/leave > _workgroup.php. > > To unsubscribe from this mailing list (and be removed from the roster of the OASIS TC), go to http://www.oasis-open.org/apps/org/workgroup/xri/members/leave_workgroup .php.