2010-06-24 47 views
2

我想设计的东西像括号有效...是XSL标签

<DB[0]><xsl:value-of select="test"><DB[0]> 

将更新数据测试数据库表字段DB[0]。 但它不工作...因为xsl不允许使用[]括号。

+0

请提供一个例子。我只能猜测你想要达到的目标。 – musiKk 2010-06-24 07:26:11

+0

我想设计一些类似... 它将用数据测试更新数据库表字段DB [0]。但它不能用作xsl,它允许使用[]括号... – Manoj 2010-06-24 07:31:52

+0

根据XML规范,不允许使用方括号(如果我正确地阅读了规范)。无论如何,你应该使用索引的属性。 – musiKk 2010-06-24 09:25:15

回答

1
  1. 如果你需要创建一个良好的XML文档,然后像“<DB[0]>”的字符串是不是一个合法的名称。

  2. 如果你想创建只是文字,您可以alwyas通过指定这样做的:

<xsl:output method="text"/>

所以,这种转变

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output method="text"/> 

<xsl:template match="/"> 
    &lt;DB[0]><xsl:value-of select="test"/>&lt;/DB[0]> 
</xsl:template> 
</xsl:stylesheet> 

当应用于这个XML文档时,可以使用NT

<test>XXX</test> 

产生

<DB[0]>XXX</DB[0]> 
+0

我想要XML文档而不是文本。有没有办法做 xxx,然后用DB [0]替换DB“0”? – Manoj 2010-07-01 05:41:28

+0

@Manoj:不,既不是' xxx'也不' XXX'是格式良好的XML。我会说他们两个都没有和XML非常相似。 XML中的名称不能包含'['或']'字符。 – 2010-07-01 12:37:41

1

XML元素的命名约定

  • 名称可以包含任何alphanumeric 字符,但不能以 数字或标点字符开头。
  • 名称不能包含空格。
  • 名称不得以字母xml开头,因为它们可能很容易与XML文档定义混淆。
  • 请勿在元素名称中使用“:”字符。

有关详细定义,请访问here

因此,不允许'['或']'。