I am having trouble with XPath when trying to match elements in an xhtml
document stored in an xsl:variable. I have no trouble when the xhtml is
missing its DOCTYPE declaration, but can't match elements when the xhtml
is conforming. I used xalan for this example:
test.html:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.or
g/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>test doc</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
</head><body></body>
</html>
test.xsl:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:my="http://lib.virginia.edu/my-template-language">
<xsl:variable name="source" select="/" />
<xsl:template match="/">
<xsl:value-of select="$source/html/head/title" />
</xsl:template>
</xsl:stylesheet>
Result:
<?xml version="1.0" encoding="UTF-8"?>
I would like to see the title "test doc" there but it is not. If I
modify my test.html file it works:
test.html:
<html><head>
<title>test doc</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
</head><body></body>
</html>
Result:
<?xml version="1.0" encoding="UTF-8"?>
test doc
Can anyone let me know why this is not working with a valid xhtml
document?
Thanks in advance for any help,
--Doug
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list