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

 


Help: OASIS Mailing Lists Help | MarkMail Help

xdi message

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


Subject: Why $is for inverse (was Re: [xdi] Splitting $is into $is and $ref)


On Tue, Dec 11, 2012 at 7:56 AM, Phil Windley <pjw@kynetx.com> wrote:

I like this change because it makes $is much more intuitive.  And I'm in favor of anything that gets rid of $is$is. :)

Drummond, sometime I'd like to understand why $is functions as an inversion function. That doesn't seem intuitive to me. 

Phil, great question. I’ll skip the long history; here’s the basic logic.

First, by analogy to English, a statement of the relationship between two people might look like:

     Cain’s father is Abraham.

In XDI this would be:

     =cain/+father/=abraham

In English, the inverse statement would be: 

     Abraham is the father of Cain. 

In XDI this would be:

     =abraham/$is$father/=cain

Now, looked at it from the standpoint of the graph model, as an assertion of logical of equivalence, $is is effectively a self-referential arc, i.e., an arc that both starts and ends at the same node of the graph (it doesn’t technically do that, since XDI is a directed graph with no loops, but logically it equates to that). That essentially means you can traverse the arc in either direction and still get the same logical result. If =a/$is/=b, then =b/$is/=a.

So we concluded that, for the same reason it sounds logical in English, it made sense in the graph model to say that the $is context represents the inverse context, i.e., whatever direction the arc +foo points, the arc $is$foo has the exact same semantics in the opposite direction. 

Make sense? 

=Drummond 





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