0
私は私のXMLスキーマの以下の部分を持っている:PAYMENT_DATE、bank_acct、およびamt_due:XSD条件ロジックと正規表現
<xs:element minOccurs="0" maxOccurs="unbounded" name="aux_data">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="field_name" type="xs:string" />
<xs:element minOccurs="0" name="field_value" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
"field_nameが" 3つの異なる値のうちの1つを有すること。 "field_value"は "field_name"ごとに異なる正規表現と一致する必要があります。
このスキーマには、次のJavaコードと同等のものは何ですか?
if(field_name.equals("payment_date")) {
field_value.matches(/**regex*/);
}
else if(field_name.equals("bank_acct")) {
field_value.matches(/**another regex*/);
}
xs:date型は使用できません。日付形式にダッシュを付けることができないため、xs:stringを使用する必要があります。
このような "メタ"デザインパターンが適切な場合があります(他の形式との変換が簡単な場合があります)。しかし、それはXSDでうまくサポートされていないデザインパターンです。 –