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: SYNTAX STRAWMAN: Please review & reply to see if we can reach consensus


Now that everyone's had the weekend to refresh their brains (and review their choices), I have combined input from several of you into a proposed strawman to see if we have consensus.

I have posted the strawman to https://wiki.oasis-open.org/xdi/XdiSyntaxExamples and also pasted it in below.

I guarantee you that no one will be completely happy with this. But we need to put a stake in the ground and move forward. So:

YOUR ACTION ITEM IS TO READ THROUGH THIS AND THEN REPLY WITH EITHER:
  1. "Yes - I like this as is."
  2. "No - I'd like to propose the following changes to it."
The goal, via email and Skype calls as needed, is to put the stake in the ground by sundown tomorrow (Monday).

Thanks,

=Drummond  


Proposed Strawman to Test for Consensus

This proposal reflects a blend of viewpoints advanced by different TC members.

Rationale

  1. Caret ^ is proposed for singletons because in turns out that in some fonts, pipe | is almost indistinguishable from a lowercase "l" or the digit "1". Caret ^ also nicely suggests "single" and provides a nice visual separator that makes it easy to spot.

  2. For symbol ordering:
    1. Context symbols to go first since they are "major" EXCEPT when preceded by definition symbol since it is the highest "meta".
    2. Singleton symbol to go last since (when present) it provides the strongest visual separator between the symbols and the non-symbol characters.

Symbols

Attribute symbol

&

Singleton symbol

^

Literal symbol

:

Ordered instance symbol

#

Definition symbol

%

Symbol Ordering

[ definition ] context [ attribute ] [ singleton ]

Example

=markus+&^email/$ref/
   =markus+&email!:uuid:f81d4fae-7dec-11d0-a765-00a0c91e0001
=markus+home+&^email/$ref/
   =markus+&email!:uuid:f81d4fae-7dec-11d0-a765-00a0c91e0001
=markus+work+&^email/$ref/
   =markus+&email!:uuid:9ce739f0-7665-11e2-bcfd-0800200c0002
=markus+&email!:uuid:f81d4fae-7dec-11d0-a765-00a0c91e0001:/:/
   "ms@example.com"
=markus+&email!:uuid:9ce739f0-7665-11e2-bcfd-0800200c0002:/:/
   "markus@example.net"
=markus+&email!:uuid:9ce739f0-7665-11e2-bcfd-0800200c0002$&^time:/:/
   "2013-04-11T10:11:12Z"
=markus+home+^address/$ref/
   =markus+address!:uuid:3a96e460-7be9-11e2-b92a-0800200c0003
=markus+address!:uuid:3a96e460-7be9-11e2-b92a-0800200c0003+&street#1:/:/
   "123 Main St"
=markus+address!:uuid:3a96e460-7be9-11e2-b92a-0800200c0003+&street#2:/:/
   "Apt 23"
=markus+address!:uuid:3a96e460-7be9-11e2-b92a-0800200c0003+&^city:/:/
   "Vienna"
=markus+address!:uuid:3a96e460-7be9-11e2-b92a-0800200c0003+&^country:/:/
   "Austria"
=markus+address!:uuid:3a96e460-7be9-11e2-b92a-0800200c0003$&^time:/:/
   "2013-04-11T10:11:12Z"
%+&email/$is+/
   $string
%@example%+&email$&xbnf#1:/:/
   "1*DIGIT '@example.com'"


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