0

我需要为以下 XML 创建验证文件(DTD 或 Schema 或其他):

<?xml version="1.0" encoding="UTF-8"?>
<Result>
  <StatusCode>1</StatusCode>
  <StatusMessage>
     <SSPReturnMessage>
       <S>false</S>
       <Date>23-Jan-2013 14:33</Date>
       <EL>
         <E EC="473">
            <ES><![CDATA[Error message]]></ES>
         </E>
       </EL>
     </SSPReturnMessage>
  </StatusMessage>
  <Data>
    <LocalPort>-1</LocalPort>
    <TunnelID></TunnelID>
  </Data>
</Result>  

Data 标签是可选的,里面的标签可以是任何东西(任何标签名称)。
问题是如何做到这一点以及使用哪种技术?DTD 还是模式?甚至是别的什么?

4

1 回答 1

1

你不能用 DTD 做到这一点。您可以声明Data为:

<!ELEMENT Data ANY>

Data但是仍然需要声明的任何子级(您不能这样做,因为您不知道这些元素将是什么)。

我认为您是正确的,并且需要xs:any在 XSD 中使用。

于 2013-01-23T17:00:49.997 回答