[Home] [By Thread] [By Date] [Recent Entries]


> Not entirely sure whether recursive apply is the central problem: One 
> might be able to infer what type of the input is from the type of the 
> <xsl:template match="..."> and the input schema.

The only cases where the match pattern enables one to do any static type
inference is when the match is specifically against a schema type, for
example

  match="schema-element(my:invoice)"

In the much more common case where elements are matched by name, for example

  match="my:invoice"

no formal inferencing is possible, because this will match any element
called my:invoice whether it conforms to a schema definition of that name or
not. However, it is possible in this case to do some tentative inferencing,
and generate warning messages of the form "if the input is a valid invoice,
this template will produce no output". 

Michael Kay


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member