Я пытаюсь включить аннотации в схему, и кажется, что это вызывает проблемы во время проверки. Я получаю сообщение об ошибке:
"Проверка [построение схемы по исключению формата]: s4s-elt-must-match.1: содержание> Amount должно совпадать (annotation ?, (simpleType | complexType) ?,> (unique | key | keyref) ) *)). Обнаружена проблема, начиная с: annotation. "
Насколько я могу судить, моя схема правильная, как и XML. Я проверил, что оба они правильно сформированы, и в Visual Studio, и в онлайн-проверках Схемы оба правильно сформированы и действительны.
Я использую небольшую программу, основанную на Java.
Если я удаляю тег, он проверяется правильно, поэтому кажется, что это что-то окружающее. Я не совсем уверен, что причиной является проблема с моим XML или программным обеспечением, которое я использую, но я бы предпочел оставить его для целей документации.
Я включил XML и XSD ниже. Это короткие примеры, представляющие фактические XML и XSD, которые являются собственностью и содержат PHI.
XML:
<?xml version="1.0" encoding="UTF-8"?>
<ns2:Root xmlns:ns2="http://tempuri.org/XMLSchema.xsd">
<ns2:Fruit>Apple</ns2:Fruit>
<ns2:Amount>3</ns2:Amount>
</ns2:Root>
XSD:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema targetNamespace="http://tempuri.org/XMLSchema.xsd"
elementFormDefault="qualified"
xmlns="http://tempuri.org/XMLSchema.xsd"
xmlns:mstns="http://tempuri.org/XMLSchema.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
<xs:element name="Root">
<xs:complexType>
<xs:sequence>
<xs:element name="Fruit" type="Fruit_Type"/>
<xs:element name="Amount" type="xs:int">
<xs:annotation>
<xs:documentation>
Amount of Fruit
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="Fruit_Type">
<xs:annotation>
<xs:documentation>Testing
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value = "Apple"/>
<xs:enumeration value = "Banana"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>