Re: [xsl] inserting a child element while honoring the parent element's content model

Subject: Re: [xsl] inserting a child element while honoring the parent element's content model
From: "Michael Kay michaelkay90@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 22 Feb 2023 20:46:49 -0000
> On 22 Feb 2023, at 20:38, Chris Papademetrious
christopher.papademetrious@xxxxxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> Hi Vincent, Wendell,
>
> I am interested in understanding how regular expressions are used to
check/enforce content models. Could you help me understand this, perhaps with
a simple example?
>
> Chris
>

Very straightforward in principle, if the content model is (head, para*) then
you just match the actual string of element names, say "head#para#para#"
against the regular expression "head#(para#)*" (where # is any delimiter
character that can't appear in a name). You have to refine that to deal with
namespaces, but it's not too hard.

I did actually consider implementing the real XSD processor this way, but I
couldn't see how to get satisfactory diagnostics.

Michael Kay
Saxonica

Current Thread