4

例如,如何在 XML 文档中定义常量

<?xml version="1.0"?>
<City>
   <Name>Seattle</Name>
   <State>WA</State>
</City>

<City>
   <Name>Tacoma</Name>
   <State>WA</State>
</City>

如何定义像“State=WA”这样的变量并在元素中使用它作为值?

4

3 回答 3

3

问题是很久以前的事了,但也许其他人对此感到困惑……以下可能是您想要的:

<?xml version="1.0"?>
<!DOCTYPE resources [
   <!ENTITY state "WA">
]> 
<City>
   <Name>Seattle</Name>
   <State>&state;</State>
</City>

<City>
   <Name>Tacoma</Name>
   <State>&state;</State>
</City>
于 2019-08-16T13:27:15.840 回答
2

XML 可以表示结构化信息,您可以通过向 XML 添加 DTD 或 XSD 来强制执行标记的结构。但是你不能用我们在编程语言中思考的方式来表示常量或变量。

于 2013-07-03T05:33:06.637 回答
1

您可以使用实体引用,例如&state;在 DTD 中定义实体扩展的地方。更灵活的是,您可以使用 XInclude。但我会用 XSLT 来做这件事。例如

 <xsl:stylesheet....>

 <xsl:param name="state"/>

 <xsl:template name="content">
  <City>
    <Name>Seattle</Name>
    <State><xsl:value-of select="$state"/></State>
  </City>

  <City>
    <Name>Tacoma</Name>
    <State><xsl:value-of select="$state"/></State>
  </City>
 </xsl:template>

然后,您可以调用提供参数值的样式表。

于 2013-07-03T09:05:39.737 回答