[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: SECOND STRAWMAN from Drummond and Markus - please vote ASAP
Multiple symbol characters may be easy for machines but is hard for humans to parse no matter what we do. So this proposal follows a new rule: context symbols are never used in pairs. The solution is to reintroduce brackets, but used slightly differently than before.
The use of brackets is also consistent with Joseph's analysis.
Per earlier proposals, angle brackets < > that wrap the context identifier are used to indicate attributes.
Square brackets [ ] that wrap the context identifier are used to indicate singletons.
If a node is both an attribute and a singleton, the square brackets wrap the angle brackets, e.g., [< >].
Definitions use the $ metaclass and a cross-reference to the term being defined (or the authority for the definition). This is consistent both with the role of $ as the reserved symbol for metaclass and the use of cross-references to reuse identifiers in a different context -- in this case the dictionary context. It also is consistent with the rule that all context symbols never appear in pairs.
=markus[<+email>]/$ref/ =markus<+email>!:uuid:9ce739f0-7665-11e2-bcfd-0800200c0002 =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$[<$t>]:/:/ "2013-04-11T10:11:12Z" =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$[<$t>]:/:/ "2013-04-11T10:11:12Z" $(<+email>)/$is+/ $string $(+address)$(+street)[<$label>]:/:/ "Street" $(@example)$(<+email>)<$xbnf>#1:/:/ "1*DIGIT '@example.com'"
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]