[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [xri] Questions regarding XRI Resoution as client of 2.1 abstract syntax
Steve, good questions, especially about the persistent of global-xrefs. See [=Drummond] inline. -----Original Message----- From: Steven Churchill [mailto:steven.churchill@xdi.org] Sent: Sunday, April 22, 2007 8:59 PM To: xri@lists.oasis-open.org Subject: [xri] Questions regarding XRI Resoution as client of 2.1 abstract syntax Drummond, I have some questions regarding the proposed 2.1 abstract syntax and XRI Resolution as client. For the benefit of those on the list who haven't been steeped in XRI Resolution, let me give some context. [Drummond, my questions are below.] The resolver invokes the XRI parser which returns a syntax tree conforming to the abstract syntax. During the "authority resolution" phase, the resolver walks through the top-level subsegments of this tree passing the name of the "next" subsegment to the authority resolution service of the "previous" subsegment, until it gets to then end. In the 2.0 abstract syntax, the subsegments had two types--persistent and reassignable. The notion of persistence is simply a convention for authority resolution services (their registries) as follows: If I pay my registry for a "bang" (persistent) identifier, then my registry should not reassign that identifier to someone else, even if I stop paying my bill. In the proposed 2.1 abstract syntax, the subsegments have seven types. Here are my questions for Drummond: 1. Does the resolver still walk through the top-level subsegments (that is, passing the name of the "next" subsegment to the authority resolution service of the "previous" subsegment) as described above? [I would assume the answer is yes.] [=Drummond] Yes -- but note that global-xrefs are a type of subsegment per your question 3 below. 2. Can authority resolution services now accept 7 types of query? [I would assume the answer is yes.] [=Drummond] Yes. 3. Does the resolver algorithm distinguish between "global" and "local" subsegments. [I would assume the answer is no. The resolver simply walks down the list of top-level subsegment invoking the authority resolution services.] [=Drummond] Yes, the resolver just walks down the list of "top-level" subsegs, but the resolver algorithm DOES distinguish between global-xref and local-xref as shown in the ABNF. A global-xref is the GCS character plus zero or one typeless subseg plus zero or more local subsegs. 4. Are six of the subsegment types reassignable and only one (bang) persistent (as per the definition above)? [=Drummond] No. A GCS character by itself is persistent. Then each subseg inside a global-xref is persistent or not depending on whether it begins with a bang. So a global-xref is persistent if and only if each of its subsegs is persistent. Examples: XRIS WITH PERSISTENT GLOBAL XREFS In #1 and #2, the global-xref beginning with = is persistent. In #3 and #4, the entire XRI is persistent. #1: @example=!1234.5678.a1b2.c3d4 #2: @example=!1234.5678.a1b2.c3d4!55 #3: @!1000.2000.3000.4000=!1234.5678.a1b2.c3d4 #4: @!1000.2000.3000.4000=!1234.5678.a1b2.c3d4!55 NON-PERSISTENT GLOBAL XREFS In all four examples below, the global-xref beginning with = is not persistent, because it does not consist of all persistent subsegments. #5: @example=example.2 #6: @example=!1234.5678.a1b2.c3d4*some.subseg #7: @!1000.2000.3000.4000=example2!55 #8: @!1000.2000.3000.4000=!1234.5678.a1b2.c3d4*some.subseg 5. If the answer to 3 above is "no", then why does the parser care about sticky stars? [=Drummond] See my answer to 3 above.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]