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] Implications of multiplicity on messaging syntax


My intuition is that it would be better to only have one way of doing things, i.e. only have one link contract per message

So yes I guess that would mean that we'd use $($do) instead of $do.

Markus

On Mon, Sep 3, 2012 at 8:49 AM, Drummond Reed <drummond.reed@xdi.org> wrote:
On Sat, Sep 1, 2012 at 2:30 AM, Markus Sabadello <markus.sabadello@xdi.org> wrote:
My understanding is that if we adopt this proposal:
https://wiki.oasis-open.org/xdi/XdiMultiplicity

Then (independently of the small change I am proposing in the other thread), I think this means the correct messaging syntax would be:

@!2222$msg$(!1234)$do/$add/...

rather than

@!2222$($msg)$(!1234)$do/$add/...

(This is currently used in the latest XDI Graph Model/Patterns/Statements PDFs)

Markus
 
Exactly right. $msg would be a collection of messages, $(!1234) would be an entity singleton member of this collection, and $do would be a collection inside this entity singleton.

Note that multiplicity applies to link contracts as well, i.e., $do by itself is a link contract collection. So this causes me to wonder whether, if there's just a single link contract reference, it shouldn't be $($do), i.e.:

    @!2222$msg$(!1234)$($do)/$add/...

This would leave open the possibility that a single message could reference multiple link contracts for multiple operations. For example:

   @!2222$msg$(!1234)$do$(!1)/$add/...
   @!2222$msg$(!1234)$do$(!2)/$mod/...
   @!2222$msg$(!1234)$do$(!3)/$del/...

To associate each operation with the precise link contract that authorizes it, the link contract references would also use multiplicity, i.e.:

   @!2222$msg$(!1234)/$do$(!1)/{link contract #1}
   @!2222$msg$(!1234)/$do$(!2)/{link contract #2)
   @!2222$msg$(!1234)/$do$(!3)/{link contract #3}

What do you think?

BTW, it seems this is also closely related to the question about ordering of operations within a message that carries multiple operatons.

=Drummond 






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