Читайте также:
|
|
Во время загрузки файла конфигурации производится его проверка при помощи XML Schema. XML Schema загружается из файла schema.xsd. Она определяет тип данных, использующиеся в аттрибутах свойств и элементов, последовательность элементов и их количество, допустимые значения для перечислений.
Перечисление определяется следующим образом:
<xs:attribute name="name" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Plain"/>
<xs:enumeration value="Line Comments"/>
<xs:enumeration value="Block Comments"/>
<xs:enumeration value="Strings"/>
<xs:enumeration value="Directives"/>
<xs:enumeration value="Types"/>
<xs:enumeration value="Keywords"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
Здесь аттрибут name определён как обязательный (use="required"), значение может быть только текстовым (base="xs:string") и может быть одним из значений аттрибута value элемента xs:enumeration.
Корневой элемент language должен содержать 3 дочерних элемента: style, keywords и types. На языке XML Schema это правило записывается так:
<xs:element name="language">
<xs:complexType>
<xs:sequence>
<xs:element ref="style"/>
<xs:element ref="keywords"/>
<xs:element ref="types"/>
</xs:sequence>
<xs:attribute name="name" use="required" type="xs:string" fixed="C++"/>
</xs:complexType>
</xs:element>
Элемент types может содержать 1 или более дочерних элементов type, значения которых должны быть строкового типа. Данное правило реализуется при помощи следующей конструкции:
<xs:element name="types">
<xs:complexType>
<xs:sequence>
<xs:element ref="type" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="type" type="xs:string"/>
Элемент style содержит 7 дочерних элементов entry, содержащих данные сложного типа. Правило для данного утверждения выглядит следующим образом:
<xs:element name="style">
<xs:complexType>
<xs:sequence>
<xs:element ref="entry" minOccurs="7" maxOccurs="7"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Разработка программы
Дата добавления: 2015-11-04; просмотров: 40 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Формат файла конфигурации | | | Загрузка файла конфигурации |