<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:emkt="urn:iso:std:iso:20022:tech:xsd:emkt.001.001.01" targetNamespace="urn:iso:std:iso:20022:tech:xsd:emkt.001.001.01" elementFormDefault="qualified">	<!-- Root message element -->	<xs:element name="Document" type="emkt:Document">		<!-- Key: Market Participant + Commodity + Zone + Month -->	</xs:element>	<!-- Document wrapper (ISO 20022 standard pattern) -->	<xs:complexType name="Document">		<xs:sequence>			<xs:element name="NrgyMktXpsrRpt" type="emkt:EnergyMarketExposureReportV01">				<xs:unique name="uniqueRptId">					<xs:selector xpath="emkt:XpsrRpt"/>					<xs:field xpath="emkt:RptId"/>				</xs:unique>			</xs:element>		</xs:sequence>	</xs:complexType>	<!-- Main message type -->	<xs:complexType name="EnergyMarketExposureReportV01">		<xs:sequence>			<xs:element name="GrpHdr" type="emkt:GroupHeader"/>			<xs:element name="XpsrRpt" type="emkt:ExposureReport" maxOccurs="unbounded"/>		</xs:sequence>	</xs:complexType>	<!-- Exposure Report -->	<xs:complexType name="ExposureReport">		<xs:sequence>			<xs:element name="RptId" type="emkt:ReportIdentifier">				<xs:annotation>					<xs:documentation>Field No. 5</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="MktPtcptId" type="emkt:ACEIdentifier">				<xs:annotation>					<xs:documentation>Field No. 1</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="MktPtcptGrp" type="emkt:GroupDetailChoice">				<xs:annotation>					<xs:documentation>Field No. 2</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="CmmdtyXpsrDtl" type="emkt:CommodityExposureDetail" maxOccurs="2"/>			<xs:element name="Cmnt" type="emkt:Max1000Text" minOccurs="0"/>		</xs:sequence>	</xs:complexType>	<!-- Commodity Exposure -->	<xs:complexType name="CommodityExposureDetail">		<xs:sequence>			<xs:element name="NrgyCmmdty" type="emkt:EnergyCommodityType1Code">				<xs:annotation>					<xs:documentation>Field No. 6</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="ZoneXpsrDtl" type="emkt:ZoneExposureDetail" maxOccurs="27">				<xs:annotation>					<xs:documentation>Exposure details for each delivery point or zone.</xs:documentation>				</xs:annotation>			</xs:element>		</xs:sequence>	</xs:complexType>	<!-- Zone Exposure -->	<xs:complexType name="ZoneExposureDetail">		<xs:sequence>			<xs:element name="DlvryCtry" type="emkt:CountryCode">				<xs:annotation>					<xs:documentation>Field No. 7</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="MnthXpsrDtl" type="emkt:MonthExposureDetail" minOccurs="18" maxOccurs="18">				<xs:annotation>					<xs:documentation>Exposure details by delivery month.</xs:documentation>				</xs:annotation>			</xs:element>		</xs:sequence>	</xs:complexType>	<!-- Month Exposure -->	<xs:complexType name="MonthExposureDetail">		<xs:sequence>			<xs:element name="DlvryMnth" type="emkt:ISOYearMonth">				<xs:annotation>					<xs:documentation>Field No. 8</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="GrpCtrctTpVol">				<xs:complexType>					<xs:sequence>						<xs:element name="GrpCtrctTpVolNtry" type="emkt:VolumeMappingType" minOccurs="6" maxOccurs="6">							<xs:annotation>								<xs:documentation>									Fields No. 9 and No. 10								</xs:documentation>							</xs:annotation>						</xs:element>					</xs:sequence>				</xs:complexType>				<!-- Enforce uniqueness on the pair within the repeating rows -->				<xs:unique name="uniquePairInGroup">					<xs:selector xpath="emkt:GrpCtrctTpVolNtry"/>					<xs:field xpath="emkt:CtrctTp"/>					<xs:field xpath="emkt:GrpTp"/>				</xs:unique>			</xs:element>			<xs:element name="PdctnVol" type="emkt:DecimalNumber" minOccurs="0">				<xs:annotation>					<xs:documentation>Field No. 11</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="CsmptnVol" type="emkt:DecimalNumber" minOccurs="0">				<xs:annotation>					<xs:documentation>Field No. 12</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="Unit" type="emkt:UnitOfMeasure10Code">				<xs:annotation>					<xs:documentation>Field No. 13</xs:documentation>				</xs:annotation>			</xs:element>			<xs:element name="ActnTp" type="emkt:ReportActionType1Code">				<xs:annotation>					<xs:documentation>Field No. 14</xs:documentation>				</xs:annotation>			</xs:element>		</xs:sequence>	</xs:complexType>	<!-- Group Header -->	<xs:complexType name="GroupHeader">		<xs:sequence>			<xs:element name="MsgId" type="emkt:Max35Text"/>			<xs:element name="RgstrRpstryId" type="emkt:ACEIdentifier">				<xs:annotation>					<xs:documentation>Field No. 4</xs:documentation>				</xs:annotation>			</xs:element>		</xs:sequence>	</xs:complexType>	<!-- Group Header (ISO 20022 standard component) -->	<xs:complexType name="GroupIdentifier1Choice">		<xs:choice>			<xs:element name="ACER" type="emkt:ACEIdentifier"/>			<xs:element name="EIC" type="emkt:EICIdentifier"/>			<xs:element name="LEI" type="emkt:LEIIdentifier"/>		</xs:choice>	</xs:complexType>	<!-- Text data types -->	<xs:simpleType name="ReportIdentifier">		<xs:restriction base="xs:string">			<xs:minLength value="1"/>			<xs:maxLength value="50"/>			<xs:pattern value="([A-Za-z0-9_]+\.[A-Z]{2}|[A-Z0-9]{18}[0-9]{2})_(Q[1-4]_\d{4}).{0,15}"/>		</xs:restriction>	</xs:simpleType>	<!-- Simple Types - ISO 20022 Data Types (reused) -->	<xs:simpleType name="Max1000Text">		<xs:restriction base="xs:string">			<xs:minLength value="1"/>			<xs:maxLength value="1000"/>		</xs:restriction>	</xs:simpleType>	<xs:simpleType name="Max35Text">		<xs:restriction base="xs:string">			<xs:minLength value="1"/>			<xs:maxLength value="35"/>		</xs:restriction>	</xs:simpleType>	<!-- Date/Time data types -->	<xs:simpleType name="ISOYearMonth">		<xs:restriction base="xs:gYearMonth"/>	</xs:simpleType>	<xs:simpleType name="ISODateTime">		<xs:restriction base="xs:dateTime"/>	</xs:simpleType>	<!-- Numeric data types -->	<xs:simpleType name="DecimalNumber">		<xs:restriction base="xs:decimal">			<xs:totalDigits value="20"/>			<xs:fractionDigits value="5"/>		</xs:restriction>	</xs:simpleType>	<!-- Identifier data types-->	<!-- ACER code  - created NEW-->	<xs:simpleType name="ACEIdentifier">		<xs:restriction base="xs:string">			<xs:minLength value="12"/>			<xs:maxLength value="12"/>			<xs:pattern value="[A-Za-z0-9_]+\.[A-Z][A-Z]"/>			<!-- ACER pattern: 12 characters including dot + country; keep fixed length 12 -->		</xs:restriction>	</xs:simpleType>	<!-- Country Code - reused from ISO 20022 repository -->	<xs:simpleType name="CountryCode">		<xs:restriction base="xs:string">			<xs:minLength value="2"/>			<xs:maxLength value="2"/>			<xs:pattern value="[A-Z]{2}"/>		</xs:restriction>	</xs:simpleType>	<!-- EIC Identifier - reused from ISO 20022 repository -->	<xs:simpleType name="EICIdentifier">		<xs:restriction base="xs:string">			<xs:minLength value="16"/>			<xs:maxLength value="16"/>			<xs:pattern value="[0-9]{2}[A-Z][A-Z0-9-]{12}[A-Z0-9]"/>		</xs:restriction>	</xs:simpleType>	<!--LEI Identifier - reused from ISO 20022 repository -->	<xs:simpleType name="LEIIdentifier">		<xs:restriction base="xs:string">			<xs:minLength value="20"/>			<xs:maxLength value="20"/>			<xs:pattern value="[A-Z0-9]{18}[0-9]{2}"/>		</xs:restriction>	</xs:simpleType>	<!-- Unit of Measure Code - Corrected based on official ISO 20022 / UN/ECE Rec 20 Repository -->	<xs:simpleType name="UnitOfMeasure10Code">		<xs:restriction base="xs:string">			<xs:enumeration value="MWH">				<xs:annotation>					<xs:documentation>Megawatt-hour (Active Energy)</xs:documentation>				</xs:annotation>			</xs:enumeration>			<xs:enumeration value="GWH">				<xs:annotation>					<xs:documentation>Gigawatt-hour (Active Energy)</xs:documentation>				</xs:annotation>			</xs:enumeration>		</xs:restriction>	</xs:simpleType>	<!-- Code Lists (Energy Market specific) -->	<xs:simpleType name="EnergyCommodityType1Code">		<xs:restriction base="xs:string">			<xs:enumeration value="EL"/>			<xs:enumeration value="NG"/>		</xs:restriction>	</xs:simpleType>	<!-- Action type  -->	<xs:simpleType name="ReportActionType1Code">		<xs:restriction base="xs:string">			<xs:enumeration value="N"/>			<xs:enumeration value="E"/>		</xs:restriction>	</xs:simpleType>	<!-- Row Type that pairs the combination with its Volume -->	<xs:complexType name="VolumeMappingType">		<xs:sequence>			<!-- The combination -->			<xs:element name="CtrctTp" type="emkt:ContractTypeEnum"/>			<xs:element name="GrpTp" type="emkt:GroupEnum"/>			<!-- The specific volume for this pair -->			<xs:element name="Vol" type="emkt:DecimalOrNotApplicable"/>		</xs:sequence>	</xs:complexType>	<!-- Contract type list  -->	<xs:simpleType name="ContractTypeEnum">		<xs:restriction base="xs:string">			<xs:enumeration value="FW"/>			<xs:enumeration value="FU"/>			<xs:enumeration value="OP"/>		</xs:restriction>	</xs:simpleType>	<!-- Group type list  -->	<xs:simpleType name="GroupEnum">		<xs:restriction base="xs:string">			<xs:enumeration value="INT"/>			<xs:enumeration value="NIN"/>		</xs:restriction>	</xs:simpleType>	<xs:complexType name="GroupDetailChoice">		<xs:choice>			<xs:element name="CntrlRegr" type="xs:boolean"/>			<xs:element name="StndlnInd" type="xs:boolean"/>			<xs:sequence>				<xs:element name="MktPtcptGrpMmbId" type="emkt:ACEIdentifier" maxOccurs="unbounded">					<xs:annotation>						<xs:documentation>Field No. 3</xs:documentation>					</xs:annotation>				</xs:element>			</xs:sequence>		</xs:choice>	</xs:complexType>	<xs:simpleType name="DecimalOrNotApplicable">		<xs:union memberTypes="emkt:DecimalNumber emkt:NotApplicableEnum"/>	</xs:simpleType>	<xs:simpleType name="NotApplicableEnum">		<xs:restriction base="xs:string">			<xs:enumeration value="NA"/>		</xs:restriction>	</xs:simpleType></xs:schema>