У меня есть этот фрагмент схемы, который не проверяется.Ошибка проверки схемы XSD
<?xml version="1.1" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:group name="colorrgbGroup">
<xs:all>
<xs:element name="r" type="xs:unsignedShort" minOccurs="1" maxOccurs="1"/>
<xs:element name="g" type="xs:unsignedShort" minOccurs="1" maxOccurs="1"/>
<xs:element name="b" type="xs:unsignedShort" minOccurs="1" maxOccurs="1"/>
<xs:element name="a" type="xs:unsignedShort" minOccurs="0" maxOccurs="1"/>
</xs:all>
</xs:group>
<xs:group name="colornameGroup">
<xs:all>
<xs:element name="colorName" type="xs:normalizedString" minOccurs="1" maxOccurs="1"/>
<xs:element name="a" type="xs:unsignedShort" minOccurs="0" maxOccurs="1"/>
</xs:all>
</xs:group>
<xs:group name="colorpresetGroup">
<xs:all>
<xs:element name="preset" type="xs:normalizedString" minOccurs="1" maxOccurs="1"/>
<xs:element name="a" type="xs:unsignedShort" minOccurs="0" maxOccurs="1"/>
</xs:all>
</xs:group>
<xs:element name="color">
<xs:complexType>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:group ref="colorpresetGroup"/>
<xs:group ref="colornameGroup"/>
<xs:group ref="colorrgbGroup"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Я пытаюсь сказать, что цвет элемент имеет один из трех возможных групп, как ребенок, и может быть только один из вариантов, один раз. Как вы можете видеть, все три варианта имеют альфа-канал как необязательный.
Если я меняю '<' xs: all '>' теги на '<' xs: sequence '>' теги, это проверяет правильно. Но для «colorrgbGroup» мы хотим, чтобы пользователь мог размещать RGBA, ABGR, ARGB, BGRA и т. Д., Поэтому мы предпочитаем использовать «<» xs: all '>' over '<' xs: sequence ' >».
Я использую это website, чтобы проверить мою проверку.
Каждый из '<' xs: group '>' options in my '<' xs: choice '>' дает мне следующую ошибку.
Ошибка - строка 30, 51: org.xml.sax.SAXParseException; lineNumber: 30; columnNumber: 51 cos-all-limited. 1.2: Группа моделей «все» должна появляться в частице с «{'min встречается»}' = '{' max встречается '}' = 1 и , что частица должна быть частью пары, которая составляет '{ 'content Тип'} 'определения сложного типа.
Раньше я рассматривал схемы и модифицировал существующие схемы, но это мой первый раз, когда я пишу один с нуля. Любая помощь очень ценится!
Спасибо! Todd
Спасибо, я боялся, что это может быть так. – Todd