【问题标题】:CONTROL CHARACTERS IN XML ATTRIBUTE VALUESXML 属性值中的控制字符
【发布时间】:2016-06-08 11:54:22
【问题描述】:

这是一个常见问题,但我找不到令我满意的答案。 我正在使用专有工具(SIMATIC IT MES System),当我将属性值中带有“

<PARAM ATT1='DESPIECE' 
       ATT2='BU_O_DES' 
       ATT3= '1' 
       ATT3= '0' 
       ATT4='1.0' 
       ATT4= 'BU.SD01.L02' 
       ATT5= 'BU.SD01.L02' 
       ATT6='1ESP1586CV00' 
       ATT7='CLASS FIFO AÑOJO < 350'
       ATT8='08/06/2016' 
       ATT9='115001' 
       MARCA_EMPRESA='false' 
       VARIANTE='' 
       ID_CLASS_ESTABILIZACION='91'
 />

违规角色在 ATT7 中。

谢谢。

【问题讨论】:

  • 名称“CDATA”在 XML 中具有两种完全不同的含义,仅与 SGML 中的共同遗产相关。出现在元素中的“CDATA 部分”允许您使用特殊字符,例如 &lt;&amp; 而无需转义。在 DTD 中(显式或隐式)声明的 CDATA 类型的属性不会。
  • 谢谢!我想这让我很困惑..

标签: xml xml-parsing


【解决方案1】:

不幸的是,除了使用字符实体&amp;lt;“逃脱”&lt;,您没有其他解决方案。

如果您查看 XML 规范 §2.4 Character data and markup,您会看到定义如下:

人物资料

[14] CharData ::= [^' [^

简而言之,这意味着&lt;&amp; 必须始终在 XML 中转义。

【讨论】:

  • 非常感谢
猜你喜欢
  • 2012-02-24
  • 1970-01-01
  • 2023-03-15
  • 1970-01-01
  • 1970-01-01
  • 2021-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多