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

 


Help: OASIS Mailing Lists Help | MarkMail Help

xri message

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


Subject: RE: [xri] Issue 1: Clarifying * Semantics


Title: Re: [xri] Issue 1: Clarifying * Semantics
I could be mistaken, but I thought Drummond concluded by the end of that thread that making star and slash equivalent separators wasn't feasible, and that star was always a second level separator, subordinate to slash.
 
Dave


From: Victor Grey [mailto:victor@idcommons.org]
Sent: Thu 7/8/2004 1:17 AM
To: xri@lists.oasis-open.org
Subject: Re: [xri] Issue 1: Clarifying * Semantics

Wachob, Gabe wrote:
> As to whether this is an aesthetic-only change, I'll let the initial 
> proponents of this proposal speak up. I think its largely aesthetic

I don't think anyone is claiming it's an aesthetic change. Au 
contraire, it's somewhat uglier. In my mind the crucial point is the 
philosophical/worldview imperative that Drummond wrote about on 6/11 
(quoted below) - the need to highlight the distinction between a 
hierarchical relationship and a peer relationship.

-Victor Grey

Drummond on 6/11:
> First, just to make it clear, I agree with everyone that if the choice 
> is
> simply between the "readability" of the two examples given below, i.e.:
>
> xri:@:3*:4*:5/:6*:7
> or
> xri:@:3:4:5/:6:7
>
> ...then of course it appears to be a no-brainer. The latter is more 
> compact
> and, as Peter says, "much easier to read".
>
> But therein lies the issue. What is "easier to read" depends on what 
> you are
> reading for. What I realized laying in bed at 4am this morning is that 
> I am
> reading for something entirely different. But to explain this requires
> explaining the entire worldview behind this perspective, and entire
> worldviews are not easy to explain, so please bear with me while I try.
>
> In this second worldview, * would not be considered a "secondary 
> hierarchy
> character", but an "alternative hierarchy character" on an equal 
> footing
> with slash.
>
> I can just hear Dave screaming right now, "What does Drummond mean, 'an
> "alternative hierarchy character" on an equal footing with slash'?? How
> could there be such a thing? Slash is THE 2396 hierarchy character! It
> defines 2396 segments. The only option we have is to define subsegments
> within slash segments!"
>
> But this is exactly what I mean about two entirely different 
> worldviews. In
> the 2396 worldview the world is purely hierarchical. There is only 
> slash
> because there is only hierarchy.
>
> It's pretty ironic, then, that URIs based on 2396 are the very basis 
> of the
> World Wide Web, which is the very opposite of hierarchy. It's a 
> peer-to-peer
> web. Any page can link to any page.
>
> Laying in bed at 4am, I did the following thought experiment, "Using
> conventional URIs, is there any way you can address the LINK between 
> two web
> pages?" In other words, not the URI of Page A or the URI of Page B, 
> but the
> LINK from Page A to Page B. Literally, the A tag present in the HTML 
> of Page
> A that links to Page B.
>
> There is certainly no standard way, at least that I know of. So I 
> started
> thinking through how you would do it. If Page A was expressed as 
> XHTML, then
> the actual node of the XHTML document that contains the link to Page B 
> would
> at least be addressable using an XPath expression under the URI of 
> Page A.
> So you could have something like:
>
> http://www.example.com/Page-A#Xpath-to-A-tag-linking-Page-B
>
> Of course, there is no spec for doing this that I am aware of. However 
> it
> wouldn't be hard to construct one. Since you know the link is in an A 
> tag,
> you'd just need a standard XPath query that says, "Give me the A tag 
> whose
> HREF attribute equals the following value" and then supply the target 
> URI as
> a paremeter. Say this query was called "Xpath-A-ref". Then any site 
> that
> supported this query could resolve a URI that looked like the 
> following:
>
> http://www.example.com/Page-A?Xpath-A-ref&HREF=""http://www.site.com/
> Page-B"
>
> Such an address would actually let you address Page B in the context 
> of Page
> A. It lets you construct a path ACROSS pages, not just DOWN the DNS 
> tree and
> local file path hierarchy to a specific page.
>
> Why would you want to be able to address across Web pages? If you 
> wanted to
> be able to follow the path of who is linked to who. It lets you test
> assertions about relationships between pages. If the address above 
> resolves,
> it tells you Page A is linked to Page B. If it doesn't, they aren't.
>
> Now, imagine if there was: a) a standard URI syntax character that 
> equates
> to the link query operation "?x-path-A-ref" above, and b) a standard 
> way in
> URI syntax to nest one URI inside another. Let's say the standard link 
> query
> character was * and the nesting syntax was to enclose the nested URI in
> parentheses. Then the URI above could be expressed much more compactly 
> and
> readably as:
>
>       http://www.example.com/Page-A*(http://www.site.com/Page-B)
>
> Now let's take one more step. Say that the author of Page A had his 
> own name
> for Page B inside the HREF tag that points to 
> "http://www.site.com/Page-B".
> Say this name was "Glockenspiel". This is really a relative identifier 
> for
> Page B, since it's relative to the Web page 
> http://www.example.com/Page-A.
> But in the context of this Web page, it's very likely to be unique, 
> since
> the author of Page A is unlikely to create two outgoing links to 
> different
> resources on the same Web page and label both the A tags identically.
>
> In this case there is a second way to address the link between Page A 
> and
> Page B using this relative identifier. This would look like:
>
>       http://www.example.com/Page-A*(Glockenspiel)
>
> I know this example has been quite extensive, but as you can see, the 
> point
> is that in this alternative worldview - this Web-based worldview -
> peer-to-peer linking relationships have an equal status with 
> hierarchical
> relationships. Neither is "good" or "bad". Neither is "primary" or
> "secondary". They are simply equally valid. Like Cartesian and radian
> coordinate systems, they both let you address any point on a plane - 
> it's
> just that each one can be much more appropriate for certain tasks.
>
> It follows then that in this worldview, the primary failing of 2396 
> syntax
> is that it does not accommodate the peer-to-peer linking worldview. It 
> only
> accommodates the hierarchical worldview. It has no syntax for 
> addressing
> link relationships, nor for nesting identifiers for this purpose (i.e.,
> cross-references). In syntactic terms, it has only /, and no * nor ().
>
> Those of you who know me know why I am so passionate about this 
> subject. To
> get from the Web to the Dataweb, we must be able to express the links
> between data and the links between data sharing authorities. Suddenly 
> it is
> as important (if not more important) to be able to address the source 
> of
> authority and permission in a data sharing relationship as it is to be 
> able
> to address the data being shared.
>
> For example, look at the following sample XRI:
>
> xri:xri-A/(xri-B)*(/($contract)/this-contract/($v1))*(/(+email)/work/
> ($v2))
>
> (Note that the values "xri-A" and "xri-B" are placeholders for the 
> actual
> XRIs for Authority A and Authority B, and "$contract" is the proposed 
> XRI
> service dictionary identifier for XDI link contracts.) This is from a 
> thread
> about potential XDI contract addressing available at
> http://wiki.idcommons.net/moin.cgi/DataSharing#head
> -0bd543034533c5641c0beacf
> 65be418a7a9c7fc5.
>
> Although this particular example is in the context of XDI (and uses 
> only a
> proposed addressing syntax in that context), what I believe it 
> illustrates
> is the tremendous importance, in that context, of link relationships. 
> For
> example, this XRI expresses that authority A's relationship with 
> authority B
> (xri-A/xri-B) is linked to a link contract from authority A
> (/($contract)/this-contract/($v1)) which is linked to a specific item 
> of
> data from authority A (/(+email)/work/($v2)).
>
> So, in conclusion:
>
> * In the hierarchical-only worldview, / reigns supreme, and therefore 
> the
> distinction between * and : as "secondary hierarchy" characters appears
> relatively minor.
>
> * In the combined hierarchy-and-peer-to-peer-link worldviews, / and * 
> are
> equally important and equally valid first-level delimiters. / is used 
> to
> express for hierarchical relationships between resources and * is used 
> to
> express peer-to-peer linking relationships between resources. In this
> worldview, both "/:" and "*:" would be equally valid, as colon would 
> always
> be used as the prefix for a persistent identifier.
>
> I believe this worldview is not unique to XDI. Although XDI 
> architecture is
> fundamentally based on the ability to express links between resources, 
> and
> it uses XRIs for this purpose, I believe that establishing the 
> syntactic
> "equal footing" of * and / for the purpose of enabling the expression 
> of
> peer-to-peer linking vs. hierarchical relationships could apply to many
> other uses of XRI beyond the scope of XDI.
>
> I hope this explanation helps bridge the gap between these two 
> worldviews.
>
> =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.



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