0
私はこのXSDを持っている:XSD検証制限ルート要素
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" >
<xsd:element name="F">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="unbounded" name="A" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
このXMLは有効ですが、それは間違っている
<F><F>
<A/>
</F></F>
私は、有効なだけで、このXMLに持って
<F>
<A/>
</F>
どのようにxsdでそれを行うには?
C#コード
XmlDocument xml = new XmlDocument();
using (MemoryStream ms = new MemoryStream(File.ReadAllBytes(xml)))
{
xml.Load(ms);
}
XmlSchemaSet schemas = new XmlSchemaSet();
schemas.Add("", xsdpath);
XDocument _xml = XDocument.Parse(xml.OuterXml);
_xml.Validate(schemas, (o, e) =>{});
これは重複していますか? [XDocument.Validateは常に成功します](https://stackoverflow.com/q/17232575/3744182)。 – dbc
hm ...確信が持てません...あなたはC#の検証コードでその問題を考えていますか? – Kira