- From: Sheila Thomson <discuss@bluegumtree.com>
- Date: Mon, 02 Mar 2026 23:55:31 +0000
- To: public-ixml@w3.org
- CC: Norm Tovey-Walsh <norm@saxonica.com>, John Lumley <john@saxonica.com>
- Message-ID: <3A724CE5-12C2-4BF7-BE62-C835B183AEA0@bluegumtree.com>
I wasn't meaning that the iXML grammar should state what iXML parser to use. I was thinking about how I might specify which iXML parser to use in my XSLT/XQuery/XProc application. At the moment, that's most commonly done outside of the code, when configuring the "outer" application (XSLT/XProc processor, XQuery DB) but usually the expectation seems to be that the same iXML processor will be used to apply all iXML grammars. I was thinking of use-cases where more than one IXML grammar will be applied, each with different iXML parsers. In XSLT and XQuery the iXML grammar will most likely be applied using fn:invisible-xml and in XProc it may be applied using fn:invisible-xml or p:invisible-xml. In my use-case, the developer knows what iXML parsers are available in the run-time environment. I was wondering about the viability of controlling that switch via an option in (fn|p):invisible-xml, passing in a URL (path/system ID/public ID) to the iXML parser, for example. Alternatively, if you didn't know what iXML parsers were going to be available in the run-time environment, maybe something could be done to select them by iXML parsing algorithm... (a prioritised list) this is getting quite extreme now though! Especially as I'm not sure that all the iXML parsers share which algorithm(s) they use. Best to stick to examples where the run-time environment is a white-box.
Sheila
On 2 March 2026 21:54:43 GMT, Bethan Tovey-Walsh <bytheway@linguacelta.com> wrote:
>A grammar can't be forbidden from being used with any implementation, so it's difficult to imagine how a statement about which implementation you want to use would be meaningful. If I try to use a grammar with coffeepot, but it has a "...using MarkupBlitz" statement in it, how does that work? Does it fail? Is coffeepot expected to call MarkupBlitz? What happens if (gods forbid) MarkupBlitz ceases to exist?
>
>BTW
>
>****************************************************
>
>Dr. Bethan Tovey-Walsh
>
>linguacelta.com <http://linguacelta.com/>
>
>Golygydd | Editor geirfan.cymru <http://geirfan.cymru/>
>
>Croeso i chi ysgrifennu ataf yn y Gymraeg
>
>
>On 2 Mar 2026, at 21:00, Graydon Saunders <graydonish@fastmail.com> wrote:
>
>
>+include animal as muppet from "muppets.ixml"
>
>from Norm's symposium presentation seems like it could extend.
>
>+include animal as muppet from "muppets.ixml" using processor-name
>
>seems like it could specify the processor or a preferred processor, while
>
>+try animal as muppet from "muppets.ixml"
>
>seems like it could specify the more detailed grammar to try for a specific non-terminal. Which means it doesn't show in the non-terminal in this grammar specifically but that also means there's one line to change.
>
>On Mon, Mar 2, 2026, at 12:31, Norm Tovey-Walsh wrote:
>
>John Lumley <john@saxonica.com <mailto:john@saxonica.com>> writes:
>
>> I think Norm was considering a two stage match/parse process. Something like:
>
>>
>
>> nonterminal: [L]+ {grammar: more-detailed-grammar.ixml <http://more-detailed-grammar.ixml>}.
>
>>
>
>> where during the first pass nonterminal matches a string of letters (which will be retained as a text node below <nonterminal>, and then passing that input to parsing against more-detailed-grammar.ixml <http://more-detailed-grammar.ixml> in a subsequent phase. It could of course nest.
>
>
>Yes, though I’ve come no where near even imagining a plausible syntax for it yet.
>
>
> Be seeing you,
>
> norm
>
>
>--
>
>Norm Tovey-Walsh
>
>Saxonica
Received on Monday, 2 March 2026 23:55:53 UTC