-- 作者:xieyimin008
-- 发布时间:12/15/2007 10:50:00 PM
-- [求助]请结合本例子解释根节点,谢谢
声明本人是菜鸟,如果您不嫌弃,请赐教! 问题主要是针对"/"和根节点提问. 例一:resume.xml(文件) <?xml version="1.0" encoding="GB2312"?> <?xml:stylesheet type="text/xsl" href="resume_template.xsl"?> <document> <resume> <name>禹希初</name> <sex>男</sex> <birthday>1977.5</birthday> <skill>数据库设计与维护</skill> <skill>WEB开发</skill> </resume> </document> resume_template.xsl(文件) <?xml version="1.0" encoding="GB2312"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <!--根模板--> <xsl:template match="/"><!--为什么不能改成<xsl:template match="document">,理由:document是根结点--> <HTML><HEAD><TITLE>个人简历</TITLE></HEAD> <BODY> <xsl:apply-templates select="document/resume"/><!--为什么可以改成 select="./document/resume",但是不能改成select="./resume"--> </BODY> </HTML> </xsl:template> <!--简历模板--> <xsl:template match="resume"> <TABLE border="1" cellspacing="0"> <CAPTION>个人简历( <xsl:eval>formatIndex(childNumber(this),"I")</xsl:eval> )</CAPTION> <xsl:apply-templates select="name"/> <xsl:apply-templates select="sex"/> <xsl:apply-templates select="birthday"/> <TR/> <TD>技能</TD><TD COLSPAN="5"> <TABLE cellspacing="0"> <xsl:apply-templates select="skill"/> </TABLE> </TD> </TABLE> <BR/> </xsl:template> <!--姓名模板--> <xsl:template match="name"><TD>姓名</TD> <TD><xsl:value-of/></TD> </xsl:template> <!--性别模板--> <xsl:template match="sex"><TD>性别</TD> <TD><xsl:value-of/></TD> </xsl:template> <!--生日模板--> <xsl:template match="birthday"><TD>生日</TD> <TD><xsl:value-of/></TD> </xsl:template> <!--技能模板--> <xsl:template match="skill"> <TR><TD><xsl:value-of/></TD></TR> </xsl:template> </xsl:stylesheet> 归根结底就是不明白"/"是否等价根节点,根节点又是不是最外层的那个节点,如上例的<document></document>,根节点是不是一定要在dtd中定义?希望能尽可能详细的回答,谢谢! [此贴子已经被作者于2007-12-16 10:10:27编辑过]
|