as well as the support for canonicalization.
Apparently, these features fall outside the scope of OSN,
which targets the data structures of <notice text="formal languages"/>.
- </style></item><newline/>
- <item class="blue-mark"><style class="alpha">
+ </style></item></list>
+ <list><item class="blue-mark"><style class="alpha">
Optionally <link to="https://en.wikipedia.org/wiki/Namespace">qualified</link> symbolic expressions
allow OSN texts to mix data from different domains preserving their own semantics
because name conflicts can be avoided.
As a consequence OSN documents are <notice text="easy to extend"/> in that
domain-specific OSN applications can work as expected even if
data from different domains is added to the text they process.
- </style></item><newline/>
- <item class="green-mark"><style class="alpha">
+ </style></item></list>
+ <list><item class="green-mark"><style class="alpha">
The <link to="https://en.wikipedia.org/wiki/ASCII">US-ASCII</link> character set,
extended to <link to="http://www.utf-8.com/">UTF-8</link> in
free-form text strings for the convenience of human readers,
<str2 of="a"/> <etc/> <str2 of="z"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
This token contains free-form text with commonly accepted escape sequences:
<newline/><ebnf>
<prod of="string"/> <def/>
<str2 of="a"/> <etc/> <str2 of="f"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
This token is a widely used alternative of the former token:
<newline/><ebnf>
<prod of="string-alt"/> <def/>
<str1 of="'"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
This token separates the qualifiers of a symbolic expression:
<newline/><ebnf>
<prod of="sep"/> <def/> <str2 of=":"/> <stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
This token starts a compound symbolic expression:
<newline/><ebnf>
<prod of="open"/> <def/>
<str2 of="("/> <or/> <str2 of="<"/> <or/> <str2 of="["/> <or/> <str2 of="{"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
This token ends a compound symbolic expression:
<newline/><ebnf>
<prod of="close"/> <def/>
<str2 of=")"/> <or/> <str2 of=">"/> <or/> <str2 of="]"/> <or/> <str2 of="}"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
This token is ignored and separates the other tokens:
<newline/><ebnf>
<prod of="gap"/> <def/>
<star/> <prod of="q-expr"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
A qualified symbolic expression:
<newline/><ebnf>
<prod of="q-expr"/> <def/>
<prod of="expr"/>
<stop/>
</ebnf>
- </item><newline/><item>
+ </item></list>
+ <list><item>
An unqualified symbolic expression:
<newline/><ebnf>
<prod of="expr"/> <def/>