Re: pragmas proposal - please read and comment

My very strongly held position is that pragmas should be a form of comment, 
thus using the { } notation, and not use the character set notation [  ].
That would already help fulfil the pragma-oblivious requirement.

Steven


On Tuesday 04 January 2022 18:45:31 (+01:00), C. M. Sperberg-McQueen wrote:

 > A somewhat shorter version of the pragmas proposal Tom Hillman and I
 > have developed is now in the ixml repo on the proposal-pragmas branch:
 >
 > 
https://github.com/invisibleXML/ixml/blob/proposal-pragmas/misc/pragmas-proposal.md
 
>
 > Basic summary: syntactically a pragma is a pair of square brackets
 > enclosing an optional mark, a QName or URI-qualified name, and optional
 > pragma data (which may contain paired square brackets). Examples:
 >
 > [my:blue]
 > [Q{http://example.com/ns/props}color blue]
 > [their:rewrite
 > comment: -"{", (cchars; comment)*, -"}".
 > [ls:token] -cchars: cchar+.
 > ]
 >
 > The use of square brackets allows all processors to recognize them and
 > process or ignore them. The use of QNames allow processors to understand
 > whether the pragma is one they support or not using the same logic
 > familiar from the use of namespaces in other XML-related contexts.
 >
 > Pragmas also have an XML form, which follows naturally from the
 > grammatical definition of pragmas.
 >
 > To allow pragmas to use prefixed names in the usual way, we propose to
 > add a pragma for namespace declarations. A pragma whose QName uses the
 > prefix 'ixmlns' is a namespace declaration. Examples:
 >
 > [ixmlns:xsd http://www.w3.org/2001/XMLSchema]
 > [ixmlns:rng http://relaxng.org/ns/structure/1.0]
 >
 > As things stand, colons are not allowed in ixml nonterminal names, so
 > namespace declarations are used only in expanding QNames in pragmas. A
 > pragma-oblivious processor can thus ignore all pragmas. If we decide to
 > allow colons in nonterminal names and specify that namespace bindings
 > should apply to the XML output, then all processors willl need to
 > understand namespace declarations.
 >
 > MIchael
 >
 >

Received on Tuesday, 11 January 2022 14:40:26 UTC