[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: [xdi] Definition of $has metagraph predicate
Dear all, I think we all agree on the following claim: "The $has metagraph predicate describes the relationship between a node and an outgoing arc in the XDI RDF graph". Unless I really did not understand what you want to do, I cannot see how metagraph statements could exist without the graph they describe. Therefore, to me the following statements are all valid: #1: +x/$has/+y INFERS: +y/$is$has/+x +x+y/$is$a/+y +y/$a/+x+y +x+y +x/+y The corollary is also true, i.e.: #1A: +x+y INFERS +x/$has/+y +y/$is$has/+x +x+y/$is$a/+y +y/$a/+x+y +x/+y To summarize my position: -I agree with Bill when he says "I think $has must infer a minCardinality of 1" -I disagree with Drummond and Bill on the FULLY associativity of $has. An explanation of why is reported here: http://lists.oasis-open.org/archives/xdi/201001/msg00014.html (and in the following of this thread). Since $has is the pillar of our specs, I would suggest these actions: - create a summary of the two (or three) models under discussion. - encourage members of the TC to discuss this topic - open a poll and record decisions Kind Regards, Giovanni Def. Quota "Barnhill, William [USA]" <barnhill_william@bah.com>: > Coments inline, look for =Bill.Barnhill+comment and =Bill.Barnhill+endcomment > Kind regards, > > Bill Barnhill > Booz Allen Hamilton - Rome, NY > 315-330-7386 | > william.barnhill.ctr@rl.af.mil<mailto:william.barnhill.ctr@rl.af.mil> | > barnhill_william@bah.com<mailto:barnhill_william@bah.com> > > ________________________________ > From: drummond.reed@gmail.com [drummond.reed@gmail.com] On Behalf Of > Drummond Reed [drummond.reed@xdi.org] > Sent: Wednesday, January 13, 2010 4:43 AM > To: OASIS - XDI TC > Subject: [xdi] Definition of $has metagraph predicate > > > Giovanni's message raised the question of whether there is consensus > on the TC about the definition of $has semantics that we reached > last spring and documented on May 15 2009 the wiki spec > (http://wiki.oasis-open.org/xdi/XdiOne/RdfGraphModel). > > > > =Bill.Barnhill+comment > > > > Based on the email threads I think we cannot have consensus yet. > > > > =Bill.Barnhill+endcomment > > > > In that definition, we say (emphasis in red added): > > > > ********** EXCERPT *********** > > The $has metagraph predicate describes the relationship between a > node and an outgoing arc in the XDI RDF graph. The subject of a $has > statement is the XRI of the node from which the arc originates, and > the object is the XRI of the arc. > > The inverse predicate, $is$has, describes the same relationship, > however the subject and object are reversed, i.e., the object is the > XRI of the node from which the arc originates, and the subject is > the XRI of the arc. > > When used alone as a metagraph predicate, $has is an assertion that > reifies this subject/predicate relationship so that this reification > can serve as a new XDI RDF subject node. The XDI address of this new > subject node is a direct concatenation of the XRI for the subject of > the $has statement and the XRI for the object of the $has statement. > For example: > > +x/$has/+y ==> (+x/+y) ==> +x+y > > > > *********** END EXCERPT ************ > > > > =Bill.Barnhill+comment > > > > I believe we may reached consense on the above. I think it would be > helpful to hash out a list of axioms like this (the above would be 6 > separate axioms and hold an informal recorded vote (OASIS voting > process maybe but seems heavy weight). > > > > =Bill.Barnhill+endcomment > > > > Also, at the end of the $has and $is$has definition section, we said: > > > > ********** EXCERPT *********** > > > > [TODO: add explanation that $has statements do not and cannot infer > cardinality.] > > =Bill.Barnhill+comment > > > > I don't remember reaching consensus on this. I remember you and > Markus have said that you believe the above must be the case. I > think $has must infer a minCardinality of 1 and have said so in the > past. > > > > =Bill.Barnhill+endcomment > > *********** END EXCERPT ************ > > The red highlighted section in the first excerpt documents, in my > recollection, the realization we had that $has statements expressed > a reification of a subject/predicate relationship. That's why the > parentheses on (+x/+y) are necessary. > > Secondly, the fact that a $has statement resulted in reification > that produce a new XDI subject node explains why $has statements > have no cardinality – a conclusion that as I recall clearly had > consensus across all of us that were active in the discussion. > > > > =Bill.Barnhill+comment > > > > Drummond I do not see how the first part explains the second, can > you or Markus do a contradiction proof that shows that if $has > statements have a minCardinality of 1 then reification can't work? > > > > Sounds like we didn't have enough people active in the discussion. > Was the discussion on the mailing list? > > > > =Bill.Barnhill+endcomment > > To use an analogy to English, I can say "ball color", but that > statement has no cardinality about ball colors – it is just defining > a TYPE of color. Type has no cardinality. > > If we wanted to talk about the specific colors a specific balls has, > we would say, "a ball has a color" (i.e., a $has$a relationship). > With a $has$a relationship, you can now add cardinality, i.e., "a > ball has 3 colors". > > But "ball color" as a concept (a noun in English), identifying a > type of color, is very different than the statement "a ball has a > color", which is not a noun, but a complete statement about the > relationship of a ball (a noun) and "color" (another noun, > representing a property). In XDI, I believe this is illustrated by > the difference between the following: > > > > > $HAS STATEMENT > > ball color > > +ball/$has/+color > (+ball/+color) > +ball+color > > $HAS$A STATEMENT > ball has a color > > +ball/$has$a/+color > +ball/+color > > In conclusion, I believe the current definition of $has is what is > currently documented in the spec, as specifically illustrated in the > example: > > > +x/$has/+y ==> (+x/+y) ==> +x+y > > The only revision I would make to this example is that the arrows > may imply the inferences are only unidirectional, while I think we > all believe they are bidirectional. So the revised diagram would be: > > > +x/$has/+y <==> (+x/+y) <==> +x+y > > If this is true, then I believe it follows that $has statements > cannot be either only left or only right associative, but only full > associative, because if the inferences above are true, then both of > the following are true: > > > +x+y/$has/+z <==> (+x+y/+z) <==> +x+y+z > > +x/$has/+y+z <==> (+x/+y+z) <==> +x+y+z > > Again, I believe this is entirely logically consistent, because it > also means: > > > +x+y+z/$is$a/+z > > +x+y+z/$is$a/+y+z > > =Bill.Barnhill+comment > > > > I changed my mind on this one and agree on fully associative > > > > =Bill.Barnhill+endcomment > Now, it is important to point out (which we do not currently do in > the spec – I think this should be fixed) that left or right > associativity CAN be specified through the use of XDI reification > (cross-references). In other words, to make +x+y+z either left or > right associative, the XDI statements would be: > > > (+x+y)/$has/+z <==> ((+x+y)/+z) <==> (+x+y)+z > > +x/$has/(+y+z) <==> (+x/(+y+z)) <==> +x(+y+z) > > > =Bill.Barnhill+comment > > To me the above just doesn't hunt as they say in the south. Or > rather it does, but doesn't say what I think you mean to say. In > english I would translate (+x+y)+z as saying the following: the > statement +x+y has a metadata property +z. > > > > This discussion and above example may mean we need to revisit > discussion of a grouping operator, which kind of got dropped after > the last face to face. > > > > =Bill.Barnhill+endcomment > I believe this provides the expressivity that Giovanni believes is > required to accurately reflect semantics where two XDI RDF nodes can > only be considered in their own context (e.g., his "Markus contract > sig" example, where "Markus contract" is to be treated as a unit). > > The result, in my understanding, is a definition that has no logical > inconsistencies or ambiguities. > > So, the question to the TC is: does anyone disagree with these > definitions? If so, why? > > > > =Bill.Barnhill+comment > > > > Yes, for the above reasons and the reasons in the previous email > today. I think we can't address these definitions as a single unit. > We need to look at each in turn starting with the most fundamental > ones, get agreement, and build from there. I'd suggest starting with > $has implying minCardinality of 1. > > > > =Bill.Barnhill+endcomment > > =Drummond > > ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]