EXSLT语法问题
毫无疑问,这将是显而易见的事情,但以下代码在标记行上有 2 个错误:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:date="http://exslt.org/dates-and-times"
extension-element-prefixes="date">
<xsl:import href="date/date.xsl" />
<xsl:template match="//day">
<td>
<date:day-in-month(<xsl:value-of select='@start_date' />)/> <!--problem here-->
</td>
</xsl:template>
</xsl:stylesheet>
错误是:
- 标记缺少右括号 '>'
- 缺少结束标记“日期:月中的某天”
据我所知,这两种情况都不是。有什么想法,还是我只是盲目的?
No doubt this will be something obvious, but the following code has 2 errors on the marked line:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:date="http://exslt.org/dates-and-times"
extension-element-prefixes="date">
<xsl:import href="date/date.xsl" />
<xsl:template match="//day">
<td>
<date:day-in-month(<xsl:value-of select='@start_date' />)/> <!--problem here-->
</td>
</xsl:template>
</xsl:stylesheet>
The errors are:
- Tag missing closing bracket '>'
- Missing end tag "date:day-in-month"
So far as I can see neither of those is the case. Any thoughts, or am I just blind?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对于初学者来说,XSLT 必须始终是有效的 XML。你的显然不是,因为你将一个标签嵌套在另一个标签中。这是你做错事的第一个线索。
其次,
date:day-in-month
是一个 XPath 函数,而不是一个元素,因此必须在 XPath 表达式中使用。例如,后者可以是 xsl:value-of/@select 属性的值:For starters, XSLT must always be valid XML. Yours clearly isn't, since you nest one tag inside another. This is your first clue that you do something wrong.
Second,
date:day-in-month
is an XPath function, not an element, and therefore must be used in an XPath expression. The latter can, for example, be a value ofxsl:value-of/@select
attribute: