Ruby on Rails コードで XML を作成し、UTF-16 エンコーディングの XSD を使用して検証しました。
XML では、単一の名前を挿入すると機能しますが、複数の名前を挿入するとエラーが発生します。
<city>
<groups>
<name></name>
</groups>...........It's working fine
</city>
<city>
<groups>
<name></name>
<name></name>
</groups>...........It's raise error
<city>
"FAILED: Error: Element 'name': This element is not expected. at :107."
XML に複数のタグを挿入する際の制限はありますか?
これが私のXSDです:
<?xml version="1.0" encoding="utf-16"?>
<xsd:element name="city">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="groups">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="name" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
モデルは次のとおりです。
xml.tag!("city"){
grp = map_groups(city.groups)
grp.each { |grp_code|
xml.groups{
xml.name("john")
}
} unless grp.empty?
}