|
|
@@ -0,0 +1,115 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
+<!--W3C Schema generated by XMLSPY v5 rel. 2 U (http://www.xmlspy.com)-->
|
|
|
+<xsd:schema
|
|
|
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
|
+ xmlns="http://www.croc.ru/Schemas/XmlFramework/Core/Config/1.0"
|
|
|
+ targetNamespace="http://www.croc.ru/Schemas/XmlFramework/Core/Config/1.0"
|
|
|
+ elementFormDefault="qualified"
|
|
|
+ attributeFormDefault="unqualified"
|
|
|
+ version="1.0"
|
|
|
+>
|
|
|
+ <!-- ОПРЕДЕЛЕНИЕ КОРНЕВОГО ЭЛЕМЕНТА ФАЙЛА КОНФИГУРАЦИИ -->
|
|
|
+ <xsd:element name="configuration">
|
|
|
+ <xsd:complexType mixed="true">
|
|
|
+ <xsd:sequence>
|
|
|
+ <xsd:element name="core" minOccurs="0">
|
|
|
+ <xsd:complexType>
|
|
|
+ <xsd:attribute name="debug-mode" type="xsd:boolean"/>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ <!--
|
|
|
+ Определяет режим работы Ядра в отладочном режиме; допустимые
|
|
|
+ значения "true" - Ядро работает в отладочном режиме, и "false" -
|
|
|
+ отладочный режим блокируется. Задание значения не обязательно;
|
|
|
+ по умолчанию используется "false".
|
|
|
+ -->
|
|
|
+ <!-- Содержание элемента может быть помечно как защищенное -->
|
|
|
+ </xsd:complexType>
|
|
|
+ </xsd:element>
|
|
|
+ <xsd:element name="storage" type="storageType"/>
|
|
|
+ <xsd:element name="server-objects">
|
|
|
+ <xsd:complexType>
|
|
|
+ <xsd:sequence>
|
|
|
+ <xsd:element name="file-name" type="xsd:string" maxOccurs="unbounded"/>
|
|
|
+ </xsd:sequence>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ <!-- Содержание элемента может быть помечно как защищенное -->
|
|
|
+ </xsd:complexType>
|
|
|
+ </xsd:element>
|
|
|
+ <xsd:element name="metadata">
|
|
|
+ <xsd:complexType>
|
|
|
+ <xsd:sequence>
|
|
|
+ <xsd:element name="file-name" type="xsd:string" maxOccurs="unbounded"/>
|
|
|
+ </xsd:sequence>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ <!-- Содержание элемента может быть помечно как защищенное -->
|
|
|
+ </xsd:complexType>
|
|
|
+ </xsd:element>
|
|
|
+ <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
|
|
|
+ <!-- Определяет режим функционирования ядра -->
|
|
|
+ <!-- Элемент, задающий перечень используемых реализаций подсистемы Storage -->
|
|
|
+ <!-- (Его определение дано ниже) -->
|
|
|
+ <!-- Элемент, задающий файл описания прикладных элементов ядра -->
|
|
|
+ <!-- Элемент, задающий перечень файлов метаданных приложения -->
|
|
|
+ </xsd:sequence>
|
|
|
+ <xsd:attribute name="ver-major" type="xsd:int" default="1"/>
|
|
|
+ <xsd:attribute name="ver-minor" type="xsd:int" default="0"/>
|
|
|
+ <xsd:attribute name="build" type="xsd:int" default="1"/>
|
|
|
+ <xsd:attribute name="instance-guid" type="xsd:string"/>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ <!--
|
|
|
+ В целом для приложения может быть задан номер версии, как триплет
|
|
|
+ номеров Major.Minor.Build. Номер версии используется механизмами
|
|
|
+ автоматической инсталляции и обновления.
|
|
|
+ Задание номера версии приложения не является обязательным.
|
|
|
+ -->
|
|
|
+ <!-- Номер версии (по умолчанию - 1) -->
|
|
|
+ <!-- Номер подверсии (по умолчанию - 0) -->
|
|
|
+ <!-- Номер сборки (приложения в целом, build; по умолчанию - 1) -->
|
|
|
+ <!--
|
|
|
+ Для конкретной инстанции конечного приложения может так же
|
|
|
+ задаваться уникальный номер (UUID) инстанции;
|
|
|
+ -->
|
|
|
+ <!-- Содержание элемента может быть помечно как защищенное -->
|
|
|
+ </xsd:complexType>
|
|
|
+ </xsd:element>
|
|
|
+ <!--
|
|
|
+ Элемент, задающий перечень используемых реализаций подсистемы Storage
|
|
|
+ -->
|
|
|
+ <xsd:complexType name="storageType">
|
|
|
+ <xsd:sequence>
|
|
|
+ <xsd:element name="connections" maxOccurs="unbounded">
|
|
|
+ <xsd:complexType>
|
|
|
+ <xsd:sequence>
|
|
|
+ <xsd:element name="connection" maxOccurs="unbounded">
|
|
|
+ <xsd:complexType>
|
|
|
+ <xsd:sequence>
|
|
|
+ <xsd:any namespace="##other" maxOccurs="unbounded"/>
|
|
|
+ </xsd:sequence>
|
|
|
+ <xsd:attribute name="n" type="xsd:NMTOKEN" use="required"/>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ </xsd:complexType>
|
|
|
+ </xsd:element>
|
|
|
+ <!--
|
|
|
+ Элемент, задающий данные, используеме для инициализации соединения
|
|
|
+ с СУБД - строку соединения. Определения именованы - используется
|
|
|
+ атрибут n
|
|
|
+ -->
|
|
|
+ </xsd:sequence>
|
|
|
+ <xsd:attribute name="storage-assembly" type="xsd:string" use="required"/>
|
|
|
+ <xsd:attribute name="storage-class-name" type="xsd:string" use="required"/>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ <!-- Задает наименование файла сборки с реализацией Storage -->
|
|
|
+ <!-- Задает наименование .NET-типа - класса реализации Storage -->
|
|
|
+ <!-- Содержание элемента может быть помечно как защищенное -->
|
|
|
+ </xsd:complexType>
|
|
|
+ <xsd:unique name="uniqueConnectionName">
|
|
|
+ <xsd:selector xpath="connection"/>
|
|
|
+ <xsd:field xpath="@n"/>
|
|
|
+ </xsd:unique>
|
|
|
+ </xsd:element>
|
|
|
+ <!-- Перечень должен включать как минимум одно определение -->
|
|
|
+ </xsd:sequence>
|
|
|
+ <xsd:attribute name="protected" type="xsd:boolean"/>
|
|
|
+ <!-- Содержание элемента может быть помечно как защищенное -->
|
|
|
+ </xsd:complexType>
|
|
|
+</xsd:schema>
|