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


> "Michael Kay" <michael.h.kay@n...> wrote:
> > (Under these rules, a Basic XSLT Processor must be able to 
> manipulate 
> > atomic values conforming to any of the XML Schema built-in 
> types, for 
> > example strings, integers, decimals, doubles, dates, times, QNames. 
> > But a Basic XSLT processor does not support type 
> annotations on nodes 
> > in the data model: all nodes are untyped. And it does not support 
> > user-defined types.)
> 
> Could you clarify this?  Does this mean that a basic XSLT 
> processor MUST understand all the schema types, but MAY NOT 
> report these types?
> 

It means that you can manipulate strings, integers, dates, times, etc -
all 44 built-in types - but you cannot attach type annotations to nodes.


So with a Basic XSLT Processor I can do:

<xsl:if test="xs:date(@date-of-marriage) gt xs:date(@date-of-death)">

which takes the string values of two attributes, converts each one to a
date, and then compares them as dates. But I cannot do a date comparison
as:

<xsl:if test="@date-of-marriage gt @date-of-death">

which relies on the schema processor annotating these attributes as
being of type date.

I hope this makes it clearer.

Michael Kay


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