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: Re: [xdi] XDI Graph Model Rules


Joseph, nice table. I was just discussing it w/Markus and here's our answers to your questions:
  1. A singleton cannot contain an instance (only classes can contain instances).
  2. Since variables can be typed, a typed variable can contain anything that the type of context that the variable represents can contain. For example, a variable representing a root context can contain anything a root context can contain. However, variables can also be untyped. An untyped variable can contain anything that would be valid for its position in the XDI graph model. For example, an untyped variable representing a context below the root level cannot represent a root. And an untyped variable whose parent is not a class cannot represent an instance.
  3. You are correct that a value context cannot contain any subcontexts. It's truly a leaf context node that can contain zero-or-one XDI literal node.
See also inline below RE the "summary rules".


On Wed, May 22, 2013 at 1:12 AM, Joseph Boyle <planetwork@josephboyle.net> wrote:
So the matrix of which context types can contain which looks like this, if I'm not mistaken, except the page doesn't say what variable contexts can contain:

r i c s d v v
---------------------------------------------------------
root x x x x x
inst x x x x x a
class x x x x x
single x x x x x a
defin x x x x x
varia ? ? ? ? ? ?
value


I think I can sum it up in these rules:

Only instance or singleton can contain a value; value can't contain anything

As your table above captures, the precise rule is that only an ATTRIBUTE instance or ATTRIBUTE singleton can contain a value.
 
Only root or defn can contain a root; root or defn can't directly contain an instance

Correct.
 
I don't know what variable can contain

See above.
 
When not covered by the above, anything can contain anything.

I don't think there is such a case, i.e., everything is one of the seven node types above. It would concern me if there was another option, i.e., an "other" node type that didn't have any of these constraints. Am I missing something, i.e., is there any other option you know of?
 

On May 21, 2013, at 9:30 PM, Drummond Reed <drummond.reed@xdi.org> wrote:

After a discussion with Joseph today, we agreed that the core XDI graph model rules he is trying to make sure are fully captured in the ABNF should also be written down as classic RFC style MUST/MAY/SHOULD rule form.

We have done this in several earlier iterations, but to bring this all together and make it consistent with our revised syntax, I have drafted this new proposal page:


Please read it over and post any feedback or corrections to the list (or make them directly to the page).

Thanks,

=Drummond  




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