У меня есть схема, где есть 3 элемента, и эти 3 элемента все еще имеют больше подэлементов. Позволяет назвать 1-й элемент заголовком, 2-й - записью, 2-й - нижним колонтитулом.
Один и тот же заголовок, несколько раз записи и еще один случай появления нижнего колонтитула.
поэтому вход в схему выглядит как
header
record..
record..
...
..
footer
Теперь моя проблема. моя схема определяется так
<xs:element minOccurs="1" maxOccurs="1" name="HEADER">
<xs:element minOccurs="1" maxOccurs="unbounded" name="Record">
<xs:element minOccurs="1" maxOccurs="1" name="FOOTER">
когда файл (с заголовком 2 записи и нижний колонтитул) анализируется через эту схему. синтаксический анализатор распознает, распознает заголовок и обе записи и выдает исключение после распознавания 2-й записи и не выдает нижний колонтитул. Как мы определяем, что max и min происходят, когда есть 2 или более элементов, а средний элемент имеет неограниченные значения, поскольку max происходит
EDIT:
спасибо за ответы. Это мой xsd файл.
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:NS="sample.xsd" xmlns="sample.xsd" elementFormDefault="qualified" targetNamespace="sample.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="PTRO">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="HEADER">
<xs:complexType>
<xs:sequence>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="header_sub_element">
<xs:simpleType>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="1" maxOccurs="unbounded" name="Record">
<xs:complexType>
<xs:sequence>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="Record_sub_element">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="11" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="1" maxOccurs="1" name="FOOTER">
<xs:complexType>
<xs:sequence>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="footer_sub_element">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="9" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
@ marc_s проблема в том, что когда входной файл (файл .txt), содержащий заголовок, 2 записи, нижний колонтитул анализируется с использованием этой схемы, анализатор распознает заголовок и записи ... и после этого он выдает исключение, так как он не распознает нижний колонтитул Максимальное количество записей не ограничено. Это как-то связано с исключением ??