Re: Thoughts on pragmas and iXML

On Wed, 2025-02-05 at 11:35 -0500, Graydon wrote:
> 
> So we have to be able to identify which pragma, and bind that pragma
> to
> a scope (I think, effectively "result", "non-terminal", "terminal").

Or, maybe pragmas that relate to other pragmas.

One syntactic way to do that might be to consider a pragma as an
operator that affects what immediately follows it, and either supply
grouping or say the effect of the pragma can propagate up the parse
tree in an implementation-defined way.
> 
> How you get paramaterized pragmas -- Sometimes I want to normalize
> the non-terminal as NFC, sometimes as NFKD -- would I think fit into
> the map construction, and could plausibly be left up to the
> implementer except perhaps for a decision about using either a lookup
> operator style
> 
> %#%normal-form?NFC
> 
> or parenthesis
> 
> %#%normal-form(NFC)
> 
> which would perhaps do a better job of supporting multiple params if
> that's a place people want to go.

The XML processing-instruction model has some benefits, with a target
and pseudo attribute-value pairs. For example:

integer := #PRAGAMA[ VEND=Burroughs MAXBITS=36 ] #PRAGMA[ VEND=HP
MAXBITS=128 ] [\d]+ | #PRAGMA[ VEND=* COLLATION='htmlasciicase'
SCOPE='rule' CONVERT=t'o-lower' ] 'zero' .

where a pragma cannot contain an unescaped ] character.

(using CDATA section syntax would preclude including iXML text in XML
documents, which seems less than ideal)


liam

-- 
Liam Quin, https://www.delightfulcomputing.com/
Available for XML/Document/Information Architecture/XSLT/
XSL/XQuery/Web/Text Processing/A11Y training, work & consulting.
Barefoot Web-slave, antique illustrations:  http://www.fromoldbooks.org

Received on Wednesday, 5 February 2025 19:38:29 UTC