Subject: RE: [xsl] Saxon 8B returns profile and version attributes from XHTML 1.1 From: "Jesper Tverskov" <jesper@xxxxxxxxxxx> Date: Mon, 23 Oct 2006 16:23:21 +0200 |
Nice! I thought it was necessary to use the unparsed-text() function and regex to test if an XHTML document is 1.0 or 1.1. It is news to me that we can say: <xsl:if test="//@version eq '-//W3C//DTD XHTML 1.1//EN'"> <!-- etc --> Jesper -----Original Message----- From: Michael Kay [mailto:mike@xxxxxxxxxxxx] Sent: 23. oktober 2006 12:35 To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] Saxon 8B returns profile and version attributes from XHTML 1.1 I think you will find that the DTD referenced in the source document defines default values for these attributes, and that the XML parser is therefore expanding the document to include these values before passing it on to Saxon. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Jesper Tverskov [mailto:jesper@xxxxxxxxxxx] > Sent: 23 October 2006 10:40 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Saxon 8B returns profile and version > attributes from XHTML 1.1 > > Hi list > > When I use Saxon 8B to return attributes and their values > from XHTML documents, something strange happens. > > If the document is XHTML 1.0 Strict! the attributes returned > are correct, but when the document is XHTML 1.1, a strange > empty "profile" attribute is also returned. Such a "profile" > attribute does not exist in XHTML. Also a "version" attribute > is returned ... there is no such thing in XHTML. > > XSLT, input and output documents are shown below: > > <?xml version="1.0"?> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns="http://www.w3.org/1999/xhtml" > xmlns:xhtml="http://www.w3.org/1999/xhtml" version="2.0" > exclude-result-prefixes="xhtml"> > <xsl:output indent="yes"/> > <xsl:template match="/"> > <html> > <head> > <title>Strange attributes</title> > </head> > <body> > <xsl:for-each select="//@*"> > <p> > <xsl:value-of select="name()"/> > <xsl:text>: "</xsl:text> > <xsl:value-of select="."/> > <xsl:text>"</xsl:text> > </p> > </xsl:for-each> > </body> > </html> > </xsl:template> > </xsl:stylesheet> > > > Input document: > > <?xml version="1.0"?> > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" > "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> > <html xmlns="http://www.w3.org/1999/xhtml"> > <head> > <title/> > </head> > <body class="yes"> > <p>asdf</p> > </body> > </html> > > > Output document: > > <p>version: "-//W3C//DTD XHTML 1.1//EN"</p> > <p>profile: ""</p> > <p>class: "yes"</p> > > > Best regards, > > Jesper Tverskov > http://www.xmltraining.biz
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Saxon 8B returns profile , Michael Kay | Thread | Re: [xsl] Saxon 8B returns profile , David Carlisle |
RE: [xsl] RE: XSLT 1.0 -- How to sp, cknell | Date | Re: [xsl] xinclude in XSLT[2], Frans Englich |
Month |