Skip to content

Commit

Permalink
Update SCL_CoMPAS.xsd
Browse files Browse the repository at this point in the history
  • Loading branch information
jeanetiennelemaire committed Jan 17, 2022
1 parent 8fcb851 commit 8d72f97
Showing 1 changed file with 180 additions and 12 deletions.
192 changes: 180 additions & 12 deletions scl-extension/src/main/resources/xsd/SCL_CoMPAS.xsd
Original file line number Diff line number Diff line change
@@ -1,18 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
SPDX-FileCopyrightText: 2021 Alliander N.V.
SPDX-License-Identifier: Apache-2.0
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="https://www.lfenergy.org/compas/extension/v1"
targetNamespace="https://www.lfenergy.org/compas/extension/v1" elementFormDefault="qualified"
attributeFormDefault="unqualified" version="v1">
<xs:schema xmlns:scl="http://www.iec.ch/61850/2003/SCL" xmlns="https://www.lfenergy.org/compas/extension/v1" xmlns:compas="https://www.lfenergy.org/compas/extension/v1" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="https://www.lfenergy.org/compas/extension/v1" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1">
<xs:import namespace="http://www.iec.ch/61850/2003/SCL" schemaLocation="SCL.xsd"/>
<xs:annotation>
<xs:documentation xml:lang="en">
COPYRIGHT (c) 2021 Alliander N.V.
</xs:documentation>
<xs:documentation xml:lang="en">
Version 1.0 Release 2021/06/16
Version 2.0 Release 2022/01/17
</xs:documentation>
</xs:annotation>
<!--
Expand Down Expand Up @@ -76,4 +67,181 @@ SPDX-License-Identifier: Apache-2.0
</xs:restriction>
</xs:simpleType>
<xs:element name="SclFileType" type="tSclFileType"/>

<xs:simpleType name="tCompasIEDType">
<xs:restriction base="xs:string">
<xs:enumeration value="SCU"/>
<xs:enumeration value="BCU"/>
<xs:enumeration value="MU"/>
<xs:enumeration value="SAMU"/>
<xs:enumeration value="PROT"/>
<xs:enumeration value="TAC"/>
<xs:enumeration value="PX"/>
<xs:enumeration value="PDIS"/>
<xs:enumeration value="PDB"/>
<xs:enumeration value="AUT"/>
<xs:enumeration value="PDIF"/>
<xs:enumeration value="GRP"/>
<xs:enumeration value="GTW"/>
<xs:enumeration value="TG"/>
<xs:enumeration value="TOPO"/>
<xs:enumeration value="ADEFINIR"/>
</xs:restriction>
<xs:annotation>
<xs:documentation xml:lang="en">
IED type to be used to identity the set of LDevice.inst handled by the IED
</xs:documentation>
</xs:annotation>
</xs:simpleType>
<xs:simpleType name="tCompasFlowStatus">
<xs:restriction base="xs:string">
<xs:enumeration value="ACTIVE"/>
<xs:enumeration value="INACTIVE"/>
<xs:enumeration value="UNTESTED"/>
</xs:restriction>
<xs:annotation>
<xs:documentation xml:lang="en">
Define whether the Flow between two LDevice belonging to two ICDs with-in two System Version (identical or different) are qualified (ACTIVE), not working (INACTIVE) or untested (UNTESTED)
</xs:documentation>
</xs:annotation>
</xs:simpleType>
<xs:simpleType name="tCompasLDeviceStatus">
<xs:restriction base="xs:string">
<xs:enumeration value="ACTIVE"/>
<xs:enumeration value="INACTIVE"/>
<xs:enumeration value="UNTESTED"/>
</xs:restriction>
<xs:documentation xml:lang="en">
Define whether the LDevice belonging to one ICD with-in one System Version are qualified (ACTIVE), not working (INACTIVE) or untested (UNTESTED)
</xs:documentation>
</xs:annotation>
</xs:simpleType>
<xs:simpleType name="tCompasIEDRedundancy">
<xs:restriction base="xs:string">
<xs:enumeration value="NOMINAL"/>
<xs:enumeration value="BACKUP"/>
</xs:restriction>
<xs:documentation xml:lang="en">
Define whether the IED with-in one System Version is used as NOMINAL or BACKUP IED
</xs:documentation>
</xs:annotation>
</xs:simpleType>
<xs:simpleType name="tCompasFlowKind">
<xs:restriction base="xs:string">
<xs:enumeration value="BAY_EXTERNAL"/>
<xs:enumeration value="BAY_INTERNAL"/>
<xs:enumeration value="BAY_INTERNAL_EXTERNAL"/>
</xs:restriction>
<xs:documentation xml:lang="en">
Define whether the Flow is limited to the Bay(refering to the physical one or cubicles) to which belong the IED (BAY_INTERNAL) or only going outside the BAY (BAY_EXTERNAL) or both (BAY_INTERNAL_EXTERNAL)
</xs:documentation>
</xs:annotation>
</xs:simpleType>

<xs:complexType name="tCompasFlow">
<xs:attribute name="dataStreamKey" type="xs:string" use="optional"/>
<xs:attribute name="ExtRefiedName" type="xs:string" use="optional"/>
<xs:attribute name="ExtRefldinst" type="xs:string" use="optional"/>
<xs:attribute name="ExtRefprefix" type="xs:string" use="optional"/>
<xs:attribute name="ExtReflnClass" type="xs:string" use="optional"/>
<xs:attribute name="ExtReflnInst" type="xs:string" use="optional"/>
<xs:attribute name="FlowID" type="xs:string" use="optional"/>
<xs:attribute name="FlowStatus" type="tCompasFlowStatus" use="optional"/>
<xs:attribute name="FlowKind" type="tCompasFlowKind" use="optional"/>
<xs:documentation xml:lang="en">
Define the link between specific Compas attributes and one ExtRef within the STD file. The dataStreamKey is the key with the ExtRef.desc. The ExtRef attributes are directly linked to the attributes of the ExRef.
The FlowID is used to link additional informations to the flow as the criteria.
The FlowStatus define whether if the flow is qualified, non qualified or untested accordingly to the source IED which is bellonging to a define SystemVersion
</xs:documentation>
</xs:annotation>
</xs:complexType>

<xs:complexType name="tCompasBay">
<xs:attribute name="BayCodif" type="xs:string" use="optional"/>
<xs:attribute name="UUID" type="xs:string" use="optional"/>
<xs:attribute name="Version" type="xs:string" use="optional"/>
<xs:attribute name="MainLabel" type="xs:string" use="optional"/>
<xs:attribute name="SecondLabel" type="xs:string" use="optional"/>
<xs:attribute name="NumBay" type="xs:string" use="optional"/>
<xs:attribute name="ZoneNumber" type="xs:string" use="optional"/>
<xs:documentation xml:lang="en">
Define the specific Compas attributes linked to the Bay. The Main and Second Labels are label of the bay specific to each user. MainLabel and Version identify uniquely the instanciated Bay as the UUID
The BayCodif is specific to each user to identify the bay kind.
</xs:documentation>
</xs:annotation>
</xs:complexType>

<xs:complexType name="tCompasConnectivityNode">
<xs:attribute name="UUID" type="xs:string" use="optional"/>
<xs:attribute name="ZoneNumber" type="xs:string" use="optional"/>
<xs:documentation xml:lang="en">
Define the specific busbarsection or zone of the connectivity node
</xs:documentation>
</xs:annotation>
</xs:complexType>

<xs:complexType name="tCompasICDHeader" mixed="true">
<xs:attribute name="ICDSystemVersionUUID" type="xs:string" use="optional"/>
<xs:attribute name="IEDType" type="tCompasIEDType" use="required"/>
<xs:attribute name="IEDinstance" type="xs:string" use="optional"/>
<xs:attribute name="IEDName" type="xs:string" use="optional"/>
<xs:attribute name="VendorName" type="xs:string" use="required"/>
<xs:attribute name="IEDmodel" type="xs:string" use="required"/>
<xs:attribute name="IEDredundancy" type="tCompasIEDRedundancy" use="optional"/>
<xs:attribute name="BayLabel" type="xs:string" use="optional"/>
<xs:attribute name="hwRev" type="xs:string" use="required"/>
<xs:attribute name="swRev" type="xs:string" use="required"/>
<xs:attribute name="headerId" type="xs:string" use="required"/>
<xs:attribute name="headerVersion" type="xs:string" use="optional"/>
<xs:attribute name="headerRevision" type="xs:string" use="optional"/>
<xs:documentation xml:lang="en">
Define specific Compas attributes to identify uniquely one ICD file with-in a SystemVersion for a given IEDredundancy. The UUID of this combinaison is defined by the ICDSystemVersionUUID.
This private is intended to be used in the STD file (/IED level) and SSD (/LNode level)
</xs:documentation>
</xs:annotation>
</xs:complexType>

<xs:complexType name="tCompasSystemVersion">
<xs:attribute name="MainSystemVersion" type="xs:string" use="optional"/> 01.01
<xs:attribute name="MinorSystemVersion" type="xs:string" use="optional"/> 001.001.002
<xs:documentation xml:lang="en">
Define the SystemVersion to which the functional Bay and IED belongs to. This Private can be used in /Bay in substation and in the /IED.
</xs:documentation>
</xs:annotation>
</xs:complexType>

<xs:complexType name="tCompasFunction">
<xs:attribute name="UUID" type="xs:string" use="optional"/>
<xs:attribute name="Label" type="xs:string" use="optional"/>
<xs:documentation xml:lang="en">
Identifies the function from the user specific catalog of function
</xs:documentation>
</xs:annotation>
</xs:complexType>
<xs:complexType name="tCompasLDevice">
<xs:attribute name="LDeviceStatus" type="tCompasLDeviceStatus" use="optional"/>
<xs:attribute name="LDeviceID" type="xs:string" use="optional"/>
<xs:documentation xml:lang="en">
Identifies the LDevice from the user specific catalog of LDevice
</xs:documentation>
</xs:annotation>
</xs:complexType>
<xs:complexType name="tCompasCriteria">
<xs:attribute name="ObjectID" type="xs:string" use="optional"/>
<xs:attribute name="CriteriaAssociationID" type="xs:string" use="optional"/>
<xs:documentation xml:lang="en">
Identifies the Criteria linked to a Flow or LDevice or Function from the user specific catalog of criteria
</xs:documentation>
</xs:annotation>
</xs:complexType>

<xs:element name="Flow" type="tCompasFlow"/>
<xs:element name="ConnectivityNode" type="tCompasConnectivityNode"/>
<xs:element name="Bay" type="tCompasBay"/>
<xs:element name="LDevice" type="tCompasLDevice"/>
<xs:element name="Criteria" type="tCompasCriteria"/>
<xs:element name="ICD_HEADER" type="tCompasICDHeader"/>
<xs:element name="SystemVersion" type="tCompasSystemVersion"/>
<xs:element name="Function" type="tCompasFunction"/>

</xs:schema>

0 comments on commit 8d72f97

Please sign in to comment.