提交初版

This commit is contained in:
shi_jq 2024-10-30 11:54:46 +08:00
parent 985e85c370
commit 8ef8e35087
12760 changed files with 3087021 additions and 0 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,77 @@
EmETXe-i89U0-F75111 DIO SDK
版本DIO-EmETXe-i89U0-F75111-V2.0.1
1. 安裝 DIO-EmETXe-i89U0-F75111-Setup
執行 DIO-EmETXe-i89U0-F75111-Setup.exe
2. DIO 版本
string DIO_Version75111();
範例:
string sVersion = DIO_Version75111();
3. DIO 開啟
bool DIO_Open75111()
範例:
bool bDIO = DIO_Open75111 ();
4. DIO 模式
設定 DIO 輸入輸出模式 (請參考電路對應 75111 設定)
void DIO_Mode75111(int iAdd,int iMode)
範例:
DIO_Mode75111(0x10, 0x20); // GPIO15 為輸出, 其他 GPIO1X 為輸入
DIO_Mode75111(0x20, 0xE0); // GPIO25、GPIO26 及 GPIO27 為輸出, 其他 GPIO2X 為輸入
DIO_Mode75111(0x40, 0x00); // GPIO31~ GPIO31 為輸入
5. 設定 DO 輸出電位
void DIO_Data75111(int iAdd,int iData,int iMode)
範例:
DIO_Data75111(0x11, 0xDF, 0); // 設 DO1 為低電平
DIO_Data75111(0x11, 0x20, 1); // 設 DO1 為高電平
DIO_Data75111(0x21, 0x7F, 0); // 設 DO2 為低電平
DIO_Data75111(0x21, 0x80, 1); // 設 DO2 為高電平
DIO_Data75111(0x21, 0xBF, 0); // 設 DO3 為低電平
DIO_Data75111(0x21, 0x40, 1); // 設 DO3 為高電平
DIO_Data75111(0x21, 0xDF, 0); // 設 DO4 為低電平
DIO_Data75111(0x21, 0x20, 1); // 設 DO4 為高電平
6. 取得 DIO 電位 // 取得 GPIO1X 電位
int DIO_Status75111(int iAdd) // 取得 GPIO2X 電位
範例: // 取得 GPIO3X 電位
int iStatus12 = DIO_Status75111(0x12);
int iStatus22 = DIO_Status75111(0x22); // 取得 DI1 = GPIO16 電位
int iStatus42 = DIO_Status75111(0x42); // 取得 DI2 = GPIO17 電位
// 取得 DI3 = GPIO20 電位
int iDI1 = (iStatus12 >> 6) & 0x1; // 取得 DI4 = GPIO21 電位
int iDI2 = (iStatus12 >> 7) & 0x1; // 取得 DI5 = GPIO22 電位
int iDI3 = (iStatus22 >> 0) & 0x1; // 取得 DI6 = GPIO14 電位
int iDI4 = (iStatus22 >> 1) & 0x1; // 取得 DI7 = GPIO10 電位
int iDI5 = (iStatus22 >> 2) & 0x1; // 取得 DI8 = GPIO11 電位
int iDI6 = (iStatus12 >> 4) & 0x1; // 取得 DI9 = GPIO12 電位
int iDI7 = (iStatus12 >> 0) & 0x1; // 取得 DI10 = GPIO31 電位
int iDI8 = (iStatus12 >> 1) & 0x1; // 取得 DI11 = GPIO32 電位
int iDI9 = (iStatus12 >> 2) & 0x1; // 取得 DI12 = GPIO33 電位
int iDI10 = (iStatus42 >> 1) & 0x1;
int iDI11 = (iStatus42 >> 2) & 0x1; // 取得 DO1 = GPIO15 電位
int iDI12 = (iStatus42 >> 3) & 0x1; // 取得 DO2 = GPIO27 電位
// 取得 DO3 = GPIO26 電位
int iDO1 = (iStatus12 >> 5) & 0x1; // 取得 DO4 = GPIO25 電位
int iDO2 = (iStatus22 >> 7) & 0x1;
int iDO3 = (iStatus22 >> 6) & 0x1;
int iDO4 = (iStatus22 >> 5) & 0x1;

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
link libQtAV.so.1.13.0

View File

@ -0,0 +1 @@
link libQtAV.so.1.13.0

View File

@ -0,0 +1 @@
link libQtAV.so.1.13.0

Binary file not shown.

View File

@ -0,0 +1 @@
link libQtAVWidgets.so.1.13.0

View File

@ -0,0 +1 @@
link libQtAVWidgets.so.1.13.0

View File

@ -0,0 +1 @@
link libQtAVWidgets.so.1.13.0

Binary file not shown.

View File

@ -0,0 +1 @@
link libavcodec.so.58.54.100

View File

@ -0,0 +1 @@
link libavcodec.so.58.54.100

Binary file not shown.

View File

@ -0,0 +1 @@
link libavdevice.so.58.8.100

View File

@ -0,0 +1 @@
link libavdevice.so.58.8.100

Binary file not shown.

View File

@ -0,0 +1 @@
link libavfilter.so.7.57.100

View File

@ -0,0 +1 @@
link libavfilter.so.7.57.100

Binary file not shown.

View File

@ -0,0 +1 @@
link libavformat.so.58.29.100

View File

@ -0,0 +1 @@
link libavformat.so.58.29.100

Binary file not shown.

View File

@ -0,0 +1 @@
link libavresample.so.4.0.0

View File

@ -0,0 +1 @@
link libavresample.so.4.0.0

Binary file not shown.

View File

@ -0,0 +1 @@
link libavutil.so.56.31.100

View File

@ -0,0 +1 @@
link libavutil.so.56.31.100

Binary file not shown.

View File

@ -0,0 +1 @@
link libswresample.so.3.5.100

View File

@ -0,0 +1 @@
link libswresample.so.3.5.100

Binary file not shown.

View File

@ -0,0 +1 @@
link libswscale.so.5.5.100

View File

@ -0,0 +1 @@
link libswscale.so.5.5.100

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,17 @@
## Copyright (C) 2010-2015 iFLYTEK.
## Use ';' and '#' character for notation
## Note: Commands in this cfg file is case sensitive
##[logger]
##如果用户指定的日志文件路径无效那么MSC在运行中将不会记录日志信息
##file =
##title = Mobile Speech Client
##level = -1
##output = 1
##filter = -1
##style = -1
##flush = 0
##maxsize =
##overwrite = 1
##maxfile =
##cache =

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1 @@
link libyaml-cpp.so.0.6

View File

@ -0,0 +1 @@
link libyaml-cpp.so.0.6.2

Binary file not shown.

View File

@ -0,0 +1,4 @@
#!/bin/bash
install_path=$(dirname $(readlink -f $0))
cd $install_path/../../platform/centos7_debug/
gnome-terminal

View File

@ -0,0 +1,4 @@
#!/bin/bash
install_path=$(dirname $(readlink -f $0))
cd $install_path
gnome-terminal

View File

@ -0,0 +1,3 @@
#!/bin/bash
install_path=$(dirname $(readlink -f $0))
$install_path/sys_startup

Binary file not shown.

View File

@ -0,0 +1,17 @@
## Copyright (C) 2010-2015 iFLYTEK.
## Use ';' and '#' character for notation
## Note: Commands in this cfg file is case sensitive
##[logger]
##如果用户指定的日志文件路径无效那么MSC在运行中将不会记录日志信息
##file =
##title = Mobile Speech Client
##level = -1
##output = 1
##filter = -1
##style = -1
##flush = 0
##maxsize =
##overwrite = 1
##maxfile =
##cache =

Binary file not shown.

View File

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema targetNamespace="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:scl="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_SubStation.xsd"/>
<xs:include schemaLocation="SCL_IED.xsd"/>
<xs:include schemaLocation="SCL_Communication.xsd"/>
<xs:include schemaLocation="SCL_DataTypeTemplates.xsd"/>
<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="Substation" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="Communication" minOccurs="0"/>
<xs:element ref="IED" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="DataTypeTemplates" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:unique name="uniqueSubstation">
<xs:selector xpath="./scl:Substation"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="IEDKey">
<xs:selector xpath="./scl:IED"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="LNodeTypeKey">
<xs:selector xpath="./scl:DataTypeTemplates/scl:LNodeType"/>
<xs:field xpath="@id"/>
<xs:field xpath="@lnClass"/>
</xs:key>
<xs:keyref name="ref2LNodeTypeDomain1" refer="LNodeTypeKey">
<xs:selector xpath="./scl:IED/scl:AccessPoint/scl:LN"/>
<xs:field xpath="@lnType"/>
<xs:field xpath="@lnClass"/>
</xs:keyref>
<xs:keyref name="ref2LNodeTypeDomain2" refer="LNodeTypeKey">
<xs:selector xpath="./scl:IED/scl:AccessPoint/scl:Server/scl:LDevice/scl:LN"/>
<xs:field xpath="@lnType"/>
<xs:field xpath="@lnClass"/>
</xs:keyref>
<xs:keyref name="ref2LNodeTypeLLN0" refer="LNodeTypeKey">
<xs:selector xpath="./scl:IED/scl:AccessPoint/scl:Server/scl:LDevice/scl:LN0"/>
<xs:field xpath="@lnType"/>
<xs:field xpath="@lnClass"/>
</xs:keyref>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema targetNamespace="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:scl="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation xml:lang="en">
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:simpleType name="tRef">
<xs:restriction base="xs:normalizedString">
<xs:pattern value=".+/.+/.+/.+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAnyName">
<xs:restriction base="xs:normalizedString"/>
</xs:simpleType>
<xs:simpleType name="tName">
<xs:restriction base="tAnyName">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestName">
<xs:restriction base="xs:Name">
<xs:pattern value="[\d,\p{L}]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName1stU">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{Lu}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName1stL">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{Ll}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPAddr">
<xs:restriction base="xs:normalizedString">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 编辑使用 XMLSpy v2006 U (http://www.altova.com) 由 any (any) -->
<xs:schema xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:simpleType name="tRef">
<xs:restriction base="xs:normalizedString">
<xs:pattern value=".+/.+/.+/.+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAnyName">
<xs:restriction base="xs:normalizedString"/>
</xs:simpleType>
<xs:simpleType name="tName">
<xs:restriction base="tAnyName">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName">
<xs:restriction base="xs:Name">
<xs:pattern value="[\d,\p{L}]+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrLdName">
<xs:restriction base="xs:Name">
<xs:maxLength value="64"/>
<xs:pattern value="\p{L}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName1stU">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{Lu}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName1stL">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{L}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPAddr">
<xs:restriction base="xs:normalizedString">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,160 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2006 rel. 3 sp1 (http://www.altova.com) by wdx (EMBRACE) -->
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:scl="http://www.iec.ch/61850/2003/SCL" targetNamespace="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_Enums.xsd"/>
<xs:attributeGroup name="agDesc">
<xs:attribute name="desc" type="xs:normalizedString" use="optional"/>
</xs:attributeGroup>
<xs:complexType name="tBaseElement" abstract="true">
<xs:sequence>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Text" type="tText" minOccurs="0"/>
<xs:element name="Private" type="tPrivate" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
<xs:complexType name="tUnNaming" abstract="true">
<xs:complexContent>
<xs:extension base="tBaseElement">
<xs:attributeGroup ref="agDesc"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tNaming" abstract="true">
<xs:complexContent>
<xs:extension base="tBaseElement">
<xs:attribute name="name" type="tName" use="required"/>
<xs:attributeGroup ref="agDesc"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tIDNaming" abstract="true">
<xs:complexContent>
<xs:extension base="tBaseElement">
<xs:attribute name="id" type="tName" use="required"/>
<xs:attributeGroup ref="agDesc"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAnyContentFromOtherNamespace" abstract="true" mixed="true">
<xs:annotation>
<xs:documentation xml:lang="en">An element of this type can contain text mixed with elements from another namespace that this target namespace(but they must be defined in a namespace).Attributes from other namespaces than this target namespace are also allowed</xs:documentation>
</xs:annotation>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
<xs:complexType name="tText" mixed="true">
<xs:annotation>
<xs:documentation xml:lang="en">Allows an unrestricted mixture of character content and element content and attributes from any namespace other than the target namespace</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace">
<xs:attribute name="source" type="xs:anyURI" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPrivate" mixed="true">
<xs:annotation>
<xs:documentation xml:lang="en">Allows an unrestricted mixture of character content and element and attributes from any namespace other than the target namespace,along with an optional Type attribute.</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace">
<xs:attribute name="type" type="xs:normalizedString" use="optional"/>
<xs:attribute name="source" type="xs:anyURI" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tHeader">
<xs:sequence>
<xs:element name="Text" type="tText" minOccurs="0"/>
<xs:element name="History" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Hitem" type="tHitem" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:normalizedString" use="required"/>
<xs:attribute name="version" type="xs:normalizedString"/>
<xs:attribute name="revision" type="xs:normalizedString"/>
<xs:attribute name="toolID" type="xs:normalizedString"/>
<xs:attribute name="nameStructure" use="required">
<xs:simpleType>
<xs:restriction base="xs:Name">
<xs:enumeration value="FuncName"/>
<xs:enumeration value="IEDName"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="tHitem" mixed="true">
<xs:annotation>
<xs:documentation xml:lang="en">Allows an unrestricted mixture of character content and element content and attributes from any namespace other than the target namespace,along with 6 following attributes:Version,Revision,When,Who,What,and Why</xs:documentation>
</xs:annotation>
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace">
<xs:attribute name="version" type="xs:normalizedString" use="required"/>
<xs:attribute name="revision" type="xs:normalizedString" use="required"/>
<xs:attribute name="when" type="xs:normalizedString" use="required"/>
<xs:attribute name="who" type="xs:normalizedString"/>
<xs:attribute name="what" type="xs:normalizedString"/>
<xs:attribute name="why" type="xs:normalizedString"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tVal">
<xs:simpleContent>
<xs:extension base="xs:normalizedString">
<xs:attribute name="sGroup" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tValueWithUnit">
<xs:simpleContent>
<xs:extension base="xs:decimal">
<xs:attribute name="unit" type="tSIUnitEnum" use="required"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tVoltage">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="V"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tBitRateInMbperSec">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="b/s"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional" fixed="M"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tDurationInSec">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="s"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tDurationInMilliSec">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="s"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional" fixed="m"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,278 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema targetNamespace="http://www.iec.ch/61850/2003/SCL" xmlns:scl="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:complexType name="tControlBlock" abstract="true">
<xs:annotation>
<xs:documentation xml:lang="en">A control block within a Logical Device(in LLN0)</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Address" type="tAddress" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="ldInst" type="tName" use="required"/>
<xs:attribute name="cbName" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tCommunication">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="SubNetwork" type="tSubNetwork" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubNetwork">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="BitRate" type="tBitRateInMbperSec" minOccurs="0"/>
<xs:element name="ConnectedAP" type="tConnectedAP" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" type="xs:normalizedString" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">The bus protocol types are defined in IEC 61850 Part 8 and 9</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConnectedAP">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Address" type="tAddress" minOccurs="0"/>
<xs:element name="GSE" type="tGSE" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SMV" type="tSMV" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="PhysConn" type="tPhysConn" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="iedName" type="tName" use="required"/>
<xs:attribute name="apName" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAddress">
<xs:sequence>
<xs:element name="P" type="tP" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="tGSE">
<xs:complexContent>
<xs:extension base="tControlBlock">
<xs:sequence>
<xs:element name="MinTime" type="tDurationInMilliSec" minOccurs="0"/>
<xs:element name="MaxTime" type="tDurationInMilliSec" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSMV">
<xs:complexContent>
<xs:extension base="tControlBlock"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPhysConn">
<xs:sequence>
<xs:element name="P" type="tP" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" type="xs:normalizedString" use="required"/>
</xs:complexType>
<xs:complexType name="tP">
<xs:simpleContent>
<xs:extension base="tPAddr">
<xs:attribute name="type" type="tPTypeEnum" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_IP">
<xs:annotation>
<xs:documentation xml:lang="en">A TCP/IP address</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="IP"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_IP_SUBNET">
<xs:annotation>
<xs:documentation xml:lang="en">A subnet Mask for TCP/IP profiles</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="IP-SUBNET"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_IP_GATEWAY">
<xs:annotation>
<xs:documentation xml:lang="en">A First Hop IP gateway address for TCP/IP profiles</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="IP-GATEWAY"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-NSAP">
<xs:annotation>
<xs:documentation xml:lang="en">An OSI Network Address</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="40"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-NSAP"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-TSEL">
<xs:annotation>
<xs:documentation xml:lang="en">An OSI Transport Selector</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="8"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-TSEL"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-SSEL">
<xs:annotation>
<xs:documentation xml:lang="en">An OSI Session Selector</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="16"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-SSEL"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-PSEL">
<xs:annotation>
<xs:documentation xml:lang="en">An OSI Presentation Selector</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="16"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-PSEL"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AP-Title">
<xs:annotation>
<xs:documentation xml:lang="en">An OSI ACSE AP Title value</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="&#34;[\d,&#34;]+&#34;"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AP-Title"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AP-Invoke">
<xs:annotation>
<xs:documentation xml:lang="en">An OSI ACSE AP Invoke ID</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="5"/>
<xs:pattern value="\d+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AP-Invoke"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AE-Qualifier">
<xs:annotation>
<xs:documentation>An OSI ACSE AE Qualifier</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="5"/>
<xs:pattern value="/d+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AE-Qualifier"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AE-Invoke">
<xs:annotation>
<xs:documentation>An OSI ACSE AE Invoke</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="5"/>
<xs:pattern value="/d+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AE-Invoke"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_MAC-Address">
<xs:annotation>
<xs:documentation>A media Access Address value</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:minLength value="17"/>
<xs:maxLength value="17"/>
<xs:pattern value="[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="MAC-Address"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_APPID">
<xs:annotation>
<xs:documentation xml:lang="en">An Application Identifier</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:minLength value="4"/>
<xs:maxLength value="4"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="APPID"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_VLAN-PRIORITY">
<xs:annotation>
<xs:documentation>A VLAN User Priority</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-7]"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="VLAN-PRIORITY"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_VLAN-ID">
<xs:annotation>
<xs:documentation xml:lang="en">A VLAN-ID</xs:documentation>
</xs:annotation>
<xs:simpleContent>
<xs:restriction base="tP">
<xs:minLength value="3"/>
<xs:maxLength value="3"/>
<xs:pattern value="[\d,A-F]"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="VLAN-ID"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:element name="Communication" type="tCommunication">
<xs:unique name="uniqueSubNetwork">
<xs:selector xpath="./scl:SubNetwork"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,168 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2006 rel. 3 sp1 (http://www.altova.com) by wdx (xj) -->
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:scl="http://www.iec.ch/61850/2003/SCL" targetNamespace="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:attributeGroup name="agDATrgOp">
<xs:attribute name="dchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="qchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dupd" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:complexType name="tAbstractDataAttribute" abstract="true">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Val" type="tVal" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="tAttributeNameEnum" use="required"/>
<xs:attribute name="sAddr" type="xs:normalizedString" use="optional"/>
<xs:attribute name="bType" type="tBasicTypeEnum" use="required"/>
<xs:attribute name="valKind" type="tValKindEnum" use="optional" default="Set"/>
<xs:attribute name="type" type="tAnyName" use="optional"/>
<xs:attribute name="count" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLNodeType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:sequence>
<xs:element name="DO" type="tDO" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="iedType" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDO">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="name" type="tRestrName1stU" use="required"/>
<xs:attribute name="type" type="tName" use="required"/>
<xs:attribute name="accessControl" type="xs:normalizedString" use="optional"/>
<xs:attribute name="transient" type="xs:boolean" use="optional" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDOType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SDO" type="tSDO"/>
<xs:element name="DA" type="tDA"/>
</xs:choice>
<xs:attribute name="iedType" type="tAnyName" use="optional"/>
<xs:attribute name="cdc" type="tCDCEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSDO">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:attribute name="type" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDA">
<xs:complexContent>
<xs:extension base="tAbstractDataAttribute">
<xs:attributeGroup ref="agDATrgOp"/>
<xs:attribute name="fc" type="tFCEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDAType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:sequence>
<xs:element name="BDA" type="tBDA" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="iedType" type="tAnyName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBDA">
<xs:complexContent>
<xs:extension base="tAbstractDataAttribute"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEnumType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:sequence>
<xs:element name="EnumVal" type="tEnumVal" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEnumVal">
<xs:simpleContent>
<xs:extension base="xs:normalizedString">
<xs:attribute name="ord" type="xs:integer" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tDataTypeTemplates">
<xs:sequence>
<xs:element name="LNodeType" type="tLNodeType" maxOccurs="unbounded">
<xs:unique name="uniqueDOinLNodeType">
<xs:selector xpath="scl:DO"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="DOType" type="tDOType" maxOccurs="unbounded">
<xs:unique name="uniqueDAinLDOType">
<xs:selector xpath="scl:DA"/>
<xs:field xpath="@name"/>
<xs:field xpath="@fc"/>
</xs:unique>
<xs:unique name="uniqueSDOinLDOType">
<xs:selector xpath="scl:SDO"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="DAType" type="tDAType" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueBDAinLDAType">
<xs:selector xpath="scl:BDA"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="EnumType" type="tEnumType" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueOrdinEnumType">
<xs:selector xpath="scl:EnumVal"/>
<xs:field xpath="@ord"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="DataTypeTemplates" type="tDataTypeTemplates">
<xs:unique name="uniqueLNodeType">
<xs:selector xpath="scl:LNodeType"/>
<xs:field xpath="@id"/>
</xs:unique>
<xs:key name="DOTypeKey">
<xs:selector xpath="scl:DOType"/>
<xs:field xpath="@id"/>
</xs:key>
<xs:keyref name="ref2DOType" refer="DOTypeKey">
<xs:selector xpath="scl:LNodeType/scl:DO"/>
<xs:field xpath="@type"/>
</xs:keyref>
<xs:keyref name="ref2DOTypeForSDO" refer="DOTypeKey">
<xs:selector xpath="scl:DOType/scl:SDO"/>
<xs:field xpath="@type"/>
</xs:keyref>
<xs:key name="DATypeKey">
<xs:selector xpath="scl:DAType"/>
<xs:field xpath="@id"/>
</xs:key>
<xs:key name="EnumTypeKey">
<xs:selector xpath="scl:EnumKey"/>
<xs:field xpath="@id"/>
</xs:key>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,531 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema targetNamespace="http://www.iec.ch/61850/2003/SCL" xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseSimpleTypes.xsd"/>
<xs:simpleType name="tPredefinedPTypeEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="IP"/>
<xs:enumeration value="IP-SUBNET"/>
<xs:enumeration value="IP-GATEWAY"/>
<xs:enumeration value="OSI-NSAP"/>
<xs:enumeration value="OSI-TSEL"/>
<xs:enumeration value="OSI-SSEL"/>
<xs:enumeration value="OSI-PSEL"/>
<xs:enumeration value="OSI-AP-Title"/>
<xs:enumeration value="OSI-AP-Invoke"/>
<xs:enumeration value="OSI-AE-Qualifier"/>
<xs:enumeration value="OSI-AE-Invoke"/>
<xs:enumeration value="MAC-Address"/>
<xs:enumeration value="APPID"/>
<xs:enumeration value="VLAN-PRIORITY"/>
<xs:enumeration value="VLAN-ID"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionPTypeEnum">
<xs:restriction base="xs:normalizedString">
<xs:pattern value="\p{Lu}[\d,\p{L},\-]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPTypeEnum">
<xs:union memberTypes="tPredefinedPTypeEnum tExtensionPTypeEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedAttributeNameEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="T"/>
<xs:enumeration value="Test"/>
<xs:enumeration value="Check"/>
<xs:enumeration value="SIUnit"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionAttributeNameEnum">
<xs:restriction base="xs:Name"/>
</xs:simpleType>
<xs:simpleType name="tAttributeNameEnum">
<xs:union memberTypes="tPredefinedAttributeNameEnum tExtensionAttributeNameEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedCommonConductingEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="CBR"/>
<xs:enumeration value="DIS"/>
<xs:enumeration value="VTR"/>
<xs:enumeration value="CTR"/>
<xs:enumeration value="GEN"/>
<xs:enumeration value="CAP"/>
<xs:enumeration value="REA"/>
<xs:enumeration value="CON"/>
<xs:enumeration value="MOT"/>
<xs:enumeration value="EFN"/>
<xs:enumeration value="PSH"/>
<xs:enumeration value="BAT"/>
<xs:enumeration value="BSH"/>
<xs:enumeration value="CAB"/>
<xs:enumeration value="GIL"/>
<xs:enumeration value="LIN"/>
<xs:enumeration value="RRC"/>
<xs:enumeration value="SAR"/>
<xs:enumeration value="TCF"/>
<xs:enumeration value="TCR"/>
<xs:enumeration value="IFL"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="E\p{Lu}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tCommonConductingEquipmentEnum">
<xs:union memberTypes="tPredefinedCommonConductingEquipmentEnum tExtensionEquipmentEnum"/>
</xs:simpleType>
<xs:simpleType name="tPowerTransformerEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="PTR"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tTransformerWindingEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="PTW"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPredefinedEquipmentEnum">
<xs:union memberTypes="tCommonConductingEquipmentEnum tPowerTransformerEnum tTransformerWindingEnum"/>
</xs:simpleType>
<xs:simpleType name="tEquipmentEnum">
<xs:union memberTypes="tPredefinedEquipmentEnum tExtensionEquipmentEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedGeneralEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="AXN"/>
<xs:enumeration value="BAT"/>
<xs:enumeration value="MOT"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionGeneralEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="E\p{Lu}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tGeneralEquipmentEnum">
<xs:union memberTypes="tPredefinedGeneralEquipmentEnum tExtensionGeneralEquipmentEnum"/>
</xs:simpleType>
<xs:simpleType name="tServiceSettingEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="Dyn"/>
<xs:enumeration value="Conf"/>
<xs:enumeration value="Fix"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPhaseEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="A"/>
<xs:enumeration value="B"/>
<xs:enumeration value="C"/>
<xs:enumeration value="N"/>
<xs:enumeration value="all"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAuthenticationEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="none"/>
<xs:enumeration value="password"/>
<xs:enumeration value="week"/>
<xs:enumeration value="strong"/>
<xs:enumeration value="certificate"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAssociationKindEnum">
<xs:restriction base="xs:token">
<xs:enumeration value="pre-established"/>
<xs:enumeration value="predefined"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tLLN0Enum">
<xs:restriction base="xs:Name">
<xs:enumeration value="LLN0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tLPHDEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="LPHD"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupAEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="A[A-Z]*"/>
<xs:enumeration value="ANCR"/>
<xs:enumeration value="ARCO"/>
<xs:enumeration value="ATCC"/>
<xs:enumeration value="AVCO"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupCEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="C[A-Z]*"/>
<xs:enumeration value="CILO"/>
<xs:enumeration value="CSWI"/>
<xs:enumeration value="CALH"/>
<xs:enumeration value="CCGR"/>
<xs:enumeration value="CPOW"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupGEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="G[A-Z]*"/>
<xs:enumeration value="GAPC"/>
<xs:enumeration value="GGIO"/>
<xs:enumeration value="GSAL"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupIEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="I[A-Z]*"/>
<xs:enumeration value="IHMI"/>
<xs:enumeration value="IARC"/>
<xs:enumeration value="ITCI"/>
<xs:enumeration value="ITMI"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupMEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="M[A-Z]*"/>
<xs:enumeration value="MMXU"/>
<xs:enumeration value="MDIF"/>
<xs:enumeration value="MHAI"/>
<xs:enumeration value="MHAN"/>
<xs:enumeration value="MMTR"/>
<xs:enumeration value="MMXN"/>
<xs:enumeration value="MSQI"/>
<xs:enumeration value="MSTA"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupPEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="P[A-Z]*"/>
<xs:enumeration value="PDIF"/>
<xs:enumeration value="PDIS"/>
<xs:enumeration value="PDIR"/>
<xs:enumeration value="PDOP"/>
<xs:enumeration value="PDUP"/>
<xs:enumeration value="PFRC"/>
<xs:enumeration value="PHAR"/>
<xs:enumeration value="PHIZ"/>
<xs:enumeration value="PIOC"/>
<xs:enumeration value="PMRI"/>
<xs:enumeration value="PMSS"/>
<xs:enumeration value="POPF"/>
<xs:enumeration value="PPAM"/>
<xs:enumeration value="PSCH"/>
<xs:enumeration value="PSDE"/>
<xs:enumeration value="PTEF"/>
<xs:enumeration value="PTOC"/>
<xs:enumeration value="PTOF"/>
<xs:enumeration value="PTOV"/>
<xs:enumeration value="PTRC"/>
<xs:enumeration value="PTTR"/>
<xs:enumeration value="PTUC"/>
<xs:enumeration value="PTUV"/>
<xs:enumeration value="PUPF"/>
<xs:enumeration value="PTUF"/>
<xs:enumeration value="PVOC"/>
<xs:enumeration value="PVPH"/>
<xs:enumeration value="PZSU"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupREnum">
<xs:restriction base="xs:Name">
<xs:pattern value="R[A-Z]*"/>
<xs:enumeration value="RSYN"/>
<xs:enumeration value="RDRE"/>
<xs:enumeration value="RADR"/>
<xs:enumeration value="RBDR"/>
<xs:enumeration value="RDRS"/>
<xs:enumeration value="RBRF"/>
<xs:enumeration value="RDIR"/>
<xs:enumeration value="RFLO"/>
<xs:enumeration value="RPSB"/>
<xs:enumeration value="RREC"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupSEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="S[A-Z]*"/>
<xs:enumeration value="SARC"/>
<xs:enumeration value="SIMG"/>
<xs:enumeration value="SIML"/>
<xs:enumeration value="SPDC"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupTEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="T[A-Z]*"/>
<xs:enumeration value="TCTR"/>
<xs:enumeration value="TVTR"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupXEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="X[A-Z]*"/>
<xs:enumeration value="XCBR"/>
<xs:enumeration value="XSWI"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupYEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="Y[A-Z]*"/>
<xs:enumeration value="YPTR"/>
<xs:enumeration value="YEFN"/>
<xs:enumeration value="YLTC"/>
<xs:enumeration value="YPSH"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupZEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="Z[A-Z]*"/>
<xs:enumeration value="ZAXN"/>
<xs:enumeration value="ZBAT"/>
<xs:enumeration value="ZBSH"/>
<xs:enumeration value="ZCAB"/>
<xs:enumeration value="ZCAP"/>
<xs:enumeration value="ZCON"/>
<xs:enumeration value="ZGEN"/>
<xs:enumeration value="ZGIL"/>
<xs:enumeration value="ZLIN"/>
<xs:enumeration value="ZMOT"/>
<xs:enumeration value="ZREA"/>
<xs:enumeration value="ZRRC"/>
<xs:enumeration value="ZSAR"/>
<xs:enumeration value="ZTCF"/>
<xs:enumeration value="ZTCR"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNEnum">
<xs:union memberTypes="tDomainLNGroupAEnum tDomainLNGroupCEnum tDomainLNGroupGEnum tDomainLNGroupIEnum tDomainLNGroupMEnum tDomainLNGroupPEnum tDomainLNGroupREnum tDomainLNGroupSEnum tDomainLNGroupTEnum tDomainLNGroupXEnum tDomainLNGroupYEnum tDomainLNGroupZEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedLNClassEnum">
<xs:union memberTypes="tLPHDEnum tLLN0Enum tDomainLNEnum"/>
</xs:simpleType>
<xs:simpleType name="tExtensionLNClassEnum">
<xs:restriction base="xs:Name">
<xs:minLength value="1"/>
<xs:pattern value="\p{Lu}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tLNClassEnum">
<xs:union memberTypes="tPredefinedLNClassEnum tExtensionLNClassEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedCDCEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="SPS"/>
<xs:enumeration value="DPS"/>
<xs:enumeration value="INS"/>
<xs:enumeration value="ACT"/>
<xs:enumeration value="ACD"/>
<xs:enumeration value="SEC"/>
<xs:enumeration value="BCR"/>
<xs:enumeration value="MV"/>
<xs:enumeration value="CMV"/>
<xs:enumeration value="SAV"/>
<xs:enumeration value="WYE"/>
<xs:enumeration value="DEL"/>
<xs:enumeration value="SEQ"/>
<xs:enumeration value="HMV"/>
<xs:enumeration value="HWYE"/>
<xs:enumeration value="HDEL"/>
<xs:enumeration value="SPC"/>
<xs:enumeration value="DPC"/>
<xs:enumeration value="INC"/>
<xs:enumeration value="BSC"/>
<xs:enumeration value="ISC"/>
<xs:enumeration value="APC"/>
<xs:enumeration value="SPG"/>
<xs:enumeration value="ING"/>
<xs:enumeration value="ASG"/>
<xs:enumeration value="CURVE"/>
<xs:enumeration value="DPL"/>
<xs:enumeration value="LPL"/>
<xs:enumeration value="CSD"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionCDCEnum">
<xs:restriction base="xs:Name">
<xs:minLength value="1"/>
<xs:pattern value="\p{Lu}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tCDCEnum">
<xs:union memberTypes="tPredefinedCDCEnum tExtensionCDCEnum"/>
</xs:simpleType>
<xs:simpleType name="tTrgOptEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="dchg"/>
<xs:enumeration value="qchg"/>
<xs:enumeration value="dupd"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tTrgOptControlEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="dchg"/>
<xs:enumeration value="qchg"/>
<xs:enumeration value="dupd"/>
<xs:enumeration value="period"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tFCEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="ST"/>
<xs:enumeration value="MX"/>
<xs:enumeration value="CO"/>
<xs:enumeration value="SP"/>
<xs:enumeration value="SG"/>
<xs:enumeration value="SE"/>
<xs:enumeration value="SV"/>
<xs:enumeration value="CF"/>
<xs:enumeration value="DC"/>
<xs:enumeration value="EX"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPredefinedBasicTypeEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="BOOLEAN"/>
<xs:enumeration value="INT8"/>
<xs:enumeration value="INT16"/>
<xs:enumeration value="INT24"/>
<xs:enumeration value="INT32"/>
<xs:enumeration value="INT128"/>
<xs:enumeration value="INT8U"/>
<xs:enumeration value="INT16U"/>
<xs:enumeration value="INT24U"/>
<xs:enumeration value="INT32U"/>
<xs:enumeration value="FLOAT32"/>
<xs:enumeration value="FLOAT64"/>
<xs:enumeration value="Enum"/>
<xs:enumeration value="Dbpos"/>
<xs:enumeration value="Tcmd"/>
<xs:enumeration value="Quality"/>
<xs:enumeration value="Timestamp"/>
<xs:enumeration value="VisString32"/>
<xs:enumeration value="VisString64"/>
<xs:enumeration value="VisString255"/>
<xs:enumeration value="Octet64"/>
<xs:enumeration value="Struct"/>
<xs:enumeration value="EntryTime"/>
<xs:enumeration value="Unicode255"/>
<xs:enumeration value="Check"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionBasicTypeEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{Lu}[\p{L},\d]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tBasicTypeEnum">
<xs:union memberTypes="tPredefinedBasicTypeEnum tExtensionBasicTypeEnum"/>
</xs:simpleType>
<xs:simpleType name="tValKindEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="Spec"/>
<xs:enumeration value="Conf"/>
<xs:enumeration value="RO"/>
<xs:enumeration value="Set"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tGSEControlTypeEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="GSSE"/>
<xs:enumeration value="GOOSE"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tSIUnitEnum">
<xs:restriction base="xs:token">
<xs:enumeration value="none"/>
<xs:enumeration value="m"/>
<xs:enumeration value="kg"/>
<xs:enumeration value="s"/>
<xs:enumeration value="A"/>
<xs:enumeration value="K"/>
<xs:enumeration value="mol"/>
<xs:enumeration value="cd"/>
<xs:enumeration value="deg"/>
<xs:enumeration value="rad"/>
<xs:enumeration value="sr"/>
<xs:enumeration value="Gy"/>
<xs:enumeration value="q"/>
<xs:enumeration value="℃"/>
<xs:enumeration value="Sv"/>
<xs:enumeration value="F"/>
<xs:enumeration value="C"/>
<xs:enumeration value="S"/>
<xs:enumeration value="H"/>
<xs:enumeration value="V"/>
<xs:enumeration value="ohm"/>
<xs:enumeration value="J"/>
<xs:enumeration value="N"/>
<xs:enumeration value="Hz"/>
<xs:enumeration value="lx"/>
<xs:enumeration value="Lm"/>
<xs:enumeration value="Wb"/>
<xs:enumeration value="T"/>
<xs:enumeration value="W"/>
<xs:enumeration value="Pa"/>
<xs:enumeration value="m^2"/>
<xs:enumeration value="m^3"/>
<xs:enumeration value="m/s"/>
<xs:enumeration value="m/s^2"/>
<xs:enumeration value="m^3/s"/>
<xs:enumeration value="m/m^3"/>
<xs:enumeration value="M"/>
<xs:enumeration value="kg/m^3"/>
<xs:enumeration value="m^2/s"/>
<xs:enumeration value="W/m K"/>
<xs:enumeration value="J/K"/>
<xs:enumeration value="ppm"/>
<xs:enumeration value="s^-1"/>
<xs:enumeration value="rad/s"/>
<xs:enumeration value="VA"/>
<xs:enumeration value="VAr"/>
<xs:enumeration value="theta"/>
<xs:enumeration value="cos_theta"/>
<xs:enumeration value="Vs"/>
<xs:enumeration value="V^2"/>
<xs:enumeration value="As"/>
<xs:enumeration value="A^2"/>
<xs:enumeration value="A^2 s"/>
<xs:enumeration value="VAh"/>
<xs:enumeration value="Wh"/>
<xs:enumeration value="VArh"/>
<xs:enumeration value="V/Hz"/>
<xs:enumeration value="b/s"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tUnitMultiplierEnum">
<xs:restriction base="xs:normalizedString">
<xs:enumeration value=""/>
<xs:enumeration value="m"/>
<xs:enumeration value="k"/>
<xs:enumeration value="M"/>
<xs:enumeration value="mu"/>
<xs:enumeration value="y"/>
<xs:enumeration value="z"/>
<xs:enumeration value="a"/>
<xs:enumeration value="f"/>
<xs:enumeration value="p"/>
<xs:enumeration value="n"/>
<xs:enumeration value="c"/>
<xs:enumeration value="d"/>
<xs:enumeration value="da"/>
<xs:enumeration value="h"/>
<xs:enumeration value="G"/>
<xs:enumeration value="T"/>
<xs:enumeration value="P"/>
<xs:enumeration value="E"/>
<xs:enumeration value="Z"/>
<xs:enumeration value="Y"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,534 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2006 rel. 3 sp1 (http://www.altova.com) by wdx (xj) -->
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:scl="http://www.iec.ch/61850/2003/SCL" targetNamespace="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:attributeGroup name="agAuthentication">
<xs:attribute name="none" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="password" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="weak" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="strong" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="certificate" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:attributeGroup name="agSmvOpts">
<xs:attribute name="refreshTime" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="sampleSynchronized" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="sampleRate" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="security" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dataRef" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:attributeGroup name="agOptFields">
<xs:attribute name="seqNum" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="timeStamp" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dataSet" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="reasonCode" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dataRef" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="bufOvfl" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="entryID" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="configRef" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="segmentation" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:attributeGroup name="agLDRef">
<xs:attribute name="iedName" type="tName" use="required"/>
<xs:attribute name="ldInst" type="tName" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="agLNRef">
<xs:attributeGroup ref="agLDRef"/>
<xs:attribute name="prefix" type="xs:normalizedString" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="lnInst" type="xs:normalizedString" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="agDORef">
<xs:attributeGroup ref="agLNRef"/>
<xs:attribute name="doName" type="tName" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="agDARef">
<xs:attributeGroup ref="agDORef"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="fc" type="tFCEnum" use="optional"/>
</xs:attributeGroup>
<xs:complexType name="tIED">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="Services" type="tServices" minOccurs="0"/>
<xs:element name="AccessPoint" type="tAccessPoint" maxOccurs="unbounded">
<xs:unique name="uniqueLNInAccessPoint">
<xs:selector xpath="./scl:LN"/>
<xs:field xpath="@inst"/>
<xs:field xpath="@lnClass"/>
<xs:field xpath="@prefix"/>
</xs:unique>
</xs:element>
</xs:sequence>
<xs:attribute name="type" type="xs:normalizedString" use="optional"/>
<xs:attribute name="manufacturer" type="xs:normalizedString" use="optional"/>
<xs:attribute name="configVersion" type="xs:normalizedString" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServices">
<xs:all>
<xs:element name="DynAssociation" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="SettingGroups" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="SGEdit" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfSG" type="tServiceYesNo" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="GetDirectory" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="GetDataObjectDefinition" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="DataObjectDirectory" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="GetDataSetValue" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="SetDataSetValue" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="DataSetDirectory" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfDataSet" type="tServiceWithMaxAndMaxAttributes" minOccurs="0"/>
<xs:element name="DynDataSet" type="tServiceWithMaxAndMaxAttributes" minOccurs="0"/>
<xs:element name="ReadWrite" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="TimerActivatedControl" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfReportControl" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="GetCBValues" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfLogControl" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="ReportSettings" type="tReportSettings" minOccurs="0"/>
<xs:element name="LogSettings" type="tLogSettings" minOccurs="0"/>
<xs:element name="GSESettings" type="tGSESettings" minOccurs="0"/>
<xs:element name="SMVSettings" type="tSMVSettings" minOccurs="0"/>
<xs:element name="GSEDir" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="GOOSE" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="GSSE" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="FileHandling" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfLNs" type="tConfLNs" minOccurs="0"/>
</xs:all>
</xs:complexType>
<xs:complexType name="tAccessPoint">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:choice minOccurs="0">
<xs:element name="Server" type="tServer">
<xs:unique name="uniqueAssociationInServer">
<xs:selector xpath="./scl:Association"/>
<xs:field xpath="@associationID"/>
</xs:unique>
</xs:element>
<xs:element ref="LN" maxOccurs="unbounded"/>
</xs:choice>
<xs:attribute name="router" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="clock" type="xs:boolean" use="optional" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAssociation">
<xs:attribute name="kind" type="tAssociationKindEnum" use="required"/>
<xs:attribute name="AssociationID" type="tName" use="optional"/>
<xs:attributeGroup ref="agLNRef"/>
</xs:complexType>
<xs:complexType name="tServer">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Authentication">
<xs:complexType>
<xs:attributeGroup ref="agAuthentication"/>
</xs:complexType>
</xs:element>
<xs:element name="LDevice" type="tLDevice" maxOccurs="unbounded"/>
<xs:element name="Association" type="tAssociation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="timeout" type="xs:unsignedInt" use="optional" default="30"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLDevice">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element ref="LN0"/>
<xs:element ref="LN" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="AccessControl" type="tAccessControl" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="inst" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAccessControl" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace"/>
</xs:complexContent>
</xs:complexType>
<xs:element name="LN0" type="tLN0">
<xs:unique name="uniqueReportControlInLN0">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueLogControlInLN0">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGSEControlInLN0">
<xs:selector xpath="./scl:GSEControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueSampledValueControlInLN0">
<xs:selector xpath="./scl:SampledValueControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="DataSetKeyLN0">
<xs:selector xpath="./scl:DataSet"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:keyref name="ref2DataSetReportLN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetLogLN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetGSELN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:GSEControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetSVLN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:SampledValueControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
</xs:element>
<xs:element name="LN" type="tLN">
<xs:unique name="uniqueReportControlInLN">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueLogControlInLN">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="DataSetKeyInLN">
<xs:selector xpath="./scl:DataSet"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:keyref name="ref2DataSetReport" refer="DataSetKeyInLN">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetLog" refer="DataSetKeyInLN">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
</xs:element>
<xs:complexType name="tAnyLN" abstract="true">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="DataSet" type="tDataSet" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ReportControl" type="tReportControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="LogControl" type="tLogControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="DOI" type="tDOI" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Inputs" type="tInputs" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="lnType" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLN">
<xs:complexContent>
<xs:extension base="tAnyLN">
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="inst" type="xs:unsignedInt" use="required"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLN0">
<xs:complexContent>
<xs:extension base="tAnyLN">
<xs:sequence>
<xs:element name="GSEControl" type="tGSEControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SampledValueControl" type="tSampledValueControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SettingControl" type="tSettingControl" minOccurs="0"/>
<xs:element name="SCLControl" type="tSCLControl" minOccurs="0"/>
<xs:element name="Log" type="tLog" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required" fixed="LLN0"/>
<xs:attribute name="inst" type="xs:normalizedString" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDataSet">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="FCDA" type="tFCDA" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tFCDA">
<xs:attribute name="ldInst" type="tName" use="optional"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="optional"/>
<xs:attribute name="lnInst" type="tName" use="optional"/>
<xs:attribute name="doName" type="tName" use="optional"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="fc" type="tFCEnum" use="required"/>
</xs:complexType>
<xs:complexType name="tControl" abstract="true">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:attribute name="datSet" type="tAnyName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tControlWithTriggerOpt" abstract="true">
<xs:complexContent>
<xs:extension base="tControl">
<xs:sequence>
<xs:element name="TrgOps" type="tTrgOps" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="intgPd" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTrgOps">
<xs:attribute name="dchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="qchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dupd" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="period" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
<xs:complexType name="tReportControl">
<xs:complexContent>
<xs:extension base="tControlWithTriggerOpt">
<xs:sequence>
<xs:element name="OptFields">
<xs:complexType>
<xs:attributeGroup ref="agOptFields"/>
</xs:complexType>
</xs:element>
<xs:element name="RptEnabled" type="tRptEnabled" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="rptID" type="tName" use="required"/>
<xs:attribute name="confRev" type="xs:unsignedInt" use="required"/>
<xs:attribute name="buffered" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="bufTime" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tRptEnabled">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="ClientLN" type="tClientLN" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="max" type="xs:unsignedInt" use="optional" default="1"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tClientLN">
<xs:attributeGroup ref="agLNRef"/>
</xs:complexType>
<xs:complexType name="tLogControl">
<xs:complexContent>
<xs:extension base="tControlWithTriggerOpt">
<xs:attribute name="logName" type="tName" use="required"/>
<xs:attribute name="logEna" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="reasonCode" type="xs:boolean" use="optional" default="true"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tInputs">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="ExtRef" type="tExtRef" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tExtRef">
<xs:attributeGroup ref="agDORef"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="intAddr" type="xs:normalizedString" use="optional"/>
</xs:complexType>
<xs:complexType name="tLog" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tControlWithIEDName">
<xs:complexContent>
<xs:extension base="tControl">
<xs:sequence>
<xs:element name="IEDName" type="tName" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="confRev" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tGSEControl">
<xs:complexContent>
<xs:extension base="tControlWithIEDName">
<xs:attribute name="type" type="tGSEControlTypeEnum" use="optional" default="GOOSE"/>
<xs:attribute name="appID" type="xs:normalizedString" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSampledValueControl">
<xs:complexContent>
<xs:extension base="tControlWithIEDName">
<xs:sequence>
<xs:element name="SmvOpts">
<xs:complexType>
<xs:attributeGroup ref="agSmvOpts"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="smvID" type="xs:normalizedString" use="required"/>
<xs:attribute name="multicast" type="xs:boolean" default="true"/>
<xs:attribute name="smpRate" type="xs:unsignedInt" use="required"/>
<xs:attribute name="nofASDU" type="xs:unsignedInt" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSettingControl">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="numOfSGs" type="xs:unsignedInt" use="required"/>
<xs:attribute name="actSG" type="xs:unsignedInt" use="optional" default="1"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSCLControl">
<xs:complexContent>
<xs:extension base="tUnNaming"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDOI">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SDI" type="tSDI"/>
<xs:element name="DAI" type="tDAI"/>
</xs:choice>
<xs:attribute name="name" type="tRestrName1stU" use="required"/>
<xs:attribute name="ix" type="xs:unsignedInt" use="optional"/>
<xs:attribute name="accessControl" type="xs:normalizedString" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSDI">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SDI" type="tSDI"/>
<xs:element name="DAI" type="tDAI"/>
</xs:choice>
<xs:attribute name="name" type="tName" use="required"/>
<xs:attribute name="ix" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDAI">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Val" type="tVal" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="tAttributeNameEnum" use="required"/>
<xs:attribute name="sAddr" type="xs:normalizedString" use="optional"/>
<xs:attribute name="valKind" type="tValKindEnum" use="optional" default="Set"/>
<xs:attribute name="ix" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServiceYesNo"/>
<xs:complexType name="tServiceWithMax">
<xs:attribute name="max" type="xs:unsignedInt" use="required"/>
</xs:complexType>
<xs:complexType name="tServiceWithMaxAndMaxAttributes">
<xs:complexContent>
<xs:extension base="tServiceWithMax">
<xs:attribute name="maxAttributes" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServiceWithMaxAndModify">
<xs:complexContent>
<xs:extension base="tServiceWithMax">
<xs:attribute name="modify" type="xs:boolean" use="optional" default="true"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServiceSettings" abstract="true">
<xs:attribute name="cbName" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="datSet" type="tServiceSettingEnum" use="optional" default="Fix"/>
</xs:complexType>
<xs:complexType name="tReportSettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:attribute name="rptID" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="optFields" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="bufTime" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="trgOps" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="intgPd" type="tServiceSettingEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLogSettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:attribute name="logEna" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="trgOps" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="intgPd" type="tServiceSettingEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tGSESettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:attribute name="appID" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="dataLabel" type="tServiceSettingEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSMVSettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:sequence>
<xs:element name="SmpRate" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="svID" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="optFields" type="tServiceSettingEnum" use="optional" default="Fix"/>
<xs:attribute name="smpRate" type="tServiceSettingEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConfLNs">
<xs:attribute name="fixPrefix" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="fixLnInst" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
<xs:element name="IED" type="tIED">
<xs:unique name="uniqueAccessPointIED">
<xs:selector xpath="./scl:AccessPoint"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="LDeviceInIDEKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice"/>
<xs:field xpath="@inst"/>
</xs:key>
<xs:keyref name="ref2LDeviceInIED" refer="LDeviceInIDEKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LogControl"/>
<xs:field xpath="@logName"/>
</xs:keyref>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,270 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by wen (xj) -->
<!--W3C Schema for SCL language version 1 (CDV6) 2002-06-20 -->
<xs:schema targetNamespace="http://www.iec.ch/61850/2003/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2003/SCL" xmlns:scl="http://www.iec.ch/61850/2003/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
<xs:annotation>
<xs:documentation>COPYRIGHT IEC,2003.Version 1.0.Release 2003/09/19(Uncommented)</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:attributeGroup name="agVirtual">
<xs:attribute name="virtual" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:complexType name="tLNodeContainer" abstract="true">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="LNode" type="tLNode" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPowerSystemResource" abstract="true">
<xs:complexContent>
<xs:extension base="tLNodeContainer"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEquipmentContainer" abstract="true">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:sequence>
<xs:element name="PowerTransformer" type="tPowerTransformer" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueWindingInPowerTransformer">
<xs:selector xpath="./scl:TransformerWinding"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="GeneralEquipment" type="tGeneralEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEquipment" abstract="true">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:attributeGroup ref="agVirtual"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAbstractConductingEquipment" abstract="true">
<xs:complexContent>
<xs:extension base="tEquipment">
<xs:sequence>
<xs:element name="Terminal" type="tTerminal" minOccurs="0" maxOccurs="2"/>
<xs:element name="SubEquipment" type="tSubEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConductingEquipment">
<xs:complexContent>
<xs:extension base="tAbstractConductingEquipment">
<xs:attribute name="type" type="tCommonConductingEquipmentEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubEquipment">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:attribute name="phase" type="tPhaseEnum" use="optional" default="none"/>
<xs:attributeGroup ref="agVirtual"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPowerTransformer">
<xs:complexContent>
<xs:extension base="tEquipment">
<xs:sequence>
<xs:element name="TransformerWinding" type="tTransformerWinding" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" type="tPowerTransformerEnum" use="required" fixed="PTR"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTransformerWinding">
<xs:complexContent>
<xs:extension base="tAbstractConductingEquipment">
<xs:sequence>
<xs:element name="TapChanger" type="tTapChanger" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="type" type="tTransformerWindingEnum" use="required" fixed="PTW"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTapChanger">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:attribute name="type" type="xs:Name" use="required" fixed="LTC"/>
<xs:attributeGroup ref="agVirtual"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tGeneralEquipment">
<xs:complexContent>
<xs:extension base="tEquipment">
<xs:attribute name="type" type="tGeneralEquipmentEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubstation">
<xs:complexContent>
<xs:extension base="tEquipmentContainer">
<xs:sequence>
<xs:element name="VoltageLevel" type="tVoltageLevel" maxOccurs="unbounded">
<xs:unique name="uniqueBayInVoltageLevel">
<xs:selector xpath="./scl:Bay"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniquePowerTransformerInVoltageLevel">
<xs:selector xpath="./scl:PowerTransformer"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInVoltageLevel">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueChildNameInVoltageLevel">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="Function" type="tFunction" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueSubFunctionInFunction">
<xs:selector xpath="./scl:SubFunction"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInFunction">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tVoltageLevel">
<xs:complexContent>
<xs:extension base="tEquipmentContainer">
<xs:sequence>
<xs:element name="Voltage" type="tVoltage" minOccurs="0"/>
<xs:element name="Bay" type="tBay" maxOccurs="unbounded">
<xs:unique name="uniquePowerTransformerInBay">
<xs:selector xpath="./scl:PowerTransformer"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueConductingEquipmentInBay">
<xs:selector xpath="./scl:ConductingEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInBay">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueChildNameInBay">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBay">
<xs:complexContent>
<xs:extension base="tEquipmentContainer">
<xs:sequence>
<xs:element name="ConductingEquipment" type="tConductingEquipment" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ConnectivityNode" type="tConnectivityNode" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLNode">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="lnInst" type="tAnyName" use="optional" default='""'/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="iedName" type="tName" use="optional" default="None"/>
<xs:attribute name="ldInst" type="tAnyName" use="optional" default='""'/>
<xs:attribute name="prefix" type="tAnyName" use="optional" default='""'/>
<xs:attribute name="lnType" type="tName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tFunction">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:sequence>
<xs:element name="SubFunction" type="tSubFunction" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueGeneralEquipmentInSubFunction">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="GeneralEquipment" type="tGeneralEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubFunction">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:sequence>
<xs:element name="GeneralEquipment" type="tGeneralEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConnectivityNode">
<xs:complexContent>
<xs:extension base="tLNodeContainer">
<xs:attribute name="pathName" type="tRef" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTerminal">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="name" type="tAnyName" use="optional"/>
<xs:attribute name="connectivityNode" type="tRef" use="required"/>
<xs:attribute name="substationName" type="tName" use="required"/>
<xs:attribute name="voltageLevelName" type="tName" use="required"/>
<xs:attribute name="bayName" type="tName" use="required"/>
<xs:attribute name="cNodeName" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Substation" type="tSubstation">
<xs:unique name="uniqueVoltageLevelInSubstation">
<xs:selector xpath="./scl:VoltageLevel"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniquePowerTransformerInSubstation">
<xs:selector xpath="./scl:PowerTransformer"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInSubstation">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueFunctionInSubstation">
<xs:selector xpath="./scl:Function"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="ConnectivityNodeKey">
<xs:selector xpath=".//scl:ConnectivityNode"/>
<xs:field xpath="@pathName"/>
</xs:key>
<xs:unique name="uniqueLNode">
<xs:selector xpath=".//scl:LNode"/>
<xs:field xpath="@lnInst"/>
<xs:field xpath="@lnClass"/>
<xs:field xpath="@iedName"/>
<xs:field xpath="@ldInst"/>
<xs:field xpath="@prefix"/>
</xs:unique>
<xs:unique name="uniqueChildNameInSubstation">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:scl="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" finalDefault="extension" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_Substation.xsd"/>
<xs:include schemaLocation="SCL_IED.xsd"/>
<xs:include schemaLocation="SCL_Communication.xsd"/>
<xs:include schemaLocation="SCL_DataTypeTemplates.xsd"/>
<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="Substation" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="Communication" minOccurs="0"/>
<xs:element ref="IED" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="DataTypeTemplates" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:unique name="uniqueSubstation">
<xs:selector xpath="./scl:Substation"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="IEDKey">
<xs:selector xpath="./scl:IED"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="LNodeTypeKey">
<xs:selector xpath="./scl:DataTypeTemplates/scl:LNodeType"/>
<xs:field xpath="@id"/>
<xs:field xpath="@lnClass"/>
</xs:key>
<xs:keyref name="ref2LNodeTypeDomain1" refer="LNodeTypeKey">
<xs:selector xpath="./scl:IED/scl:AccessPoint/scl:LN"/>
<xs:field xpath="@lnType"/>
<xs:field xpath="@lnClass"/>
</xs:keyref>
<xs:keyref name="ref2LNodeTypeDomain2" refer="LNodeTypeKey">
<xs:selector xpath="./scl:IED/scl:AccessPoint/scl:Server/scl:LDevice/scl:LN"/>
<xs:field xpath="@lnType"/>
<xs:field xpath="@lnClass"/>
</xs:keyref>
<xs:keyref name="ref2LNodeTypeLLN0" refer="LNodeTypeKey">
<xs:selector xpath="./scl:IED/scl:AccessPoint/scl:Server/scl:LDevice/scl:LN0"/>
<xs:field xpath="@lnType"/>
<xs:field xpath="@lnClass"/>
</xs:keyref>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 编辑使用 XMLSpy v2006 U (http://www.altova.com) 由 any (any) -->
<xs:schema xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release
2005/09/11.</xs:documentation>
</xs:annotation>
<xs:simpleType name="tRef">
<xs:restriction base="xs:normalizedString">
<xs:pattern value=".+/.+/.+/.+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAnyName">
<xs:restriction base="xs:normalizedString"/>
</xs:simpleType>
<xs:simpleType name="tName">
<xs:restriction base="tAnyName">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName">
<xs:restriction base="tName"/>
</xs:simpleType>
<xs:simpleType name="tRestrLdName">
<xs:restriction base="tName"/>
</xs:simpleType>
<xs:simpleType name="tRestrName1stU">
<xs:restriction base="tName"/>
</xs:simpleType>
<xs:simpleType name="tRestrName1stL">
<xs:restriction base="tName"/>
</xs:simpleType>
<xs:simpleType name="tPAddr">
<xs:restriction base="xs:normalizedString">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 编辑使用 XMLSpy v2006 U (http://www.altova.com) 由 any (any) -->
<xs:schema xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:simpleType name="tRef">
<xs:restriction base="xs:normalizedString">
<xs:pattern value=".+/.+/.+/.+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAnyName">
<xs:restriction base="xs:normalizedString"/>
</xs:simpleType>
<xs:simpleType name="tName">
<xs:restriction base="tAnyName">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName">
<xs:restriction base="xs:Name">
<xs:pattern value="[\d,\p{L}]+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrLdName">
<xs:restriction base="xs:Name">
<xs:maxLength value="64"/>
<xs:pattern value="\p{L}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName1stU">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{Lu}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tRestrName1stL">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{L}[\d,\p{L}]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPAddr">
<xs:restriction base="xs:normalizedString">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,144 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:scl="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_Enums.xsd"/>
<xs:attributeGroup name="agDesc">
<xs:attribute name="desc" type="xs:normalizedString" use="optional"/>
</xs:attributeGroup>
<xs:complexType name="tBaseElement" abstract="true">
<xs:sequence>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Text" type="tText" minOccurs="0"/>
<xs:element name="Private" type="tPrivate" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
<xs:complexType name="tUnNaming" abstract="true">
<xs:complexContent>
<xs:extension base="tBaseElement">
<xs:attributeGroup ref="agDesc"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tNaming" abstract="true">
<xs:complexContent>
<xs:extension base="tBaseElement">
<xs:attribute name="name" type="tName" use="required"/>
<xs:attributeGroup ref="agDesc"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tIDNaming" abstract="true">
<xs:complexContent>
<xs:extension base="tBaseElement">
<xs:attribute name="id" type="tName" use="required"/>
<xs:attributeGroup ref="agDesc"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAnyContentFromOtherNamespace" abstract="true" mixed="true">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any namespace="##other" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
<xs:complexType name="tText" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace">
<xs:attribute name="source" type="xs:anyURI" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPrivate" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace">
<xs:attribute name="type" type="xs:normalizedString" use="optional"/>
<xs:attribute name="source" type="xs:anyURI" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tHeader">
<xs:sequence>
<xs:element name="Text" type="tText" minOccurs="0"/>
<xs:element name="History" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="Hitem" type="tHitem" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:normalizedString" use="required"/>
<xs:attribute name="version" type="xs:normalizedString"/>
<xs:attribute name="revision" type="xs:normalizedString"/>
<xs:attribute name="toolID" type="xs:normalizedString"/>
<xs:attribute name="nameStructure" use="optional" default="IEDName">
<xs:simpleType>
<xs:restriction base="xs:Name">
<xs:enumeration value="IEDName"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
<xs:complexType name="tHitem" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace">
<xs:attribute name="version" type="xs:normalizedString" use="required"/>
<xs:attribute name="revision" type="xs:normalizedString" use="required"/>
<xs:attribute name="when" type="xs:normalizedString" use="required"/>
<xs:attribute name="who" type="xs:normalizedString"/>
<xs:attribute name="what" type="xs:normalizedString"/>
<xs:attribute name="why" type="xs:normalizedString"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tVal">
<xs:simpleContent>
<xs:extension base="xs:normalizedString">
<xs:attribute name="sGroup" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tValueWithUnit">
<xs:simpleContent>
<xs:extension base="xs:decimal">
<xs:attribute name="unit" type="tSIUnitEnum" use="required"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tVoltage">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="V"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tBitRateInMbPerSec">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="b/s"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" fixed="M"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tDurationInSec">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="s"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" use="optional"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tDurationInMilliSec">
<xs:simpleContent>
<xs:restriction base="tValueWithUnit">
<xs:attribute name="unit" type="tSIUnitEnum" use="required" fixed="s"/>
<xs:attribute name="multiplier" type="tUnitMultiplierEnum" fixed="m"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,241 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:scl="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:complexType name="tControlBlock" abstract="true">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Address" type="tAddress" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="ldInst" type="tName" use="required"/>
<xs:attribute name="cbName" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tCommunication">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="SubNetwork" type="tSubNetwork" maxOccurs="unbounded">
<xs:unique name="uniqueConnectedAP">
<xs:selector xpath="./scl:ConnectedAP"/>
<xs:field xpath="@iedName"/>
<xs:field xpath="@apName"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubNetwork">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="BitRate" type="tBitRateInMbPerSec" minOccurs="0"/>
<xs:element name="ConnectedAP" type="tConnectedAP" maxOccurs="unbounded">
<xs:unique name="uniqueGSEinConnectedAP">
<xs:selector xpath="./scl:GSE"/>
<xs:field xpath="@cbName"/>
<xs:field xpath="@ldInst"/>
</xs:unique>
<xs:unique name="uniqueSMVinConnectedAP">
<xs:selector xpath="./scl:SMV"/>
<xs:field xpath="@cbName"/>
<xs:field xpath="@ldInst"/>
</xs:unique>
</xs:element>
</xs:sequence>
<xs:attribute name="type" type="xs:normalizedString" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConnectedAP">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Address" type="tAddress" minOccurs="0"/>
<xs:element name="GSE" type="tGSE" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SMV" type="tSMV" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="PhysConn" type="tPhysConn" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="iedName" type="tName" use="required"/>
<xs:attribute name="apName" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAddress">
<xs:sequence>
<xs:element name="P" type="tP" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="tGSE">
<xs:complexContent>
<xs:extension base="tControlBlock">
<xs:sequence>
<xs:element name="MinTime" type="tDurationInMilliSec" minOccurs="0"/>
<xs:element name="MaxTime" type="tDurationInMilliSec" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSMV">
<xs:complexContent>
<xs:extension base="tControlBlock"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPhysConn">
<xs:sequence>
<xs:element name="P" type="tP" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" type="xs:normalizedString" use="required"/>
</xs:complexType>
<xs:complexType name="tP">
<xs:simpleContent>
<xs:extension base="tPAddr">
<xs:attribute name="type" type="tPTypeEnum" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_IP">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="IP"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_IP-SUBNET">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="IP-SUBNET"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_IP-GATEWAY">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}\.[0-2]?\d{1,2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="IP-GATEWAY"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-NSAP">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="40"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-NSAP"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-TSEL">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="8"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-TSEL"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-SSEL">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="16"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-SSEL"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-PSEL">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="16"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-PSEL"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AP-Title">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="&#34;[\d,&#44;]+&#34;"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AP-Title"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AP-Invoke">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="5"/>
<xs:pattern value="\d+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AP-Invoke"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AE-Qualifier">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="5"/>
<xs:pattern value="\d+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AE-Qualifier"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_OSI-AE-Invoke">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:maxLength value="5"/>
<xs:pattern value="\d+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="OSI-AE-Invoke"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_MAC-Address">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:minLength value="17"/>
<xs:maxLength value="17"/>
<xs:pattern value="[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}\-[\d,A-F]{2}"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="MAC-Address"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_APPID">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:minLength value="4"/>
<xs:maxLength value="4"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="APPID"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_VLAN-PRIORITY">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:pattern value="[0-7]"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="VLAN-PRIORITY"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tP_VLAN-ID">
<xs:simpleContent>
<xs:restriction base="tP">
<xs:minLength value="3"/>
<xs:maxLength value="3"/>
<xs:pattern value="[\d,A-F]+"/>
<xs:attribute name="type" type="tPTypeEnum" use="required" fixed="VLAN-ID"/>
</xs:restriction>
</xs:simpleContent>
</xs:complexType>
<xs:element name="Communication" type="tCommunication">
<xs:unique name="uniqueSubNetwork">
<xs:selector xpath="./scl:SubNetwork"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:scl="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:attributeGroup name="agDATrgOp">
<xs:attribute name="dchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="qchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dupd" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:complexType name="tAbstractDataAttribute" abstract="true">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Val" type="tVal" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="tAttributeNameEnum" use="required"/>
<xs:attribute name="sAddr" type="xs:normalizedString" use="optional"/>
<xs:attribute name="bType" type="tBasicTypeEnum" use="required"/>
<xs:attribute name="valKind" type="tValKindEnum" use="optional" default="Set"/>
<xs:attribute name="type" type="tAnyName" use="optional"/>
<xs:attribute name="count" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLNodeType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:sequence>
<xs:element name="DO" type="tDO" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="iedType" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDO">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="name" type="tRestrName1stU" use="required"/>
<xs:attribute name="type" type="tName" use="required"/>
<xs:attribute name="accessControl" type="xs:normalizedString" use="optional"/>
<xs:attribute name="transient" type="xs:boolean" use="optional" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDOType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SDO" type="tSDO"/>
<xs:element name="DA" type="tDA"/>
</xs:choice>
<xs:attribute name="iedType" type="tAnyName" use="optional"/>
<xs:attribute name="cdc" type="tCDCEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSDO">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:attribute name="type" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDA">
<xs:complexContent>
<xs:extension base="tAbstractDataAttribute">
<xs:attributeGroup ref="agDATrgOp"/>
<xs:attribute name="fc" type="tFCEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDAType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:sequence>
<xs:element name="BDA" type="tBDA" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="iedType" type="tAnyName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBDA">
<xs:complexContent>
<xs:extension base="tAbstractDataAttribute"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEnumType">
<xs:complexContent>
<xs:extension base="tIDNaming">
<xs:sequence>
<xs:element name="EnumVal" type="tEnumVal" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEnumVal">
<xs:simpleContent>
<xs:extension base="xs:normalizedString">
<xs:attribute name="ord" type="xs:integer" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="tDataTypeTemplates">
<xs:sequence>
<xs:element name="LNodeType" type="tLNodeType" maxOccurs="unbounded">
<xs:unique name="uniqueDOInLNodeType">
<xs:selector xpath="scl:DO"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="DOType" type="tDOType" maxOccurs="unbounded">
<xs:unique name="uniqueDAorSDOInDOType">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="DAType" type="tDAType" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueBDAInDAType">
<xs:selector xpath="scl:BDA"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="EnumType" type="tEnumType" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueOrdInEnumType">
<xs:selector xpath="scl:EnumVal"/>
<xs:field xpath="@ord"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="DataTypeTemplates" type="tDataTypeTemplates">
<xs:unique name="uniqueLNodeType">
<xs:selector xpath="scl:LNodeType"/>
<xs:field xpath="@id"/>
<xs:field xpath="@iedType"/>
</xs:unique>
<xs:key name="DOTypeKey">
<xs:selector xpath="scl:DOType"/>
<xs:field xpath="@id"/>
</xs:key>
<xs:keyref name="ref2DOType" refer="DOTypeKey">
<xs:selector xpath="scl:LNodeType/scl:DO"/>
<xs:field xpath="@type"/>
</xs:keyref>
<xs:keyref name="ref2DOTypeForSDO" refer="DOTypeKey">
<xs:selector xpath="scl:DOType/scl:SDO"/>
<xs:field xpath="@type"/>
</xs:keyref>
<xs:key name="DATypeKey">
<xs:selector xpath="scl:DAType"/>
<xs:field xpath="@id"/>
</xs:key>
<xs:key name="EnumTypeKey">
<xs:selector xpath="scl:EnumType"/>
<xs:field xpath="@id"/>
</xs:key>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,551 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:scl="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseSimpleTypes.xsd"/>
<xs:simpleType name="tPredefinedPTypeEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="IP"/>
<xs:enumeration value="IP-SUBNET"/>
<xs:enumeration value="IP-GATEWAY"/>
<xs:enumeration value="OSI-NSAP"/>
<xs:enumeration value="OSI-TSEL"/>
<xs:enumeration value="OSI-SSEL"/>
<xs:enumeration value="OSI-PSEL"/>
<xs:enumeration value="OSI-AP-Title"/>
<xs:enumeration value="OSI-AP-Invoke"/>
<xs:enumeration value="OSI-AE-Qualifier"/>
<xs:enumeration value="OSI-AE-Invoke"/>
<xs:enumeration value="MAC-Address"/>
<xs:enumeration value="APPID"/>
<xs:enumeration value="VLAN-PRIORITY"/>
<xs:enumeration value="VLAN-ID"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionPTypeEnum">
<xs:restriction base="xs:normalizedString">
<xs:pattern value="\p{Lu}[\d,\p{L},\-]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPTypeEnum">
<xs:union memberTypes="tPredefinedPTypeEnum tExtensionPTypeEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedAttributeNameEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="T"/>
<xs:enumeration value="Test"/>
<xs:enumeration value="Check"/>
<xs:enumeration value="SIUnit"/>
<xs:enumeration value="Oper"/>
<xs:enumeration value="SBO"/>
<xs:enumeration value="SBOw"/>
<xs:enumeration value="Cancel"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionAttributeNameEnum">
<xs:restriction base="tRestrName1stL"/>
</xs:simpleType>
<xs:simpleType name="tAttributeNameEnum">
<xs:union memberTypes="tPredefinedAttributeNameEnum tExtensionAttributeNameEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedCommonConductingEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="CBR"/>
<xs:enumeration value="DIS"/>
<xs:enumeration value="VTR"/>
<xs:enumeration value="CTR"/>
<xs:enumeration value="GEN"/>
<xs:enumeration value="CAP"/>
<xs:enumeration value="REA"/>
<xs:enumeration value="CON"/>
<xs:enumeration value="MOT"/>
<xs:enumeration value="EFN"/>
<xs:enumeration value="PSH"/>
<xs:enumeration value="BAT"/>
<xs:enumeration value="BSH"/>
<xs:enumeration value="CAB"/>
<xs:enumeration value="GIL"/>
<xs:enumeration value="LIN"/>
<xs:enumeration value="RRC"/>
<xs:enumeration value="SAR"/>
<xs:enumeration value="TCF"/>
<xs:enumeration value="TCR"/>
<xs:enumeration value="IFL"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="E\p{Lu}*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tCommonConductingEquipmentEnum">
<xs:union memberTypes="tPredefinedCommonConductingEquipmentEnum tExtensionEquipmentEnum"/>
</xs:simpleType>
<xs:simpleType name="tPowerTransformerEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="PTR"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tTransformerWindingEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="PTW"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPredefinedEquipmentEnum">
<xs:union memberTypes="tCommonConductingEquipmentEnum tPowerTransformerEnum
tTransformerWindingEnum"/>
</xs:simpleType>
<xs:simpleType name="tEquipmentEnum">
<xs:union memberTypes="tPredefinedEquipmentEnum tExtensionEquipmentEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedGeneralEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="AXN"/>
<xs:enumeration value="BAT"/>
<xs:enumeration value="MOT"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionGeneralEquipmentEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="E\p{Lu}*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tGeneralEquipmentEnum">
<xs:union memberTypes="tPredefinedGeneralEquipmentEnum tExtensionGeneralEquipmentEnum"/>
</xs:simpleType>
<xs:simpleType name="tServiceSettingsEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="Dyn"/>
<xs:enumeration value="Conf"/>
<xs:enumeration value="Fix"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPhaseEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="A"/>
<xs:enumeration value="B"/>
<xs:enumeration value="C"/>
<xs:enumeration value="N"/>
<xs:enumeration value="all"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAuthenticationEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="none"/>
<xs:enumeration value="password"/>
<xs:enumeration value="week"/>
<xs:enumeration value="strong"/>
<xs:enumeration value="certificate"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tAssociationKindEnum">
<xs:restriction base="xs:token">
<xs:enumeration value="pre-established"/>
<xs:enumeration value="predefined"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tLPHDEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="LPHD"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tLLN0Enum">
<xs:restriction base="xs:Name">
<xs:enumeration value="LLN0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupAEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="A[A-Z]*"/>
<xs:enumeration value="ANCR"/>
<xs:enumeration value="ARCO"/>
<xs:enumeration value="ATCC"/>
<xs:enumeration value="AVCO"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupCEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="C[A-Z]*"/>
<xs:enumeration value="CILO"/>
<xs:enumeration value="CSWI"/>
<xs:enumeration value="CALH"/>
<xs:enumeration value="CCGR"/>
<xs:enumeration value="CPOW"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupGEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="G[A-Z]*"/>
<xs:enumeration value="GAPC"/>
<xs:enumeration value="GGIO"/>
<xs:enumeration value="GSAL"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupIEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="I[A-Z]*"/>
<xs:enumeration value="IHMI"/>
<xs:enumeration value="IARC"/>
<xs:enumeration value="ITCI"/>
<xs:enumeration value="ITMI"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupMEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="M[A-Z]*"/>
<xs:enumeration value="MMXU"/>
<xs:enumeration value="MDIF"/>
<xs:enumeration value="MHAI"/>
<xs:enumeration value="MHAN"/>
<xs:enumeration value="MMTR"/>
<xs:enumeration value="MMXN"/>
<xs:enumeration value="MSQI"/>
<xs:enumeration value="MSTA"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupPEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="P[A-Z]*"/>
<xs:enumeration value="PDIF"/>
<xs:enumeration value="PDIS"/>
<xs:enumeration value="PDIR"/>
<xs:enumeration value="PDOP"/>
<xs:enumeration value="PDUP"/>
<xs:enumeration value="PFRC"/>
<xs:enumeration value="PHAR"/>
<xs:enumeration value="PHIZ"/>
<xs:enumeration value="PIOC"/>
<xs:enumeration value="PMRI"/>
<xs:enumeration value="PMSS"/>
<xs:enumeration value="POPF"/>
<xs:enumeration value="PPAM"/>
<xs:enumeration value="PSCH"/>
<xs:enumeration value="PSDE"/>
<xs:enumeration value="PTEF"/>
<xs:enumeration value="PTOC"/>
<xs:enumeration value="PTOF"/>
<xs:enumeration value="PTOV"/>
<xs:enumeration value="PTRC"/>
<xs:enumeration value="PTTR"/>
<xs:enumeration value="PTUC"/>
<xs:enumeration value="PTUV"/>
<xs:enumeration value="PUPF"/>
<xs:enumeration value="PTUF"/>
<xs:enumeration value="PVOC"/>
<xs:enumeration value="PVPH"/>
<xs:enumeration value="PZSU"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupREnum">
<xs:restriction base="xs:Name">
<xs:pattern value="R[A-Z]*"/>
<xs:enumeration value="RSYN"/>
<xs:enumeration value="RDRE"/>
<xs:enumeration value="RADR"/>
<xs:enumeration value="RBDR"/>
<xs:enumeration value="RDRS"/>
<xs:enumeration value="RBRF"/>
<xs:enumeration value="RDIR"/>
<xs:enumeration value="RFLO"/>
<xs:enumeration value="RPSB"/>
<xs:enumeration value="RREC"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupSEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="S[A-Z]*"/>
<xs:enumeration value="SARC"/>
<xs:enumeration value="SIMG"/>
<xs:enumeration value="SIML"/>
<xs:enumeration value="SPDC"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupTEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="T[A-Z]*"/>
<xs:enumeration value="TCTR"/>
<xs:enumeration value="TVTR"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupXEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="X[A-Z]*"/>
<xs:enumeration value="XCBR"/>
<xs:enumeration value="XSWI"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupYEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="Y[A-Z]*"/>
<xs:enumeration value="YPTR"/>
<xs:enumeration value="YEFN"/>
<xs:enumeration value="YLTC"/>
<xs:enumeration value="YPSH"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNGroupZEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="Z[A-Z]*"/>
<xs:enumeration value="ZAXN"/>
<xs:enumeration value="ZBAT"/>
<xs:enumeration value="ZBSH"/>
<xs:enumeration value="ZCAB"/>
<xs:enumeration value="ZCAP"/>
<xs:enumeration value="ZCON"/>
<xs:enumeration value="ZGEN"/>
<xs:enumeration value="ZGIL"/>
<xs:enumeration value="ZLIN"/>
<xs:enumeration value="ZMOT"/>
<xs:enumeration value="ZREA"/>
<xs:enumeration value="ZRRC"/>
<xs:enumeration value="ZSAR"/>
<xs:enumeration value="ZTCF"/>
<xs:enumeration value="ZTCR"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tDomainLNEnum">
<xs:union memberTypes="tDomainLNGroupAEnum tDomainLNGroupCEnum tDomainLNGroupGEnum
tDomainLNGroupIEnum tDomainLNGroupMEnum tDomainLNGroupPEnum tDomainLNGroupREnum
tDomainLNGroupSEnum tDomainLNGroupTEnum tDomainLNGroupXEnum tDomainLNGroupYEnum
tDomainLNGroupZEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedLNClassEnum">
<xs:union memberTypes="tLPHDEnum tLLN0Enum tDomainLNEnum"/>
</xs:simpleType>
<xs:simpleType name="tExtensionLNClassEnum">
<xs:restriction base="xs:Name">
<xs:minLength value="1"/>
<xs:pattern value="\p{Lu}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tLNClassEnum">
<xs:union memberTypes="tPredefinedLNClassEnum tExtensionLNClassEnum"/>
</xs:simpleType>
<xs:simpleType name="tPredefinedCDCEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="SPS"/>
<xs:enumeration value="DPS"/>
<xs:enumeration value="INS"/>
<xs:enumeration value="ACT"/>
<xs:enumeration value="ACD"/>
<xs:enumeration value="SEC"/>
<xs:enumeration value="BCR"/>
<xs:enumeration value="MV"/>
<xs:enumeration value="CMV"/>
<xs:enumeration value="SAV"/>
<xs:enumeration value="WYE"/>
<xs:enumeration value="DEL"/>
<xs:enumeration value="SEQ"/>
<xs:enumeration value="HMV"/>
<xs:enumeration value="HWYE"/>
<xs:enumeration value="HDEL"/>
<xs:enumeration value="SPC"/>
<xs:enumeration value="DPC"/>
<xs:enumeration value="INC"/>
<xs:enumeration value="BSC"/>
<xs:enumeration value="ISC"/>
<xs:enumeration value="APC"/>
<xs:enumeration value="SPG"/>
<xs:enumeration value="ING"/>
<xs:enumeration value="ASG"/>
<xs:enumeration value="CURVE"/>
<xs:enumeration value="DPL"/>
<xs:enumeration value="LPL"/>
<xs:enumeration value="CSD"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionCDCEnum">
<xs:restriction base="xs:Name">
<xs:minLength value="1"/>
<xs:pattern value="\p{Lu}+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tCDCEnum">
<xs:union memberTypes="tPredefinedCDCEnum tExtensionCDCEnum"/>
</xs:simpleType>
<xs:simpleType name="tTrgOptEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="dchg"/>
<xs:enumeration value="qchg"/>
<xs:enumeration value="dupd"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tTrgOptControlEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="dchg"/>
<xs:enumeration value="qchg"/>
<xs:enumeration value="dupd"/>
<xs:enumeration value="period"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tFCEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="ST"/>
<xs:enumeration value="MX"/>
<xs:enumeration value="CO"/>
<xs:enumeration value="SP"/>
<xs:enumeration value="SG"/>
<xs:enumeration value="SE"/>
<xs:enumeration value="SV"/>
<xs:enumeration value="CF"/>
<xs:enumeration value="DC"/>
<xs:enumeration value="EX"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tServiceFCEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="SG"/>
<xs:enumeration value="BR"/>
<xs:enumeration value="RP"/>
<xs:enumeration value="LG"/>
<xs:enumeration value="GO"/>
<xs:enumeration value="GS"/>
<xs:enumeration value="MS"/>
<xs:enumeration value="US"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tPredefinedBasicTypeEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="BOOLEAN"/>
<xs:enumeration value="INT8"/>
<xs:enumeration value="INT16"/>
<xs:enumeration value="INT24"/>
<xs:enumeration value="INT32"/>
<xs:enumeration value="INT128"/>
<xs:enumeration value="INT8U"/>
<xs:enumeration value="INT16U"/>
<xs:enumeration value="INT24U"/>
<xs:enumeration value="INT32U"/>
<xs:enumeration value="FLOAT32"/>
<xs:enumeration value="FLOAT64"/>
<xs:enumeration value="Enum"/>
<xs:enumeration value="Dbpos"/>
<xs:enumeration value="Tcmd"/>
<xs:enumeration value="Quality"/>
<xs:enumeration value="Timestamp"/>
<xs:enumeration value="VisString32"/>
<xs:enumeration value="VisString64"/>
<xs:enumeration value="VisString129"/>
<xs:enumeration value="VisString255"/>
<xs:enumeration value="Octet64"/>
<xs:enumeration value="Struct"/>
<xs:enumeration value="EntryTime"/>
<xs:enumeration value="Unicode255"/>
<xs:enumeration value="Check"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tExtensionBasicTypeEnum">
<xs:restriction base="xs:Name">
<xs:pattern value="\p{Lu}[\p{L},\d]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tBasicTypeEnum">
<xs:union memberTypes="tPredefinedBasicTypeEnum tExtensionBasicTypeEnum"/>
</xs:simpleType>
<xs:simpleType name="tValKindEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="Spec"/>
<xs:enumeration value="Conf"/>
<xs:enumeration value="RO"/>
<xs:enumeration value="Set"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tGSEControlTypeEnum">
<xs:restriction base="xs:Name">
<xs:enumeration value="GSSE"/>
<xs:enumeration value="GOOSE"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tSIUnitEnum">
<xs:restriction base="xs:token">
<xs:enumeration value="none"/>
<xs:enumeration value="m"/>
<xs:enumeration value="kg"/>
<xs:enumeration value="s"/>
<xs:enumeration value="A"/>
<xs:enumeration value="K"/>
<xs:enumeration value="mol"/>
<xs:enumeration value="cd"/>
<xs:enumeration value="deg"/>
<xs:enumeration value="rad"/>
<xs:enumeration value="sr"/>
<xs:enumeration value="Gy"/>
<xs:enumeration value="q"/>
<xs:enumeration value="°C"/>
<xs:enumeration value="Sv"/>
<xs:enumeration value="F"/>
<xs:enumeration value="C"/>
<xs:enumeration value="S"/>
<xs:enumeration value="H"/>
<xs:enumeration value="V"/>
<xs:enumeration value="ohm"/>
<xs:enumeration value="J"/>
<xs:enumeration value="N"/>
<xs:enumeration value="Hz"/>
<xs:enumeration value="lx"/>
<xs:enumeration value="Lm"/>
<xs:enumeration value="Wb"/>
<xs:enumeration value="T"/>
<xs:enumeration value="W"/>
<xs:enumeration value="Pa"/>
<xs:enumeration value="m^2"/>
<xs:enumeration value="m^3"/>
<xs:enumeration value="m/s"/>
<xs:enumeration value="m/s^2"/>
<xs:enumeration value="m^3/s"/>
<xs:enumeration value="m/m^3"/>
<xs:enumeration value="M"/>
<xs:enumeration value="kg/m^3"/>
<xs:enumeration value="m^2/s"/>
<xs:enumeration value="W/m K"/>
<xs:enumeration value="J/K"/>
<xs:enumeration value="ppm"/>
<xs:enumeration value="s^-1"/>
<xs:enumeration value="rad/s"/>
<xs:enumeration value="VA"/>
<xs:enumeration value="Watts"/>
<xs:enumeration value="VAr"/>
<xs:enumeration value="phi"/>
<xs:enumeration value="cos_phi"/>
<xs:enumeration value="Vs"/>
<xs:enumeration value="V^2"/>
<xs:enumeration value="As"/>
<xs:enumeration value="A^2"/>
<xs:enumeration value="A^2 s"/>
<xs:enumeration value="VAh"/>
<xs:enumeration value="Wh"/>
<xs:enumeration value="VArh"/>
<xs:enumeration value="V/Hz"/>
<xs:enumeration value="b/s"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="tUnitMultiplierEnum">
<xs:restriction base="xs:normalizedString">
<xs:enumeration value=""/>
<xs:enumeration value="m"/>
<xs:enumeration value="k"/>
<xs:enumeration value="M"/>
<xs:enumeration value="mu"/>
<xs:enumeration value="y"/>
<xs:enumeration value="z"/>
<xs:enumeration value="a"/>
<xs:enumeration value="f"/>
<xs:enumeration value="p"/>
<xs:enumeration value="n"/>
<xs:enumeration value="c"/>
<xs:enumeration value="d"/>
<xs:enumeration value="da"/>
<xs:enumeration value="H"/>
<xs:enumeration value="G"/>
<xs:enumeration value="T"/>
<xs:enumeration value="P"/>
<xs:enumeration value="E"/>
<xs:enumeration value="Z"/>
<xs:enumeration value="Y"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,595 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:scl="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:attributeGroup name="agAuthentication">
<xs:attribute name="none" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="password" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="weak" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="strong" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="certificate" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:attributeGroup name="agSmvOpts">
<xs:attribute name="refreshTime" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="sampleSynchronized" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="sampleRate" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dataSet" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="security" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:attributeGroup name="agOptFields">
<xs:attribute name="seqNum" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="timeStamp" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dataSet" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="reasonCode" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dataRef" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="entryID" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="configRef" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:attributeGroup name="agLDRef">
<xs:attribute name="iedName" type="tName" use="required"/>
<xs:attribute name="ldInst" type="tName" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="agLNRef">
<xs:attributeGroup ref="agLDRef"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="lnInst" type="tAnyName" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="agDORef">
<xs:attributeGroup ref="agLNRef"/>
<xs:attribute name="doName" type="tName" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="agDARef">
<xs:attributeGroup ref="agDORef"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="fc" type="tFCEnum" use="optional"/>
</xs:attributeGroup>
<xs:complexType name="tIED">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="Services" type="tServices" minOccurs="0"/>
<xs:element name="AccessPoint" type="tAccessPoint" maxOccurs="unbounded">
<xs:unique name="uniqueLNInAccessPoint">
<xs:selector xpath="./scl:LN"/>
<xs:field xpath="@inst"/>
<xs:field xpath="@lnClass"/>
<xs:field xpath="@prefix"/>
</xs:unique>
</xs:element>
</xs:sequence>
<xs:attribute name="type" type="xs:normalizedString" use="optional"/>
<xs:attribute name="manufacturer" type="xs:normalizedString" use="optional"/>
<xs:attribute name="configVersion" type="xs:normalizedString" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServices">
<xs:all>
<xs:element name="DynAssociation" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="SettingGroups" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="SGEdit" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfSG" type="tServiceYesNo" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="GetDirectory" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="GetDataObjectDefinition" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="DataObjectDirectory" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="GetDataSetValue" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="SetDataSetValue" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="DataSetDirectory" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfDataSet" type="tServiceWithMaxAndMaxAttributesAndModify" minOccurs="0"/>
<xs:element name="DynDataSet" type="tServiceWithMaxAndMaxAttributes" minOccurs="0"/>
<xs:element name="ReadWrite" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="TimerActivatedControl" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfReportControl" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="GetCBValues" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfLogControl" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="ReportSettings" type="tReportSettings" minOccurs="0"/>
<xs:element name="LogSettings" type="tLogSettings" minOccurs="0"/>
<xs:element name="GSESettings" type="tGSESettings" minOccurs="0"/>
<xs:element name="SMVSettings" type="tSMVSettings" minOccurs="0"/>
<xs:element name="GSEDir" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="GOOSE" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="GSSE" type="tServiceWithMax" minOccurs="0"/>
<xs:element name="FileHandling" type="tServiceYesNo" minOccurs="0"/>
<xs:element name="ConfLNs" type="tConfLNs" minOccurs="0"/>
<xs:element name="ClientServices" type="tClientServices" minOccurs="0"/>
</xs:all>
</xs:complexType>
<xs:complexType name="tAccessPoint">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:choice minOccurs="0">
<xs:element name="Server" type="tServer">
<xs:unique name="uniqueAssociationInServer">
<xs:selector xpath="./scl:Association"/>
<xs:field xpath="@associationID"/>
</xs:unique>
</xs:element>
<xs:element ref="LN" maxOccurs="unbounded"/>
</xs:choice>
<xs:attribute name="router" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="clock" type="xs:boolean" use="optional" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServer">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Authentication">
<xs:complexType>
<xs:attributeGroup ref="agAuthentication"/>
</xs:complexType>
</xs:element>
<xs:element name="LDevice" type="tLDevice" maxOccurs="unbounded">
<xs:unique name="uniqueLNInLDevice">
<xs:selector xpath="./scl:LN"/>
<xs:field xpath="@inst"/>
<xs:field xpath="@lnClass"/>
<xs:field xpath="@prefix"/>
</xs:unique>
</xs:element>
<xs:element name="Association" type="tAssociation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="timeout" type="xs:unsignedInt" use="optional" default="30"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLDevice">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element ref="LN0"/>
<xs:element ref="LN" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="AccessControl" type="tAccessControl" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="inst" type="tName" use="required"/>
<xs:attribute name="ldName" type="tRestrLdName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAccessControl" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAssociation">
<xs:attribute name="kind" type="tAssociationKindEnum" use="required"/>
<xs:attribute name="associationID" type="tName" use="optional"/>
<xs:attributeGroup ref="agLNRef"/>
</xs:complexType>
<xs:element name="LN0">
<xs:complexType>
<xs:complexContent>
<xs:extension base="tLN0"/>
</xs:complexContent>
</xs:complexType>
<xs:unique name="uniqueReportControlInLN0">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueLogControlInLN0">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGSEControlInLN0">
<xs:selector xpath="./scl:GSEControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueSampledValueControlInLN0">
<xs:selector xpath="./scl:SampledValueControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="DataSetKeyLN0">
<xs:selector xpath="./scl:DataSet"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:keyref name="ref2DataSetReportLN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetLogLN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetGSELN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:GSEControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetSVLN0" refer="DataSetKeyLN0">
<xs:selector xpath="./scl:SampledValueControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
</xs:element>
<xs:element name="LN" type="tLN">
<xs:unique name="uniqueReportControlInLN">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueLogControlInLN">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="DataSetKeyInLN">
<xs:selector xpath="./scl:DataSet"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:keyref name="ref2DataSetReport" refer="DataSetKeyInLN">
<xs:selector xpath="./scl:ReportControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
<xs:keyref name="ref2DataSetLog" refer="DataSetKeyInLN">
<xs:selector xpath="./scl:LogControl"/>
<xs:field xpath="@datSet"/>
</xs:keyref>
</xs:element>
<xs:complexType name="tAnyLN" abstract="true">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="DataSet" type="tDataSet" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ReportControl" type="tReportControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="LogControl" type="tLogControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="DOI" type="tDOI" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Inputs" type="tInputs" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="lnType" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLN">
<xs:complexContent>
<xs:extension base="tAnyLN">
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="inst" type="xs:unsignedInt" use="required"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLN0">
<xs:complexContent>
<xs:extension base="tAnyLN">
<xs:sequence>
<xs:element name="GSEControl" type="tGSEControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SampledValueControl" type="tSampledValueControl" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SettingControl" type="tSettingControl" minOccurs="0"/>
<xs:element name="SCLControl" type="tSCLControl" minOccurs="0"/>
<xs:element name="Log" type="tLog" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required" fixed="LLN0"/>
<xs:attribute name="inst" type="xs:normalizedString" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDataSet">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:choice maxOccurs="unbounded">
<xs:element name="FCDA" type="tFCDA"/>
<xs:element name="FCCB" type="tFCCB"/>
</xs:choice>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tFCDA">
<xs:attribute name="ldInst" type="tName" use="optional"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="optional"/>
<xs:attribute name="lnInst" type="tName" use="optional"/>
<xs:attribute name="doName" type="tName" use="optional"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="fc" type="tFCEnum" use="required"/>
</xs:complexType>
<xs:complexType name="tFCCB">
<xs:attribute name="ldInst" type="tName" use="required"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="lnInst" type="tName" use="optional"/>
<xs:attribute name="cbName" type="tName" use="required"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="fc" type="tServiceFCEnum" use="required"/>
</xs:complexType>
<xs:complexType name="tControl" abstract="true">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:attribute name="datSet" type="tName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tControlWithTriggerOpt" abstract="true">
<xs:complexContent>
<xs:extension base="tControl">
<xs:sequence>
<xs:element name="TrgOps" type="tTrgOps" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="intgPd" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTrgOps">
<xs:attribute name="dchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="qchg" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="dupd" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="period" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
<xs:complexType name="tReportControl">
<xs:complexContent>
<xs:extension base="tControlWithTriggerOpt">
<xs:sequence>
<xs:element name="OptFields">
<xs:complexType>
<xs:attributeGroup ref="agOptFields"/>
</xs:complexType>
</xs:element>
<xs:element name="RptEnabled" type="tRptEnabled" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="rptID" type="tName" use="optional"/>
<xs:attribute name="confRev" type="xs:unsignedInt" use="required"/>
<xs:attribute name="buffered" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="bufTime" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tRptEnabled">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="ClientLN" type="tClientLN" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="max" type="xs:unsignedInt" use="optional" default="1"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tClientLN">
<xs:attributeGroup ref="agLNRef"/>
</xs:complexType>
<xs:complexType name="tLogControl">
<xs:complexContent>
<xs:extension base="tControlWithTriggerOpt">
<xs:attribute name="logName" type="tName" use="required"/>
<xs:attribute name="logEna" type="xs:boolean" use="optional" default="true"/>
<xs:attribute name="reasonCode" type="xs:boolean" use="optional" default="true"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tInputs">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="ExtRef" type="tExtRef" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tExtRef">
<xs:attributeGroup ref="agDORef"/>
<xs:attribute name="daName" type="tName" use="optional"/>
<xs:attribute name="intAddr" type="xs:normalizedString" use="optional"/>
</xs:complexType>
<xs:complexType name="tLog" mixed="true">
<xs:complexContent mixed="true">
<xs:extension base="tAnyContentFromOtherNamespace"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tControlWithIEDName">
<xs:complexContent>
<xs:extension base="tControl">
<xs:sequence>
<xs:element name="IEDName" type="tName" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="confRev" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tGSEControl">
<xs:complexContent>
<xs:extension base="tControlWithIEDName">
<xs:attribute name="type" type="tGSEControlTypeEnum" use="optional" default="GOOSE"/>
<xs:attribute name="appID" type="xs:normalizedString" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSampledValueControl">
<xs:complexContent>
<xs:extension base="tControlWithIEDName">
<xs:sequence>
<xs:element name="SmvOpts">
<xs:complexType>
<xs:attributeGroup ref="agSmvOpts"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="smvID" type="xs:normalizedString" use="required"/>
<xs:attribute name="multicast" type="xs:boolean" default="true"/>
<xs:attribute name="smpRate" type="xs:unsignedInt" use="required"/>
<xs:attribute name="nofASDU" type="xs:unsignedInt" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSettingControl">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="numOfSGs" type="xs:unsignedInt" use="required"/>
<xs:attribute name="actSG" type="xs:unsignedInt" use="optional" default="1"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSCLControl">
<xs:complexContent>
<xs:extension base="tUnNaming"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDOI">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SDI" type="tSDI"/>
<xs:element name="DAI" type="tDAI"/>
</xs:choice>
<xs:attribute name="name" type="tRestrName1stU" use="required"/>
<xs:attribute name="ix" type="xs:unsignedInt" use="optional"/>
<xs:attribute name="accessControl" type="xs:normalizedString" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSDI">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SDI" type="tSDI"/>
<xs:element name="DAI" type="tDAI"/>
</xs:choice>
<xs:attribute name="name" type="tAttributeNameEnum" use="required"/>
<xs:attribute name="ix" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tDAI">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:sequence>
<xs:element name="Val" type="tVal" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="tAttributeNameEnum" use="required"/>
<xs:attribute name="sAddr" type="xs:normalizedString" use="optional"/>
<xs:attribute name="valKind" type="tValKindEnum" use="optional" default="Set"/>
<xs:attribute name="ix" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServiceYesNo"/>
<xs:complexType name="tServiceWithMax">
<xs:attribute name="max" type="xs:unsignedInt" use="required"/>
</xs:complexType>
<xs:complexType name="tServiceWithMaxAndMaxAttributes">
<xs:complexContent>
<xs:extension base="tServiceWithMax">
<xs:attribute name="maxAttributes" type="xs:unsignedInt" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServiceWithMaxAndModify">
<xs:complexContent>
<xs:extension base="tServiceWithMax">
<xs:attribute name="modify" type="xs:boolean" use="optional" default="true"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tServiceWithMaxAndMaxAttributesAndModify">
<xs:complexContent>
<xs:extension base="tServiceWithMaxAndMaxAttributes">
<xs:attribute name="modify" type="xs:boolean" use="optional" default="true"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tClientServices">
<xs:attribute name="goose" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="gsse" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="bufReport" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="unbufReport" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="readLog" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
<xs:complexType name="tServiceSettings" abstract="true">
<xs:attribute name="cbName" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="datSet" type="tServiceSettingsEnum" use="optional" default="Fix"/>
</xs:complexType>
<xs:complexType name="tReportSettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:attribute name="rptID" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="optFields" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="bufTime" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="trgOps" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="intgPd" type="tServiceSettingsEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLogSettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:attribute name="logEna" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="trgOps" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="intgPd" type="tServiceSettingsEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tGSESettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:attribute name="appID" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="dataLabel" type="tServiceSettingsEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSMVSettings">
<xs:complexContent>
<xs:extension base="tServiceSettings">
<xs:sequence>
<xs:element name="SmpRate" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
<xs:attribute name="svID" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="optFields" type="tServiceSettingsEnum" use="optional" default="Fix"/>
<xs:attribute name="smpRate" type="tServiceSettingsEnum" use="optional" default="Fix"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConfLNs">
<xs:attribute name="fixPrefix" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="fixLnInst" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
<xs:element name="IED" type="tIED">
<xs:unique name="uniqueAccessPointInIED">
<xs:selector xpath="./scl:AccessPoint"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice"/>
<xs:field xpath="@inst"/>
</xs:key>
<xs:keyref name="ref2LDeviceInIED" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN0/scl:LogControl"/>
<xs:field xpath="@logName"/>
</xs:keyref>
<xs:keyref name="ref2LDeviceInDataSetForFCDAinLN" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN/scl:DataSet/scl:FCDA"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>
<xs:keyref name="ref2LDeviceInDataSetForFCCBinLN" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN/scl:DataSet/scl:FCCB"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>
<xs:keyref name="ref2LDeviceInDataSetForFCDAinLN0" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN0/scl:DataSet/scl:FCDA"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>
<xs:keyref name="ref2LDeviceInDataSetForFCCBinLN0" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN0/scl:DataSet/scl:FCCB"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>
<!--<xs:keyref name="ref2LDeviceInDataSetForFCDAinLN" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN/scl:DataSet"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>
<xs:keyref name="ref2LDeviceInDataSetForFCDAinLN0" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:Server/scl:LDevice/scl:LN0/scl:DataSet"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>
<xs:keyref name="ref2LDeviceInDataSetForFCDAinLN2" refer="LDeviceInIEDKey">
<xs:selector xpath="./scl:AccessPoint/scl:LN/scl:DataSet"/>
<xs:field xpath="@ldInst"/>
</xs:keyref>-->
</xs:element>
</xs:schema>

View File

@ -0,0 +1,276 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.iec.ch/61850/2006/SCL" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.iec.ch/61850/2006/SCL" xmlns:scl="http://www.iec.ch/61850/2006/SCL" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.4">
<xs:annotation>
<xs:documentation xml:lang="en">COPYRIGHT IEC, 2005. Version 1.4. Release 2005/09/11.</xs:documentation>
</xs:annotation>
<xs:include schemaLocation="SCL_BaseTypes.xsd"/>
<xs:attributeGroup name="agVirtual">
<xs:attribute name="virtual" type="xs:boolean" use="optional" default="false"/>
</xs:attributeGroup>
<xs:complexType name="tLNodeContainer" abstract="true">
<xs:complexContent>
<xs:extension base="tNaming">
<xs:sequence>
<xs:element name="LNode" type="tLNode" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPowerSystemResource" abstract="true">
<xs:complexContent>
<xs:extension base="tLNodeContainer"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEquipmentContainer" abstract="true">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:sequence>
<xs:element name="PowerTransformer" type="tPowerTransformer" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueWindingInPowerTransformer">
<xs:selector xpath="./scl:TransformerWinding"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="GeneralEquipment" type="tGeneralEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tEquipment" abstract="true">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:attributeGroup ref="agVirtual"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tAbstractConductingEquipment" abstract="true">
<xs:complexContent>
<xs:extension base="tEquipment">
<xs:sequence>
<xs:element name="Terminal" type="tTerminal" minOccurs="0" maxOccurs="2"/>
<xs:element name="SubEquipment" type="tSubEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConductingEquipment">
<xs:complexContent>
<xs:extension base="tAbstractConductingEquipment">
<xs:attribute name="type" type="tCommonConductingEquipmentEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubEquipment">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:attribute name="phase" type="tPhaseEnum" use="optional" default="none"/>
<xs:attributeGroup ref="agVirtual"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tPowerTransformer">
<xs:complexContent>
<xs:extension base="tEquipment">
<xs:sequence>
<xs:element name="TransformerWinding" type="tTransformerWinding" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="type" type="tPowerTransformerEnum" use="required" fixed="PTR"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTransformerWinding">
<xs:complexContent>
<xs:extension base="tAbstractConductingEquipment">
<xs:sequence>
<xs:element name="TapChanger" type="tTapChanger" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="type" type="tTransformerWindingEnum" use="required" fixed="PTW"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTapChanger">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:attribute name="type" type="xs:Name" use="required" fixed="LTC"/>
<xs:attributeGroup ref="agVirtual"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tGeneralEquipment">
<xs:complexContent>
<xs:extension base="tEquipment">
<xs:attribute name="type" type="tGeneralEquipmentEnum" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubstation">
<xs:complexContent>
<xs:extension base="tEquipmentContainer">
<xs:sequence>
<xs:element name="VoltageLevel" type="tVoltageLevel" maxOccurs="unbounded">
<xs:unique name="uniqueBayInVoltageLevel">
<xs:selector xpath="./scl:Bay"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniquePowerTransformerInVoltageLevel">
<xs:selector xpath="./scl:PowerTransformer"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInVoltageLevel">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueChildNameInVoltageLevel">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="Function" type="tFunction" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueSubFunctionInFunction">
<xs:selector xpath="./scl:SubFunction"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInFunction">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tVoltageLevel">
<xs:complexContent>
<xs:extension base="tEquipmentContainer">
<xs:sequence>
<xs:element name="Voltage" type="tVoltage" minOccurs="0"/>
<xs:element name="Bay" type="tBay" maxOccurs="unbounded">
<xs:unique name="uniquePowerTransformerInBay">
<xs:selector xpath="./scl:PowerTransformer"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueConductingEquipmentInBay">
<xs:selector xpath="./scl:ConductingEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInBay">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueChildNameInBay">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tBay">
<xs:complexContent>
<xs:extension base="tEquipmentContainer">
<xs:sequence>
<xs:element name="ConductingEquipment" type="tConductingEquipment" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ConnectivityNode" type="tConnectivityNode" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tLNode">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="lnInst" type="tAnyName" use="optional"/>
<xs:attribute name="lnClass" type="tLNClassEnum" use="required"/>
<xs:attribute name="iedName" type="tName" use="optional" default="None"/>
<xs:attribute name="ldInst" type="tAnyName" use="optional"/>
<xs:attribute name="prefix" type="tAnyName" use="optional"/>
<xs:attribute name="lnType" type="tName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tFunction">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:sequence>
<xs:element name="SubFunction" type="tSubFunction" minOccurs="0" maxOccurs="unbounded">
<xs:unique name="uniqueGeneralEquipmentInSubFunction">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
<xs:element name="GeneralEquipment" type="tGeneralEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tSubFunction">
<xs:complexContent>
<xs:extension base="tPowerSystemResource">
<xs:sequence>
<xs:element name="GeneralEquipment" type="tGeneralEquipment" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tConnectivityNode">
<xs:complexContent>
<xs:extension base="tLNodeContainer">
<xs:attribute name="pathName" type="tRef" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="tTerminal">
<xs:complexContent>
<xs:extension base="tUnNaming">
<xs:attribute name="name" type="tAnyName" use="optional"/>
<xs:attribute name="connectivityNode" type="tRef" use="required"/>
<xs:attribute name="substationName" type="tName" use="required"/>
<xs:attribute name="voltageLevelName" type="tName" use="required"/>
<xs:attribute name="bayName" type="tName" use="required"/>
<xs:attribute name="cNodeName" type="tName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="Substation" type="tSubstation">
<xs:unique name="uniqueVoltageLevelInSubstation">
<xs:selector xpath="./scl:VoltageLevel"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniquePowerTranformerInSubstation">
<xs:selector xpath="./scl:PowerTransformer"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueGeneralEquipmentInSubstation">
<xs:selector xpath="./scl:GeneralEquipment"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:unique name="uniqueFunctionInSubstation">
<xs:selector xpath="./scl:Function"/>
<xs:field xpath="@name"/>
</xs:unique>
<xs:key name="ConnectivityNodeKey">
<xs:selector xpath=".//scl:ConnectivityNode"/>
<xs:field xpath="@pathName"/>
</xs:key>
<xs:unique name="uniqueLNode">
<xs:selector xpath=".//scl:LNode"/>
<xs:field xpath="@lnInst"/>
<xs:field xpath="@lnClass"/>
<xs:field xpath="@iedName"/>
<xs:field xpath="@ldInst"/>
<xs:field xpath="@prefix"/>
</xs:unique>
<xs:unique name="uniqueChildNameInSubstation">
<xs:selector xpath="./*"/>
<xs:field xpath="@name"/>
</xs:unique>
<!-- This identity constraint must be removed, as there is a problem with the (according to part 6 text)
predefined connectivity node grounded resp GROUNDED. If a terminal references this node, which
is naturally NOT defined explicitely in the SCL file, verification fails.
<xs:keyref name="ref2ConnectivityNode" refer="ConnectivityNodeKey">
<xs:selector xpath=".//scl:Terminal"/>
<xs:field xpath="@connectivityNode"/>
</xs:keyref>
-->
</xs:element>
</xs:schema>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,71 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: 2019-07-17 09:49+0800\n"
"PO-Revision-Date: 2019-10-22 11:31+0800\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: en_GB\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.4\n"
"X-Poedit-Basepath: ../../../../../src/application/apc_if_srv\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Poedit-KeywordsList: I18N;I18N_C\n"
"X-Poedit-SearchPath-0: .\n"
#: CApcIfSrv.cpp:137
#, c-format
msgid ""
"I18N output test\n"
" This is src hardcode. \n"
" int = [%d] , str = [%s]\n"
msgstr ""
"I18N output test\n"
" This is English(Great Britain). \n"
" int = [%d] , str = [%s]\n"
#: CThreadAnalog.cpp:291
msgid "控制目标值非法控制消息中var_value不是DOUBLE或dValue未填充"
msgstr ""
"Control target value is illegal,the var_value in control message is "
"not DOUBLE or dValue is not filled!"
#: CThreadAnalog.cpp:347 CThreadDigital.cpp:328 CThreadLocalCurve.cpp:706
msgid " 提交失败"
msgstr "Commit failed"
#: CThreadDigital.cpp:275
msgid "控制目标值非法控制消息中var_value不是INT32或nValue未填充"
msgstr ""
"Control target value is illegal,the var_value in control message is "
"not INT32 or nValue is not filled!"
#: CThreadLocalCurve.cpp:234
msgid "计划曲线\"%1%\"查询不到今天的年、周规则或规则重复,请检查配置!"
msgstr ""
"Plan curve '%1%' unable to query today's year rule and week rule,or "
"rule duplication,please check configuration!"
#: CThreadLocalCurve.cpp:250
msgid ""
"计划曲线\"%1%\"根据年规则ID = %2%周规则ID = %3%,查询不到日规则,请检"
"查配置!"
msgstr ""
"Plan curve '%1%',according to the year rule = %2% and week rule = %3% "
"unable to find day rule,please check configuration!"
#: CThreadLocalCurve.cpp:273
msgid ""
"计划曲线\"%1%\"查询不到当前值或值重复请检查日规则ID = %2%)配置!"
msgstr ""
"Plan curve '%1%' unable to query current value or value duplication,"
"please check the configuration of day rule(ID = %2%)!"
#: CThreadLocalCurve.cpp:302
msgid "计划曲线\"%1%\"输出测点\"%2%\"格式错误,请检查配置!"
msgstr ""
"Plan curve '%1%',format error of output measurement point'%2%',please "
"check configuration!"

Binary file not shown.

After

Width:  |  Height:  |  Size: 651 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 768 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 432 B

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -0,0 +1,798 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: 2019-10-24 09:29+0800\n"
"PO-Revision-Date: 2019-10-24 16:39+0800\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.4\n"
"X-Poedit-Basepath: ../../../../../src/fes\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Poedit-KeywordsList: I18N;I18N_C\n"
"X-Poedit-SearchPath-0: fes\n"
"X-Poedit-SearchPath-1: protocol\n"
#: protocol/iec104/IEC104DataProcThread.cpp:3310
#, c-format
msgid "IEC104 遥控失败RtuNo:%d 通信中断"
msgstr "IEC104 Remote control failed! RtuNo:%d communication interrupt"
#: protocol/iec104/IEC104DataProcThread.cpp:3411
#, c-format
msgid "IEC104 遥控失败RtuNo:%d 找不到遥控点:%d"
msgstr "IEC104 Remote control failed! RtuNo:%d cannot find remote control point: %d"
#: protocol/iec104/IEC104DataProcThread.cpp:3458
#: protocol/iec104/IEC104DataProcThread.cpp:3666
#, c-format
msgid "IEC104 遥调失败RtuNo:%d 通信中断"
msgstr "IEC104 Remote adjustment failed! RtuNo:%d communication interrupt"
#: protocol/iec104/IEC104DataProcThread.cpp:3493
#: protocol/iec104/IEC104DataProcThread.cpp:3721
#, c-format
msgid "IEC104 遥调失败RtuNo:%d 遥调点:%d 范围超出"
msgstr "IEC104 Remote adjustment failed! RtuNo:%d Remote adjustment point: %d out of range"
#: protocol/iec104/IEC104DataProcThread.cpp:3610
#: protocol/iec104/IEC104DataProcThread.cpp:3795
#, c-format
msgid "IEC104 遥调失败RtuNo:%d 找不到遥调点:%d"
msgstr "IEC104 Remote adjustment failed! RtuNo:%d cannot find remote adjustment point: %d"
#: protocol/iec104/IEC104DataProcThread.cpp:3756
#, c-format
msgid "IEC104 遥调成功RtuNo:%d value=%f"
msgstr "IEC104 Remote adjustment success! RtuNo:%d value=%f"
#: protocol/iec104/IEC104DataProcThread.cpp:3763
#, c-format
msgid "IEC104 遥调成功RtuNo:%d value=%d"
msgstr "IEC104 Remote adjustment success! RtuNo:%d value=%d"
#: protocol/iec104/IEC104DataProcThread.cpp:3841
#, c-format
msgid "IEC104 遥控成功RtuNo:%d 遥控点:%d"
msgstr "IEC104 Remote control success! RtuNo:%d Remote control point: %d"
#: protocol/iec104/IEC104DataProcThread.cpp:3848
#: protocol/iec104/IEC104DataProcThread.cpp:4093
#: protocol/kbd104/KBD104DataProcThread.cpp:2308
#: protocol/kbd104/KBD104DataProcThread.cpp:3668
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:360
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1543
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:492
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2254
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2398
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:442
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2074
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2198
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:1108
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1105
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1284
#, c-format
msgid "遥控失败RtuNo:%d 遥控点:%d"
msgstr "Remote control failed! RtuNo:%d Remote control point: %d"
#: protocol/iec104/IEC104DataProcThread.cpp:3877
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1566
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2278
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2090
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1134
#, c-format
msgid "遥调成功RtuNo:%d 遥调点:%d"
msgstr "Remote adjustment success! RtuNo:%d Remote adjustment point: %d"
#: protocol/iec104/IEC104DataProcThread.cpp:3884
#: protocol/iec104/IEC104DataProcThread.cpp:4112
#: protocol/kbd104/KBD104DataProcThread.cpp:3692
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1571
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:642
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2283
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2418
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:572
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2095
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2215
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:1125
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1141
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1303
#, c-format
msgid "遥调失败RtuNo:%d 遥调点:%d"
msgstr "Remote adjustment failed! RtuNo:%d Remote adjustment point: %d"
#: protocol/iec104/IEC104DataProcThread.cpp:4140
#: protocol/kbd104/KBD104DataProcThread.cpp:3716
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1594
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:772
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2306
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2446
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:687
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2111
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2233
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:1143
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1331
#, c-format
msgid "混合量输出成功RtuNo:%d 混合量输出点:%d"
msgstr "The output of mix is successful! RtuNo:%d Mix output point: %d"
#: protocol/kbd104/KBD104DataProcThread.cpp:2026
#, c-format
msgid "KBD104 遥控失败RtuNo:%d 通信中断"
msgstr "KBD104 Remote control failed! RtuNo:%d communication interrupt"
#: protocol/kbd104/KBD104DataProcThread.cpp:2094
#, c-format
msgid "KBD104 遥控失败RtuNo:%d 找不到遥控点:%d"
msgstr "KBD104 Remote control failed! RtuNo:%d cannot find remote control point: %d"
#: protocol/kbd104/KBD104DataProcThread.cpp:2144
#, c-format
msgid "KBD104 遥调失败RtuNo:%d 通信中断"
msgstr "KBD104 Remote adjustment failed! RtuNo:%d communication interrupt"
#: protocol/kbd104/KBD104DataProcThread.cpp:2180
#, c-format
msgid "KBD104 遥调失败RtuNo:%d 遥调点:%d 范围超出"
msgstr "KBD104 Remote adjustment failed! RtuNo:%d Remote adjustment point: %d out of range"
#: protocol/kbd104/KBD104DataProcThread.cpp:2260
#, c-format
msgid "KBD104 遥调失败RtuNo:%d 找不到遥调点"
msgstr "KBD104 Remote adjustment failed! RtuNo:%d cannot find remote adjustment point"
#: protocol/kbd104/KBD104DataProcThread.cpp:2301
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:343
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1538
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:475
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2248
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:428
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2069
#, c-format
msgid "遥控成功RtuNo:%d 遥控点:%d"
msgstr "Remote control success! RtuNo:%d Remote control point: %d"
#: protocol/kbd104/KBD104DataProcThread.cpp:2335
#, c-format
msgid "遥调成功RtuNo:%d 遥控点:%d"
msgstr "Remote adjustment success! RtuNo:%d Remote control point: %d"
#: protocol/kbd104/KBD104DataProcThread.cpp:2342
#, c-format
msgid "遥调失败RtuNo:%d 遥控点:%d"
msgstr "Remote adjustment failed! RtuNo:%d Remote control point: %d"
#: protocol/kbd104/KBD104DataProcThread.cpp:3097
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3083
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:460
#, c-format
msgid "HMI命令解析失败,不下发控制命令RtuNo:%d "
msgstr "Failed to parse HMI command,no send control command down! RtuNo:%d"
#: protocol/kbd104/KBD104DataProcThread.cpp:3268
#: protocol/kbd104/KBD104DataProcThread.cpp:3353
#: protocol/kbd104/KBD104DataProcThread.cpp:3445
#: protocol/kbd104/KBD104DataProcThread.cpp:3536
#: protocol/kbd104/KBD104DataProcThread.cpp:3615
#, c-format
msgid "RtuNo:%d %s"
msgstr "RtuNo:%d %s"
#: protocol/kbd104/KBD104DataProcThread.cpp:3273
#, c-format
msgid "KBD104 定值读取失败RtuNo:%d"
msgstr "KBD104 Read const failed! RtuNo:%d"
#: protocol/kbd104/KBD104DataProcThread.cpp:3358
#, c-format
msgid "KBD104 定值读取成功RtuNo:%d"
msgstr "KBD104 Read const success! RtuNo:%d"
#: protocol/kbd104/KBD104DataProcThread.cpp:3450
#, c-format
msgid "KBD104 定值修改失败RtuNo:%d"
msgstr "KBD104 Modify const failed! RtuNo:%d"
#: protocol/kbd104/KBD104DataProcThread.cpp:3541
#, c-format
msgid "KBD104 定值修改成功RtuNo:%d"
msgstr "KBD104 Modify const success! RtuNo:%d"
#: protocol/kbd104/KBD104DataProcThread.cpp:3620
#, c-format
msgid "KBD104 确认修改定值RtuNo:%d rtuStatus:%d"
msgstr "KBD104 Confirm to modify the const! RtuNo:%d rtuStatus:%d"
#: protocol/kbd61850m/IEC61850_DecodeResPkt.cpp:1079
msgid "写值不成功!"
msgstr "Write value failure!"
#: protocol/kbd61850m/IEC61850_DecodeResPkt.cpp:1122
msgid "写值成功!"
msgstr "Write value success!"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:402
#, c-format
msgid "建立双边关联失败%s"
msgstr "Failed to establish bilateral connection%s"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1304
#, c-format
msgid "Ping %s...成功\n"
msgstr "Ping %s...successful\n"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1314
#, c-format
msgid "Ping %s失败下次重试\n"
msgstr "Ping %s failedtry again next time\n"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1434
#, c-format
msgid "connect %s...成功!"
msgstr "connect %s...successful!"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1443
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1457
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1471
#, c-format
msgid "connect %s...失败!"
msgstr "connect %s...failed!"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1498
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1535
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1569
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1584
msgid "建立传输层连接失败!"
msgstr "Failed to establish transport layer connection!"
#: protocol/kbd61850m/IEC61850_FormReqCmd.cpp:1560
msgid "建立传输层连接成功!"
msgstr "Establish transport layer connection successfully!"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:277
#, c-format
msgid "收到总召KWH成功 %s"
msgstr "Received total call KWH success %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:299
#, c-format
msgid "长时间没有召完树,通道:%d 退出"
msgstr "Long time not call tree finish,channel: %d exit"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:312
#, c-format
msgid "通讯中断[%d]"
msgstr "Communication Interrupt[%d]"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:337
#, c-format
msgid "server个数%d,已连接%d,本通道%s.. %s %s NoUpdateTime=%d"
msgstr "server number %d,connected %d,this channel %s.. %s %s NoUpdateTime=%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:344
#, c-format
msgid "通道%s 通信中断,断开连接,重新建立连接"
msgstr "Channel %s communication interrupt, disconnect, reconnect"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:359
#, c-format
msgid "通道%s 接收超时,断开连接,重新建立连接"
msgstr "Channel %s receive timeout, disconnect, reconnect"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:503
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3773
#, c-format
msgid "报告非使能%s%s"
msgstr "Report no enable%s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:539
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3809
#, c-format
msgid "设置总召时间%s:%ld毫秒,%s"
msgstr "Set total call time%s:%ldms,%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:551
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3820
#, c-format
msgid "报告使能%s%s"
msgstr "Report enable%s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:596
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:618
#, c-format
msgid "设置TrgOp%s%s"
msgstr "Set TrgOp%s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:656
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:682
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:707
#, c-format
msgid "设置OptFlds%s%s"
msgstr "Set OptFlds%s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:734
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:745
#, c-format
msgid "读取EntryID%s%s"
msgstr "Read EntryID%s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:753
#, c-format
msgid "设置EntryID%s%s"
msgstr "Set EntryID%s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:788
msgid "PING 套接字错误"
msgstr "PING socket error"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:798
msgid "连接服务器 开"
msgstr "Connect to server open"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:804
#, c-format
msgid "连接服务器%s%s,返回%d"
msgstr "Connect to server %s , %s,return %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:821
msgid "网络不通,退出服务器"
msgstr "No network, log out of server"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:830
msgid "网络可能断开"
msgstr "Network may be disconnected"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:849
msgid "网络不通"
msgstr "No network"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:873
#, c-format
msgid " 通道%d,ExitServer() ret:%d"
msgstr "Channel %d,ExitServer() ret:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:1440
#, c-format
msgid "没有找到RTU名 %s"
msgstr "Cannot find RTU name %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:1451
#, c-format
msgid "通道%d,RTU%d 没有配置数据集合:%s"
msgstr "Channel %d,RTU %d no dataset configure : %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:1470
msgid "上传数据路径为空"
msgstr "The upload data path is empty"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2071
#, c-format
msgid "总召数据集%s:%s"
msgstr "Total call dataset %s:%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2128
#, c-format
msgid "录波:命令[读目录]%s[返回%d]"
msgstr "Wave recording:command[Read Directory]%s[Return %d]"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2192
#, c-format
msgid "录波:状态[目录]%s,文件个数%d"
msgstr "Wave recording:status[Directory]%s,number of file %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2251
#, c-format
msgid "录波:命令[下载]%d,文件名%s"
msgstr "Wave recording:command[Download]%d,file name %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2271
#, c-format
msgid "录波:所有的文件已经下载完成。错误个数%d"
msgstr "Wave recording:all files have been downloaded. Error number %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2321
#, c-format
msgid "录波:状态[下载]%s,文件名%s"
msgstr "Wave recording:status[Download]%s,file name %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2377
#, c-format
msgid "录波:新增%s"
msgstr "Wave recording:new %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2468
#, c-format
msgid "通道所有发送后数据后%ds没有收到数据退出服务器"
msgstr "After send all data in channel,no data received within %ds,log out of server"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2511
msgid "通信没有建立遥控失败"
msgstr "Communication not established,remote control failed"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2537
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2551
msgid "选择成功"
msgstr "Selection success"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2542
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2556
#, c-format
msgid "选择命令成功 %s 值%d"
msgstr "Selection command success %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2570
#, c-format
msgid "下发YK 选择命令成功 %s 值%d"
msgstr "Successful in send YK selection command %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2574
#, c-format
msgid "下发YK 选择命令失败 %s 值%d"
msgstr "Failed to send YK selection command %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2594
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2736
msgid "找不到遥控点遥控失败!"
msgstr "Cannot find remote control point,remote control failed!"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2595
#, c-format
msgid "修改定值组号%s 找不到遥控点遥控失败,RTU:%d,YK:%d cmd:%d"
msgstr "Modify the const group number %s ,cannot find remote control point,remote control failed,RTU:%d,YK:%d cmd:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2608
#, c-format
msgid "修改定值组号%s%s %s"
msgstr "Modify the const group number %s%s %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2615
msgid "修改定值组号失败!...1"
msgstr "Failed to modify the const group number...1"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2616
#, c-format
msgid "修改定值组号%s 失败..1,RTU:%d,YK:%d groupno:%d"
msgstr "Failed to modify the const group number %s..1,RTU:%d,YK:%d groupno:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2626
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3118
#, c-format
msgid "确认激活定值组%s%s %s"
msgstr "Confirm to active the const group %s%s %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2634
msgid "修改定值组号失败!...2"
msgstr "Failed to modify the const group number...2"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2635
#, c-format
msgid "修改定值组号%s 失败...2,RTU:%d,YK:%d groupno:%d"
msgstr "Failed to modify the const group number %s...2,RTU:%d,YK:%d groupno:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2647
msgid "修改定值组号成功!"
msgstr "Modify const group number successfully!"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2648
#, c-format
msgid "修改定值组号%s 成功...2,RTU:%d,YK:%d groupno:%d"
msgstr "Modify const group number %s successfully...2,RTU:%d,YK:%d groupno:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2668
#, c-format
msgid "下发YK 执行命令成功 %s 值%d"
msgstr "Successful in send YK execution command %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2672
#, c-format
msgid "下发YK 执行命令失败 %s 值%d"
msgstr "Failed to send YK execution command %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2682
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2695
msgid "撤销成功"
msgstr "Revocation success"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2687
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2700
#, c-format
msgid "撤销成功 %s 值%d"
msgstr "Revocation success %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2713
#, c-format
msgid "下发YK 撤销命令成功 %s 值%d"
msgstr "Successful in send YK revocation command %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2717
#, c-format
msgid "下发YK 撤销命令失败 %s 值%d"
msgstr "Failed to send YK revocation command %s value %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2738
#, c-format
msgid "找不到遥控点遥控失败,RTU:%d,YK:%d cmd:%d"
msgstr "Cannot find remote control point,remote control failed,RTU:%d,YK:%d cmd:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2776
#, c-format
msgid "遥控返回 retCmd.CtrlDir=%d RtuNo=%d PointID=%d"
msgstr "Return of remote control retCmd.CtrlDir=%d RtuNo=%d PointID=%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2783
msgid "设备返回撤销成功"
msgstr "Device return revocation success"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2784
#, c-format
msgid "设备返回撤销成功RtuNo:%d 遥控点:%d"
msgstr "Device return revocation success! RtuNo:%d Remote control point: %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2789
msgid "设备返回撤销失败"
msgstr "Device return revocation failed"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2790
#, c-format
msgid "设备返回撤销失败RtuNo:%d 遥控点:%d"
msgstr "Device return revocation failed! RtuNo:%d Remote control point: %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2809
msgid "设备返回执行成功"
msgstr "Device return execution success"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2810
#, c-format
msgid "设备返回执行成功RtuNo:%d 遥控点:%d"
msgstr "Device return execution success! RtuNo:%d Remote control point: %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2815
msgid "设备返回执行失败"
msgstr "Device return execution failed"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2816
#, c-format
msgid "设备返回执行失败RtuNo:%d 遥控点:%d"
msgstr "Device return execution failed! RtuNo:%d Remote control point: %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2834
msgid "设备返回选择成功"
msgstr "Device return selection success"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2835
#, c-format
msgid "设备返回选择成功RtuNo:%d 遥控点:%d"
msgstr "Device return selection success! RtuNo:%d Remote control point: %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2840
msgid "设备返回选择失败"
msgstr "Device return selection failed"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2841
#, c-format
msgid "设备返回选择失败RtuNo:%d 遥控点:%d"
msgstr "Device return selection failed! RtuNo:%d Remote control point: %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2902
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2905
#, c-format
msgid "KBD61850 定值控制失败RtuNo:%d 找不到对应的DS"
msgstr "KBD61850 Const control failed! RtuNo:%d cannot find the corresponding DS"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2922
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2925
#, c-format
msgid "KBD61850 定值控制失败RtuNo:%d 通信中断"
msgstr "KBD61850 Const control failed! RtuNo:%d communication interrupt"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2943
#, c-format
msgid "控制参数不正确定值控制失败RtuNo:%d "
msgstr "Incorrect control parameters,const control failed! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:2946
#, c-format
msgid "控制参数不正确定值控制失败RtuNo:%d"
msgstr "Incorrect control parameters,const control failed! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3084
#, c-format
msgid "HMI命令解析失败,不下发控制命令RtuNo:%d"
msgstr "Failed to parse HMI command,no send control command down! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3098
#, c-format
msgid "修改定值组%s%s %s"
msgstr "Modify the const %s%s %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3112
msgid "修改定值组失败"
msgstr "Modify the const failed"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3133
msgid "确认激活定值组失败"
msgstr "Confirm to active the const group failed"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3148
msgid "激活定值组成功"
msgstr "Active the const group successfully"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3277
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3551
#, c-format
msgid "KBD61850 定值读取成功RtuNo:%d"
msgstr "KBD61850 Read const success! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3278
#, c-format
msgid "KBD61850 定值读取成功RtuNo:%d Num=%d"
msgstr "KBD61850 Read const success! RtuNo:%d Num=%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3287
#, c-format
msgid "读定值%s%s"
msgstr "Read const %s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3302
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3306
#, c-format
msgid "开始写定值 组号%s%s %s"
msgstr "Start writing const,group number %s%s %s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3326
#, c-format
msgid "定值写值错误:定值%d"
msgstr "Error writing const: const %d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3341
#, c-format
msgid "改变定值%s(%s)%s"
msgstr "Change the const %s(%s)%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3347
#, c-format
msgid "修改定值%s%s"
msgstr "Modify the const %s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3384
#, c-format
msgid "确认改变定值%s%s"
msgstr "Confirm to change the const %s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3388
#, c-format
msgid "确认修改定值%s%s"
msgstr "Confirm to modify the const %s%s"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3463
msgid "定值操作错误:不能找到定值"
msgstr "Const operation error:cannot find const"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3608
#, c-format
msgid "定值修改成功! RtuNo:%d"
msgstr "Modify const success! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3614
#, c-format
msgid "定值修改失败RtuNo:%d"
msgstr "Modify const failed! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3669
#, c-format
msgid "激活定值修改成功! RtuNo:%d"
msgstr "Active the const modification success! RtuNo:%d"
#: protocol/kbd61850m/KBD61850mDataProcThread.cpp:3675
#, c-format
msgid "激活定值修改失败RtuNo:%d"
msgstr "Active the const modification failed! RtuNo:%d"
#: protocol/kbd61850m/KBD_DLL.cpp:47
#, c-format
msgid "AbortCallback() %s异常中止退出服务器"
msgstr "AbortCallback() %s abort, log out of sever"
#: protocol/kbd61850m/KBD_DLL.cpp:64 protocol/kbd61850m/KBD_DLL.cpp:127
#: protocol/kbd61850m/KBD_DLL.cpp:191 protocol/kbd61850m/KBD_DLL.cpp:228
#, c-format
msgid "没有找到服务器名 %s"
msgstr "Not found the name of server %s"
#: protocol/kbd61850m/KBD_DLL.cpp:132
#, c-format
msgid "通道%d,YK返回%s,%d,%d,%d,%d,%d"
msgstr "Channel %d, YK return:%s,%d,%d,%d,%d,%d"
#: protocol/kbd61850m/KBD_DLL.cpp:196
#, c-format
msgid "通道%d,定值 %s返回%s"
msgstr "Channel %d, const %s return : %s"
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:379
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:511
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:459
#, c-format
msgid "遥控失败RtuNo:%d 找不到遥控点:%d"
msgstr "Remote control failed! RtuNo:%d cannot find remote control point:%d"
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1599
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2311
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2116
#, c-format
msgid "混合量输出失败RtuNo:%d 混合量输出点:%d"
msgstr "The output of mix is failed! RtuNo:%d Mix output point: %d"
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1622
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2334
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:1307
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2132
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:1036
#, c-format
msgid "自定义命令输出成功RtuNo:%d "
msgstr "The custom command output was successful! RtuNo:%d"
#: protocol/modbus_rtu/ModbusRtuDataProcThread.cpp:1627
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2339
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:2468
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:838
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:875
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:905
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:1395
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2138
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:2253
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:568
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:651
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:755
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:1050
#: protocol/modbus_tcp_pis/ModbusPisDataProcThread.cpp:1163
#, c-format
msgid "自定义命令输出失败RtuNo:%d "
msgstr "The custom command output was failed! RtuNo:%d"
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:564
#, c-format
msgid "遥调失败RtuNo:%d 遥调点:%d 量程越限"
msgstr "Remote adjustment failed! RtuNo:%d Remote adjustment point:%d out of limit"
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:570
msgid "遥调失败,量程配置错误,最大量程<=最小量程!"
msgstr "Remote adjustment failed! Range configuration error, maximum range <= minimum range!"
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:577
#, c-format
msgid "遥调失败RtuNo:%d 遥调点:%d 系数为0"
msgstr "Remote adjustment failed! RtuNo:%d Remote adjustment point:%d Coefficient is 0"
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:662
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:523
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:589
#, c-format
msgid "遥调失败RtuNo:%d 找不到遥调点:%d"
msgstr "Remote adjustment failed! RtuNo:%d cannot find remote adjustment point: %d"
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:726
#: protocol/modbus_tcp/ModbusDataProcThread.cpp:791
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:644
#: protocol/modbus_tcp_bas/BasModbusDataProcThread.cpp:703
#, c-format
msgid "混合量输出失败RtuNo:%d 找不到混合量输出点:%d"
msgstr "The output of mix is failed! RtuNo:%d cannot find mix output point: %d"
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1007
#, c-format
msgid "SIEMENS103 遥控失败RtuNo:%d 通信中断"
msgstr "SIEMENS103 Remote control failed! RtuNo:%d communication interrupt"
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1064
#, c-format
msgid "SIEMENS103 遥控失败RtuNo:%d 找不到遥控点:%d"
msgstr "SIEMENS103 Remote control failed! RtuNo:%d cannot find remote control point: %d"
#: protocol/siemens103_tcp/SIEMENS103DataProcThread.cpp:1098
#, c-format
msgid "SIEMENS103 遥控成功RtuNo:%d 遥控点:%d"
msgstr "SIEMENS103 Remote control success! RtuNo:%d Remote control point: %d"

View File

@ -0,0 +1,112 @@
<?xml version='1.0' encoding='UTF-8'?>
<context>
<message source="基本图元" trans="Basic"/>
<message source="多态文本" trans="Polymorphic text"/>
<message source="热键" trans="Poke"/>
<message source="端子" trans="Terminal"/>
<message source="直线" trans="Line"/>
<message source="贝塞尔曲线" trans="Bezier curve"/>
<message source="矩形" trans="Rect"/>
<message source="多边形" trans="Polygon"/>
<message source="折线" trans="Path"/>
<message source="椭圆" trans="Ellipse"/>
<message source="圆" trans="Circle"/>
<message source="圆弧" trans="Arc"/>
<message source="文字" trans="Text"/>
<message source="网格" trans="Grid"/>
<message source="像素图" trans="Bitmap"/>
<message source="图表图元" trans="Chart"/>
<message source="实时图" trans="Line graph"/>
<message source="棒图" trans="Bar graph"/>
<message source="饼图" trans="Bie graph"/>
<message source="常用插件" trans="Plugins"/>
<message source="报表" trans="Report"/>
<message source="趋势" trans="Trend"/>
<message source="事件" trans="Event"/>
<message source="报警" trans="Alarm"/>
<message source="控件图元" trans="Control"/>
<message source="文本输入" trans="TextEdit"/>
<message source="文本框" trans="LineEdit"/>
<message source="按钮" trans="Button"/>
<message source="组合框" trans="ComboBox"/>
<message source="单选按钮" trans="RadioBox"/>
<message source="复选框" trans="CheckBox"/>
<message source="标签" trans="Label"/>
<message source="列表框" trans="List"/>
<message source="数字输入" trans="SpinBox"/>
<message source="日期" trans="Date"/>
<message source="时间" trans="Time"/>
<message source="插件" trans="Plugin"/>
<message source="菜单" trans="Menu"/>
<message source="树形" trans="Tree"/>
<message source="表格" trans="Table"/>
<message source="精灵图元" trans="Sprite"/>
<message source="母联" trans="Bus Tie"/>
<message source="低压开关" trans="Low Voltage Switch"/>
<message source="馈线" trans="Feeder Line"/>
<message source="低压馈线" trans="LowVol Feeder Line"/>
<message source="进线" trans="Incoming Line"/>
<message source="低压进线" trans="LowVol Incoming Line"/>
<message source="仪表" trans="Instrument"/>
<message source="PSCADA图元" trans="PSCADA"/>
<message source="就地远程" trans="Remote"/>
<message source="低压断路器" trans="Low breaker"/>
<message source="带熔断器刀闸" trans="Fuse breaker"/>
<message source="远方就地退出转换开关" trans="Remote switch1"/>
<message source="远方就地转换开关" trans="Remote switch"/>
<message source="投入退出转换开关" trans="Throw switch"/>
<message source="远方就地状态" trans="Remote Status"/>
<message source="带电指示器" trans="Display"/>
<message source="接触器" trans="Contactor"/>
<message source="电抗器" trans="Reactor"/>
<message source="仪表盘" trans="Board"/>
<message source="光字牌" trans="Card"/>
<message source="光字牌new" trans="Card new"/>
<message source="备自投投入" trans="Bus coupler"/>
<message source="挂牌" trans="Token"/>
<message source="母线" trans="Bus"/>
<message source="三角形" trans="Triangle"/>
<message source="线端" trans="Line terminal"/>
<message source="潮流线" trans="Flow line"/>
<message source="带电区域" trans="DyPolygon"/>
<message source="断路器" trans="Breaker"/>
<message source="避雷器" trans="Arrester"/>
<message source="负荷开关" trans="Load Switch"/>
<message source="隔离开关" trans="Switch"/>
<message source="接地" trans="Ground"/>
<message source="接地刀闸" trans="Ground switch"/>
<message source="快速接地刀" trans="Rapid Ground Switch"/>
<message source="刀闸" trans="switch"/>
<message source="手车" trans="Handcart"/>
<message source="遥测" trans="Telemetry"/>
<message source="电容" trans="Capacitance"/>
<message source="电容器" trans="Capacitor"/>
<message source="三圈PT" trans="Three Circle PT"/>
<message source="四圈PT" trans="Four Circle PT"/>
<message source="牵引变压器2" trans="Traction transform2"/>
<message source="牵引变压器1" trans="Traction transform1"/>
<message source="牵引变压器" trans="Traction transform"/>
<message source="四卷变压器" trans="Four-wind transform"/>
<message source="两卷变压器三角形星形" trans="Two-wind transform"/>
<message source="两卷变压器三角形三角形" trans="Two-wind transform1"/>
<message source="两卷变压器星形三角形" trans="Two-wind transform2"/>
<message source="EMS图元" trans="EMS"/>
<message source="绿灯红灯" trans="Status"/>
<message source="远程" trans="Remote"/>
<message source="正常" trans="Normal"/>
<message source="运行" trans="Run"/>
<message source="告警信息" trans="Alarm"/>
<message source="就地" trans="Local"/>
<message source="冷备" trans="Cold standby"/>
<message source="对号提示" trans="Tips"/>
<message source="仪表盘" trans="Board"/>
<message source="逆流防护" trans="Potect"/>
<message source="投入退出" trans="Throw back"/>
<message source="定值组" trans="Const Group"/>
<message source="通用状态显示" trans="General Status"/>
<message source="摄像头" trans="Camera"/>
<message source="发电机" trans="Generator"/>
<message source="电机" trans="Motor"/>
<message source="模拟量点标签" trans="Analog Lock"/>
<message source="数字量点标签" trans="Digital Lock"/>
</context>

Binary file not shown.

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More