_________________
* Наименование пункта 8.3 в бумажном оригинале выделено курсивом. - Примечание изготовителя базы данных.
Документ SCL - XML начинается с XML-элемента prolog (пролог), затем следуют определенные ниже элементы. Prolog содержит идентификацию версии XML и применяемую кодировку символов. Предпочтительной является кодировка формата UTF-8. В элементе SCL содержится часть полного определения SCL:
<?xml version="1.0" encoding="UTF-8"?> <SCL xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.iec.ch/61850/2003/SCLSCL.xsd"> | ||
<!-- здесь идут секции Header/Substation/IED/Communication/DataTypeTemplates, |
как определено в разделе 9-->
</SCL> |
где SCL.xsd - конкретный файл, содержащий определение схемы SCL.
Следует обратить внимание: для XML-процессора это предполагает, что определение схемы SCL (то есть файлы, перечисленные в таблице 1) находится в том же каталоге, в котором находится SCL-файл экземпляра. Если это не так, то здесь должен быть указан полный путь к схеме. В качестве альтернативы большинство XML-процессоров допускают ручное задание положения схем (за пределами документа экземпляра).
Элемент SCL должен содержать секцию Header и по меньшей мере одну из следующих секций: Substation, Communication, IED, DataTypeTemplates, - для которых ниже приведено пояснение. Секции Substation и IED могут появиться несколько раз. Рисунок 4 дает общее представление в виде UML-схемы. Корректное определение XML schema приводится далее.
<xs:element name="SCL"> | |||||||
<xs:complexType> | |||||||
<xs:complexContent> | |||||||
<xs:extension base="tBaseElement"> | |||||||
<xs:sequence> | |||||||
<xs:element name="Header" type="tHeader"> | |||||||
<xs:unique name="uniqueHitem"> | |||||||
<xs:selector xpath="./scl:History/scl:Hitem"/> <xs:field xpath="@version"/> <xs:field xpath="@revision"/> | |||||||
</xs:unique> | |||||||
</xs:element> <xs:element ref="DataTypeTemplates" minOccurs="0"/> | |||||||
</xs:sequence> | |||||||
</xs:extension> | |||||||
</xs:complexContent> | |||||||
</xs:complexType> |
Все элементы являются производными типа tBaseElement и поэтому наследуют возможность содержания элементов Text и Private, а также могут содержать элементы и атрибуты из других пространств имен. Элементы, являющиеся производными подтипов tUnNaming, tNaming и tIDNaming, дополнительно наследуют атрибут desc.