- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第06章习题答案
第06章 使用XSL显示XML页面
1.XSL与CSS有哪些不同之处?
答案:
XSL和CSS都可以格式化XML。它们之间主要有以下不同之处:
(1)CSS有局限性。CSS没有办法让XML文件中的同一个数据多次在页面上显示出来,而XSL却能做到这一点。这是因为它们的需找数据的机理是不同的,CSS技术的显示机理是从头到尾一次扫描XML文件,遇到匹配的标记,就以当前的样式显示。XSL则是通过路径的方式来定位数据,从而可以轻易地提取出特定的数据。
(2)CSS语法简单。CSS只是通过选择符和属性列表来定义数据的样式,XSL则提供了循环、条件、选择等控制语句。从这方面讲,XSL更接近于程序设计语言,可以和其他语言进行数据交互,较CSS有本质上的区别。
(3)从语法上讲,XSL是一种特殊的XML文件。因此,XSl必须满足XML规范。CSS则是具有其自身语法的语言。
2.一个XSL文件的基本结构是什么?
答案:
XSL文件是一个特殊的XML文件,所以,XSL的文件结构必须满足XML规范,一个XSL样式文件也必须有XML声明。编码必须和其关联的XML文件编码一致。XSL样式文件的根标记必须是“stylesheet”,必须包含版本声明。使用的名称空间是/TR/WD-xsl。还应该包含根模板。一个XSL样式文件的最基本的结构应该如下代码所示:
?xml version 1.0 xsl:stylesheet version 1.0 xmlns:xsl /TR/WD-xsl
xsl:template math /
内容描述
/xsl:template
/xsl:stylesheet
3.假设有如下的XML文件,xiti3.xml:
?xml version 1.0 encoding gb2312 name id 1 张三 1111111
座机电话号码 zhangsan1@aa.bb name id 2 张三 座机电话号码
zhangsan2@aa.bb name id 2 李四
座机电话号码
lisi@aa.bb (1)执行下面的语句会得到什么结果?
xsl:for-each select root/persion
xsl:value-of select */* /
/xsl:for-each
(2)执行下面的语句会得到什么结果?
xsl:for-each select root/persion xsl:value-of select ./name[@id$gt$1][value $ne$ 李四] /
/xsl:for-each
(3)写一个模板,使之定位到tel标记,该tel标记具有如下特征:具有父标记lxfs且含有子标记home。
答案:
(1)运行结果:1111111 座机电话号码 座机电话号码
说明:当前路径是“root/persion”,“*/*”表示“persion”标记的任意子标记的子标记,“ xsl:value-of select */* / ”只能输出第一个标记的内容,所以得到上面的结果。
(2)运行结果:张三2 xsl:template match //lxfs/tel[home]
xsl:value-of /
/xsl:template
4.请写出第3题中的XML文件xiti3.xml经过如下的XSL文件变换得到的HTML文件。
?xml version 1.0 encoding gb2312 xsl:stylesheet version 1.0 xmlns:xsl /TR/WD-xsl
xsl:template match /
xsl:element name html
xsl:element name body
xsl:element name table
xsl:attribute name border 1 /xsl:attribute
xsl:attribute name width 300 /xsl:attribute
xsl:element name tr
xsl:element name td
xsl:attribute name align center /xsl:attribute
name
/xsl:element
xsl:element name td
xsl:attribute name align center /xsl:attribute
lxfs
/xsl:element /xsl:element xsl:for-each select root/persion xsl:element name tr xsl:apply-templates / /xsl:element /
文档评论(0)