我有一个xml,它有一个结构:
<?xml version="1.0" encoding="utf-8" ?>
<XYZInquiry>
<Source>ABC</Source>
<Info>19991234</Info>
<RawData>
<EmailAddress>abc@email.com</EmailAddress>
</RawData>
</XYZInquiry>
和相应的XSD验证为:
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema id="XYZInquiry" elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="XYZInquiry">
<xsd:complexType>
<xsd:all>
<xsd:element name="Source" minOccurs="1" maxOccurs="1" type="xsd:string" />
<xsd:element name="Info" minOccurs="1" maxOccurs="1" type="xsd:string" />
<xsd:element name="RawData" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="EmailAddress" minOccurs="0" maxOccurs="1"/>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
我需要阅读Info Tag并根据前4位数字,我需要在RawData标签上放置条件。即如果“信息”值以1234开头,则允许使用RawData标签,否则为无效。 请建议。