- From: Steven Pemberton <steven.pemberton@cwi.nl>
- Date: Tue, 11 Jan 2022 14:40:01 +0000
- To: "C. M. Sperberg-McQueen" <cmsmcq@blackmesatech.com>, ixml <public-ixml@w3.org>
- Cc: "C. M. Sperberg-McQueen" <cmsmcq@blackmesatech.com>
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