- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
706 lines
40 KiB
XML
706 lines
40 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!-- edited with XMLSpy v2020 sp1 (x64) (http://www.altova.com) by Erik Brouwer (ICT netherlands B.V.) -->
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
|
<xs:include schemaLocation="UFTP-common.xsd"/>
|
|
<xs:include schemaLocation="UFTP-metering.xsd"/>
|
|
<!-- -->
|
|
<!-- Flex Message Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexMessageType" abstract="true">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageType">
|
|
<xs:attribute name="ISP-Duration" type="xs:duration" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>ISO 8601 time interval (minutes only, for example PT15M) indicating the duration of the ISPs referenced in this message. Although the ISP length is a market-wide fixed value, making this assumption explicit in each message is important for validation purposes, allowing implementations to reject messages with an errant ISP duration.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="TimeZone" type="TimeZoneNameType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Time zone ID (as per the IANA time zone database, http://www.iana.org/time-zones, for example: Europe/Amsterdam) indicating the UTC offset that applies to the Period referenced in this message. Although the time zone is a market-wide fixed value, making this assumption explicit in each message is important for validation purposes, allowing implementations to reject messages with an errant UTC offset.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Period" type="PeriodType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Day (in yyyy-mm-dd format) the ISPs referenced in this Flex* message belong to.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="CongestionPoint" type="EntityAddressType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Entity Address of the Congestion Point this D-Prognosis applies to.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- D-Prognosis Type -->
|
|
<!-- -->
|
|
<xs:complexType name="D-PrognosisType">
|
|
<xs:complexContent>
|
|
<xs:extension base="FlexMessageType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>The ISP represents one or more Imbalance Settlement Periods and is used by Prognosis and Flex-related messages.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="ISP" type="D-PrognosisISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="Revision" type="xs:long" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Revision of this message. A sequence number that must be incremented each time a new revision of a
|
|
prognosis is sent. The combination of SenderDomain and PrognosisSequence should be unique</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- D-Prognisis ISP Type -->
|
|
<!-- -->
|
|
<xs:complexType name="D-PrognosisISPType">
|
|
<xs:attribute name="Power" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Power specified for this ISP in Watts. Also see the important notes about the sign of this attribute in the main documentation entry for the ISP element.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Start" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:integer" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Order Status Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexOrderStatusType">
|
|
<xs:attribute name="FlexOrderMessageID" type="UUIDType" use="required"/>
|
|
<xs:attribute name="IsValidated" type="xs:boolean" use="required"/>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- D-Prognosis Response Type -->
|
|
<!-- -->
|
|
<xs:complexType name="D-PrognosisResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:sequence>
|
|
<xs:element name="FlexOrderStatus" type="FlexOrderStatusType" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="D-PrognosisMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the D-Prognosis message this request is based on.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Reservation Update Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexReservationUpdateType">
|
|
<xs:complexContent>
|
|
<xs:extension base="FlexMessageType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>The ISP represents one or more Imbalance Settlement Periods and is used by Prognosis and Flex-related messages.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="ISP" type="FlexReservationUpdateISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="ContractID" type="xs:string" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference to the bilateral contract in question.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Reference" type="xs:string" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Message reference, assigned by the DSO originating the FlexReservationUpdate.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Reservation Update ISP Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexReservationUpdateISPType">
|
|
<xs:attribute name="Power" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Remaining reserved power specified for this ISP in Watts.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Start" type="xs:positiveInteger" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:positiveInteger" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Reservation Update Response Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexReservationUpdateResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:attribute name="FlexReservationUpdateMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexReservationUpdate message this request is based on.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Request Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexRequestType">
|
|
<xs:complexContent>
|
|
<xs:extension base="FlexMessageType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>The ISP represents one or more Imbalance Settlement Periods and is used by Prognosis and Flex-related messages.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="ISP" type="FlexRequestISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="Revision" type="xs:long" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Revision of this message, a sequence number that must be incremented each time a new revision of a
|
|
FlexRequest message is sent.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ExpirationDateTime" type="xs:dateTime" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Date and time, including the time zone (ISO 8601 formatted as per http://www.w3.org/TR/NOTE-datetime) until which the FlexRequest message is valid.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ContractID" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference to the concerning contract, if applicable. The contract may be either bilateral or commoditized market contract. Each contract may specify multiple service-types.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ServiceType" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Service type for this request, the service type determines response characteristics such as latency or asset participation type.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Requests ISP Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexRequestISPType">
|
|
<xs:attribute name="Disposition" type="AvailableRequestedType"/>
|
|
<xs:attribute name="MinPower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Power specified for this ISP in Watts. Also see the important notes about the sign of this attribute in the main documentation entry for the ISP element.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="MaxPower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Power specified for this ISP in Watts. Also see the important notes about the sign of this attribute in the main documentation entry for the ISP element.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Start" type="xs:positiveInteger" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:positiveInteger" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Request Response Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexRequestResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:attribute name="FlexRequestMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexRequest message this request is based on.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Offer Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexOfferType">
|
|
<xs:complexContent>
|
|
<xs:extension base="FlexMessageType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>If the DSO does not support mutually exclusive offers it will reject FlexOffers that contain more than one OfferOption.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="OfferOption" type="FlexOfferOptionType" minOccurs="1" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="ExpirationDateTime" type="xs:dateTime" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Date and time, including the time zone (ISO 8601 formatted as per http://www.w3.org/TR/NOTE-datetime) until which the FlexOffer is valid.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Unsolicited" type="xs:boolean" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Indicates whether this FlexOffer is intended to be unsolicited (i.e. without a preceding FlexRequest).</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="FlexRequestMessageID" type="UUIDType" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexRequest message this request is based on. Mandatory if Unsolicited=false.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ContractID" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference to the concerning contract, if applicable. The contract may be either bilateral or commoditized market contract.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="D-PrognosisMessageID" type="UUIDType" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the D-Prognosis this request is based on, if it has been agreed that the baseline is based on D-prognoses. </xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="BaselineReference" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Identification of the baseline prognosis, if another baseline methodology is used than based on D-prognoses</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Currency" type="ISO4217CurrencyType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>ISO 4217 code indicating the currency that applies to the price of the FlexOffer.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Offer Option Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexOfferOptionType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>The ISP represents one or more Imbalance Settlement Periods and is used by Prognosis and Flex-related messages.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="ISP" type="FlexOfferOptionISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="OptionReference" type="xs:string" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>The identification of this option.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Price" type="CurrencyAmountType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>The asking price for the flexibility offered in this option.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="MinActivationFactor" type="ActivationFactorType" default="1.00">
|
|
<xs:annotation>
|
|
<xs:documentation>The minimal activation factor for this OfferOption. An AGR may choose to include MinActivationFactor in FlexOffers even if the DSO is not interested in partial activation. In that case the DSO will simply use an ActivationFactor of 1.00 in every FlexOrder. </xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- -->
|
|
<!-- Flex Offer Option ISP Type -->
|
|
<!-- -->
|
|
<xs:complexType name="FlexOfferOptionISPType">
|
|
<xs:attribute name="Power" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Power specified for this ISP in Watts. Also see the important notes about the sign of this attribute in the main documentation entry for the ISP element.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Start" type="xs:positiveInteger" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:positiveInteger" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!--
|
|
Flex Offer Response Type
|
|
-->
|
|
<xs:complexType name="FlexOfferResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:attribute name="FlexOfferMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexOffer message this request is based on.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!--
|
|
Flex Offer Revocation Type
|
|
-->
|
|
<xs:complexType name="FlexOfferRevocationType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageType">
|
|
<xs:attribute name="FlexOfferMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexOffer message that is being revoked: this FlexOffer must have been accepted previously.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!--
|
|
Flex Offer Revocation Response Type
|
|
-->
|
|
<xs:complexType name="FlexOfferRevocationResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:attribute name="FlexOfferRevocationMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexOfferRevocation message this request is based on.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!--
|
|
Flex Order Type
|
|
-->
|
|
<xs:complexType name="FlexOrderType">
|
|
<xs:complexContent>
|
|
<xs:extension base="FlexMessageType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>The ISP represents one or more Imbalance Settlement Periods and is used by Prognosis and Flex-related messages.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="ISP" type="FlexOrderISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="Unsolicited" type="xs:boolean" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Indicates whether this FlexOrder is intended to be unsolicited (i.e. without a preceding FlexOffer).</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="FlexOfferMessageID" type="UUIDType" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexOffer message this order is based on. Mandatory if Unsolicited=false.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ServiceType" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Service type for this order, the service type determines response characteristics such as latency or asset participation type.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ContractID" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference to the concerning bilateral contract, if applicable.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="D-PrognosisMessageID" type="UUIDType" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the D-Prognosis this request is based on, if it has been agreed that the baseline is based on D-prognoses. </xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="BaselineReference" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Identification of the baseline prognosis, if another baseline methodology is used than based on D-prognoses</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Price" type="CurrencyAmountType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>The price for the flexibility ordered. Usually, the price should match the price of the related FlexOffer.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Currency" type="ISO4217CurrencyType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>ISO 4217 code indicating the currency that applies to the price of the FlexOffer.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="OrderReference" type="xs:string" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Order number assigned by the DSO originating the FlexOrder. To be stored by the AGR and used in the settlement phase.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="OptionReference" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>The OptionReference from the OfferOption chosen from the FlexOffer, if applicable.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ActivationFactor" type="ActivationFactorType" default="1.00">
|
|
<xs:annotation>
|
|
<xs:documentation>The activation factor for this OfferOption. The ActivationFactor must be greater than or equal to the MinActivationFactor in the OfferOption chosen from the FlexOffer.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- ISP for Flex Orders -->
|
|
<xs:complexType name="FlexOrderISPType">
|
|
<xs:attribute name="Power" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Power specified for this ISP in Watts. Also see the important notes about the sign of this attribute in the main documentation entry for the ISP element.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Start" type="xs:positiveInteger" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:positiveInteger" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- Flex Order Response Type -->
|
|
<xs:complexType name="FlexOrderResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:attribute name="FlexOrderMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexOrder that has just been accepted or rejected.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- Flex Settlement Type -->
|
|
<xs:complexType name="FlexSettlementType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:sequence>
|
|
<xs:element name="FlexOrderSettlement" type="FlexOrderSettlementType" maxOccurs="unbounded"/>
|
|
<xs:element name="ContractSettlement" type="ContractSettlementType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="PeriodStart" type="PeriodType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>First Period of the settlement period this message applies to.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="PeriodEnd" type="PeriodType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Last Period of the settlement period this message applies to.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Currency" type="ISO4217CurrencyType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>ISO 4217 code indicating the currency that applies to all amounts (flex price, penalty and net settlement) in this message.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- Flex Order Settlement Type -->
|
|
<xs:complexType name="FlexOrderSettlementType">
|
|
<xs:sequence>
|
|
<xs:element name="ISP" type="FlexOrderSettlementISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="OrderReference" type="xs:string">
|
|
<xs:annotation>
|
|
<xs:documentation>Order reference assigned by the DSO when originating the FlexOrder.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Period" type="PeriodType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation/>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ContractID" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference to the concerning bilateral contract, if it is linked to it</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="D-PrognosisMessageID" type="UUIDType" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the Prognosis message (more specifically: the D-Prognosis) the FlexOrder is based on, if it has been agreed that the baseline is based on D-prognoses.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="BaselineReference" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Identification of the baseline prognosis, if another baseline methodology is used than based on D-prognoses.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="CongestionPoint" type="EntityAddressType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Entity Address of the Congestion Point the FlexOrder applies to.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Price" type="CurrencyAmountType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>The price accepted for supplying the ordered amount of flexibility as per the referenced FlexOrder messages.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Penalty" type="CurrencyAmountType" use="optional" default="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Penalty due a non-zero PowerDeficiency</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="NetSettlement" type="CurrencyAmountType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Net settlement amount for this Period: Price minus Penalty.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- Flex Order Settlement ISP Type -->
|
|
<xs:complexType name="FlexOrderSettlementISPType">
|
|
<xs:attribute name="Start" type="xs:positiveInteger" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:positiveInteger" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="BaselinePower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Power originally forecast (as per the referenced baseline) for this ISP in Watts.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="OrderedFlexPower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power ordered (as per the referenced FlexOrder message) for this ISP in Watts.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ActualPower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Actual amount of power for this ISP in Watts, as measured/determined by the DSO and allocated to the AGR.
|
|
</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="DeliveredFlexPower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Actual amount of flex power delivered for this ISP in Watts, as determined by the DSO.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="PowerDeficiency" type="xs:integer" use="optional" default="0">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power sold but not delivered for this ISP in Watts, as determined by the DSO.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- Flex Settlement Response Type -->
|
|
<xs:complexType name="FlexSettlementResponseType">
|
|
<xs:complexContent>
|
|
<xs:extension base="PayloadMessageResponseType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation>The ISP represents one or more Imbalance Settlement Periods and is used by Prognosis and Flex-related messages.</xs:documentation>
|
|
</xs:annotation>
|
|
<xs:element name="FlexOrderSettlementStatus" type="FlexOrderSettlementStatusType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="FlexSettlementMessageID" type="UUIDType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>MessageID of the FlexSettlement message that has just been accepted or rejected</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
<!-- Flex Order Settlement Status Type -->
|
|
<xs:complexType name="FlexOrderSettlementStatusType">
|
|
<xs:attribute name="OrderReference" type="xs:string">
|
|
<xs:annotation>
|
|
<xs:documentation>Order reference assigned by the DSO when originating the FlexOrder.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Disposition" type="AcceptedDisputedType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Indication whether the AGR accepts the order settlement details provided by the DSO (and will invoice accordingly), or disputes these details.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="DisputeReason" type="xs:string" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>In case the order settlement was disputed, this attribute must contain a human-readable description of the reason.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- Contract Settlement Type -->
|
|
<xs:complexType name="ContractSettlementType">
|
|
<xs:sequence>
|
|
<xs:annotation>
|
|
<xs:documentation/>
|
|
</xs:annotation>
|
|
<xs:element name="Period" type="ContractSettlementPeriodType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="ContractID" type="xs:string">
|
|
<xs:annotation>
|
|
<xs:documentation>Reference to the concerning bilateral contract.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- Contract Settlement Period Type -->
|
|
<xs:complexType name="ContractSettlementPeriodType">
|
|
<xs:sequence>
|
|
<xs:element name="ISP" type="ContractSettlementISPType" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="Period" type="PeriodType" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Period the being settled.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- Contract Settlement ISP Type -->
|
|
<xs:complexType name="ContractSettlementISPType">
|
|
<xs:attribute name="Start" type="xs:positiveInteger" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Number of the first ISPs this element refers to. The first ISP of a day has number 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="Duration" type="xs:positiveInteger" use="optional" default="1">
|
|
<xs:annotation>
|
|
<xs:documentation>The number of the ISPs this element represents. Optional, default value is 1.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="ReservedPower" type="xs:integer" use="required">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power that has been reserved (and not released using a FlexReservationUpdate message).</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="RequestedPower" type="xs:integer" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power that has been both reserved in advance and has been requested using a
|
|
FlexRequest (i.e. the lowest amount of flex power for this ISP). If there was no FlexRequest,
|
|
this field is omitted.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="AvailablePower" type="xs:integer" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power that is considered available based on the FlexRequest in question. In case RequestedPower=0, AvailablePower is defined so that the offered power is allowed to be between 0 and AvailablePower in terms of compliancy (see Appendix 3 for details). In case RequestedPower ≠0, AvailablePower is defined so that the offered power is allowed to exceed the amount of requested power up to AvailablePower. If this is relevant for settlement, the DSO can include this field.</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="OfferedPower" type="xs:integer" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power that has been reserved in advance, requested using a FlexRequest and covered in an offer from the AGR. If there was no offer, this field is omitted. If there were multiple offers, only the one is considered that is most compliant .</xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
<xs:attribute name="OrderedPower" type="xs:integer" use="optional">
|
|
<xs:annotation>
|
|
<xs:documentation>Amount of flex power that has been ordered using a FlexOrder message that was based on a FlexOffer, both linked to this contract. If there was no order, this field is omitted. </xs:documentation>
|
|
</xs:annotation>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<!-- ELEMENT DEFINITIONS -->
|
|
<xs:element name="D-Prognosis" type="D-PrognosisType"/>
|
|
<xs:element name="D-PrognosisResponse" type="D-PrognosisResponseType"/>
|
|
<xs:element name="FlexReservationUpdate" type="FlexReservationUpdateType"/>
|
|
<xs:element name="FlexReservationUpdateResponse" type="FlexReservationUpdateResponseType"/>
|
|
<xs:element name="FlexRequest" type="FlexRequestType"/>
|
|
<xs:element name="FlexRequestResponse" type="FlexRequestResponseType"/>
|
|
<xs:element name="FlexOffer" type="FlexOfferType"/>
|
|
<xs:element name="FlexOfferResponse" type="FlexOfferResponseType"/>
|
|
<xs:element name="FlexOfferRevocation" type="FlexOfferRevocationType"/>
|
|
<xs:element name="FlexOfferRevocationResponse" type="FlexOfferRevocationResponseType"/>
|
|
<xs:element name="FlexOrder" type="FlexOrderType"/>
|
|
<xs:element name="FlexOrderResponse" type="FlexOrderResponseType"/>
|
|
<xs:element name="FlexSettlement" type="FlexSettlementType"/>
|
|
<xs:element name="FlexSettlementResponse" type="FlexSettlementResponseType"/>
|
|
</xs:schema>
|