代码之家  ›  专栏  ›  技术社区  ›  William Walseth

在XML中过度使用CDATA?

  •  -2
  • William Walseth  · 技术社区  · 7 年前

    我正在与使用XML指定装运清单(在给定日期发送邮件)的国家邮政承运人集成。 规范要求地址中的每个元素都包含在一个CDATA部分中。
    为什么要这样做?常规XML转义不能解释地址中的文本吗?

    例如:

       <RecipientInfo>
          <RecipientName><![CDATA[Michael Ong]]></RecipientName>
          <RecipientAddress1><![CDATA[test address 1]]></RecipientAddress1>
      <RecipientAddress2><![CDATA[test address 2]]></RecipientAddress2>
          <RecipientPostalCode><![CDATA[21533]]></RecipientPostalCode>
          <RecipientContactNumber><![CDATA[96600000001]]></RecipientContactNumber>
       </RecipientInfo>
       <SenderInfo>
         <SenderName><![CDATA[Sally Ng]]></SenderName>
         <SenderAddress1><![CDATA[sender address 1]]></SenderAddress1>
         <SenderPostalCode><![CDATA[518000]]></SenderPostalCode>
       </SenderInfo>
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Terry Carmen    7 年前

    为什么要这样做?常规XML转义不能解释地址中的文本吗?

    之所以这样做,是因为有人不想在路上处理某些角色或其他角色未能正确逃脱的问题。CDATA可以消除问题。

    可能有一个设计团队在某个地方从互联网上提取了一个样本,并使用了CDATA,所以现在它是你的了。8)

    我正在和一家国家邮政公司整合

    你不会改变任何人的想法的。你能做的最好的事就是让人们生气。

    做他们想做的,继续你的生活。

    推荐文章