[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Datapath addressing segment proposal
XDI TC Members and Observers, In the agenda I sent out I said I would be posting a proposal to solve a longstanding issue with regards to the XDI Addressing strawman, namely that it it inherently restricted XDI XRIs to 3 slash-delimited segments. I was going to do this by submitting an update to the current XDI Addressing proposal (currently http://www.oasis-open.org/committees/download.php/11437/draft-xdi-addressing -v9.doc). However I didn't have enough time to do a full update. Since the suggestion is really quite simple, for purposes of discussion on tonight's call (if we have time for it), I'm just going to outline it in this email. Currently we only allowed three XRI subelements in the current XDI schema (Authority, Type, and Instance). xri://<authority>/<type>/<instance> They can be delegated to any depth within each level, but it still inherently restricts XDI XRIs to three levels. To use a slash INSIDE a level means you must enclose it as an XRI cross-reference. For example, I can include a slash in Type and Instance segments as follows: @foo*bar/(+email/Internet)/(+work/preferred) But without going into query or fragment syntax, both of which have their disadvantages for pure addressing, you can't go beyond three segments. So there's no native way to address down "into the data". This has always bothered me because XRIs can be used to address anything in any hierarchical system to any depth (file systems, databases, ontologies, etc.) and XDI shouldn't restrict this. After a discussion with Victor, Andy, and Steve a few weeks ago, an obvious solution occurred: allow a fourth XRI subelement that is used expressly for addressing BELOW the XDI graph layer, i.e., "into the data", and which itself can be repeated to any depth. In other words: xri://<authority>/<type>/<instance>/<data1>/<data2>/.../<datan> The only special rule about this Datapath element is that because it is the final element, if it contains slashes, its value does NOT need to be enclosed as a cross-reference. That's how we allow it to be any depth. We'll discuss further on the call. =Drummond
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]