[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Minutes: XDI TC Telecon Thursday 1-2PM PT 2009-04-02
Following
are the minutes of the unofficial telecon of the XDI TC at: Date:
Thursday, 26 March 2009 USA Time:
1:00PM - 2:00PM Pacific Time ATTENDING Giovanni
Bartolomeo Markus
Sabadello Nick
Nicholas Drummond
Reed John
Bradley 1)
CONTINUE $HAS AND $HAS$A DISCUSSIONS Our
main topic was discussion the open issues dialog at the bottom of: http://wiki.oasis-open.org/xdi/XdiMetamodel Giovanni
started with the statement inferred by =abraham/$has/+son, which is =abraham+son/=isaac/=abraham+son=isaac.
His first concern is that from an RDF standpoint, the semantics may not be
clear. His second concern is that they may conflict with the semantics of the
original RDF document. RE
the first concern, we discussed what it means that =isaac appears as a
predicate in the statement =abraham+son/=isaac/=abraham+son=isaac. Drummond
pointed out that this is a valid RDF statement, however it is not the type of
statement for which RDF properties are typically used. Giovanni
said that the problem is that =isaac is an instance, and you can't use an
instance as a property. Drummond pointed out that it is common in XDI RDF for a
subject to also be a predicate, in fact that is the entire premise of XDI RDF dictionaries:
every predicate appears in the dictionary as a subject. He used the example of
+email as a subject, predicate and object: +email/$is$a/$a$xsd$string =drummond/+email =drummond/+email/(=drummond+home/+email) =drummond/+email/(=drummond+work/+email) =drummond/$has$a/+email Nick
gave the example of putting a person in context, for example, placing =drummond
in two different contexts: @cordance=drummond and @oasis=drummond. The $has
statement for the first is @cordance/$has/=drummond This
infers the statement @cordance/=drummond/@cordance=drummond Here
is a good example of where =drummond (typically looked at as an “instance”)
has a clear use as a predicate identify a specific context for =drummond. Giovanni
then gave two specific examples: =abraham/+son/=isaac =abraham/+son/=abraham+son He
said that in the first case, the range of +son would be instances of the class
+son. Whereas in the second case, the range is another class – a specialization
of +son. Giovanni
pointed out that in the first case the object is an instance of the range of
the predicate, but not in the second case. So the second case is an exception
to the normal behaviour in RDF. Drummond
pointed out that this is the fundamental “extension point” for all
of XDI RDF. $has statements are the way of creating all the classes and
instances that exist, and the addresses for those classes and instances. He
said this is similar to the concept of defining new names in any language, such
as English. For example, “A plane made by Boeing is called a Boeing plane.”
That’s how you create the new concept, “Boeing plane”. RDF
does not have such a concept because, to our knowledge, there are not RDF
statements that create new URIs. URIs are opaque in RDF. So when i XDI RDF the statement
=abraham/$has/+son asserts a relationship of two identifiers that results in a
third identifier, we have stepped outside of the semantics that can
conventionally be expressed in RDF. Drummond
wondered whether the way to make this compatible with RDF to propose that there
is an algorithmic way to extend RDF ranges in XDI RDF, and it is built into all
XDI RDF range types. This “range extension algorithm” would be
defined as: “Any
XRI that is a concatenation of XRI A with XRI B is an extension of the range of
XRI B.” This
would meet the goal Giovanni suggests of keeping XDI RDF as close to original
RDF as possible, without taking away the power of XDI RDF addressing. We
closed by Giovanni saying he would like to propose a different solution for how
XDI RDF addressing could work, which will will make the subject of next week's
call (and discussion on the list this week if there is time). #
ACTION: GIOVANNI to write up his proposed alternative for XDI RDF addressing. |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]