- From: Tom Hillman <tom@expertml.com>
- Date: Tue, 14 Dec 2021 15:27:28 +0000
- To: Norm Tovey-Walsh <norm@saxonica.com>, "C. M. Sperberg-McQueen" <cmsmcq@blackmesatech.com>
- Cc: public-ixml@w3.org
- Message-ID: <df6a4084-7c6e-4ed5-b6ca-e781c20fcb57@Spark>
I would add for completeness: 5. Pragmas may occur as an annotation to a rule, terminal, or non terminal, where they apply to the thing they're annotating; or within a rule, where they again apply to the rule; or as an alternative to a rule, where they apply to the grammar as a whole (i.e. the `ixml` element in the xml representation). _________________ Tomos Hillman eXpertML Ltd +44 7793 242058 On 14 Dec 2021, 14:51 +0000, C. M. Sperberg-McQueen <cmsmcq@blackmesatech.com>, wrote: > > > > On 14,Dec2021, at 5:13 AM, Norm Tovey-Walsh <norm@saxonica.com> wrote: > > > > Having arrived to the group late, I didn’t have any expectations for the > > pragmas proposal. It’s fairly ambitious, but it seems well designed. > > > > Intuitively, it feels like something I’d prefer to have in V1 than see > > added later. But it also feels like it’s substantial and would take a > > fair bit of time to shake out fully. And I think the proposal is longer > > than the current ixml spec, so there’s a sense in which it feels like > > it’s adding quite a bit of complexity. > > My apologies. One reason the proposal is so long is that > I needed to persuade myself that it would work to solve > the kinds of things people were suggesting it might solve. > > But proposal F amounts to this: > > 1 Some mechanism for declaring namespaces is needed, so that > pragmas can have QNames; the document defines two ways > to do this and proposal F is not fussed about which one is chosen. > > 2 Pragmas have the syntax given: ‘[‘, pmark?, QName, s, pragma-data, ‘]’. > > 3 When the ixml grammar is translated into an XML grammar, > pragmas have the XML form implied by the syntax of pragmas > (and this point thus does not need to be mentioned in the spec). > > 4 The schema for the XML form should also allow pragmas > to contain additional elements beyond pragma-data. > > Everything else in the pragmas.md document amounts to a > long and pedantic argument that these four points are > enough, with worked examples showing that the mechanism > described suffices for the use cases. > > It is not spec prose and not intended to be spec prose. It > should turn into a few paragraphs of spec prose. > > > > > > That said, the requirements sketched out for V2 feel like they’d be > > better addressed with something like the pragmas proposal than through > > ad hoc syntax extensions. I’m not, for example, especially keen on the > > “nonterminal^serializedname” syntax. > > > > One of the benefits of XML is that we have a extensive set of tools > > designed to query, transform, and otherwise manipulate it. They work > > well, they’re well understood, and widely available. > > > > I think one could take the philosophical position that *all* ixml needs > > to do is get non-XML data into XML. Anything you want to do after that: > > add namespaces, rename elements, insert text, etc. is an XML problem and > > ixml doesn’t need to solve it. > > > > You could imagine an ixml step being a first stage of a *cough* > > pipeline, for example. > > > > > * Context sensitivity > > > > With respect to this requirement, there must be history about it that > > I’m unaware of. It surprises me here and it surprised me a little bit in > > the pragmas proposal. It’s in opposition to the V1 requirement that > > users shouldn’t have to know the finer points of parser theory. Perhaps > > it’s a consequence of my implementation strategy, but it doesn’t feel > > like something I’d be anticipating supporting unless, perhaps, it > > applied to the whole grammar. But I’m still a n00b about how this is > > going to work and be used, so I’m prepared to discover differently. > > > > Be seeing you, > > norm > > > > -- > > Norm Tovey-Walsh > > Saxonica > >
Received on Tuesday, 14 December 2021 15:27:51 UTC