<?xml version="1.0" encoding="UTF-8"?>
<!-- Product version : 6.20.205 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://deutsche-boerse.de/m7-re"
        xmlns="http://deutsche-boerse.de/m7-re" elementFormDefault="qualified">

    <xs:include schemaLocation="x90_reports_common_structs.xsd"/>

    <xs:element name="tc810">
        <xs:complexType>
            <xs:annotation>
                <xs:documentation>TC810 Daily Trade Confirmation</xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element name="rptHdr" type="rptHdrType" />
                <xs:element name="tc810Grp" type="tc810GrpType" minOccurs="0" maxOccurs="unbounded" >
                    <xs:annotation>
                        <xs:documentation>
                            Conditions: present only if at least one trade was matched, trade cancelled, or trade recall was granted on *rptPrntEffDat*
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:complexType name="tc810GrpType">
        <xs:complexContent>
            <xs:extension base="grpType">
                <xs:sequence>
                    <xs:element name="tc810KeyGrp" type="tc810KeyGrpType" />
                    <xs:element name="tc810Grp1" type="tc810Grp1Type" minOccurs="1" maxOccurs="unbounded" />
                    <xs:element name="sumMembTotBuyOrdr" type="sumMembTotBuyOrdrType" minOccurs="1" maxOccurs="1" />
                    <xs:element name="sumMembTotSellOrdr" type="sumMembTotSellOrdrType" minOccurs="1" maxOccurs="1" />
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

    <xs:complexType name="tc810Grp1Type">
        <xs:sequence>
            <xs:element name="tc810KeyGrp1" type="tc810KeyGrp1Type" />
            <xs:element name="tc810Rec" type="tc810RecType" minOccurs="1" maxOccurs="unbounded" />
            <xs:element name="sumPartTotBuyOrdr" type="sumPartTotBuyOrdrType" minOccurs="1" maxOccurs="1" />
            <xs:element name="sumPartTotSellOrdr" type="sumPartTotSellOrdrType" minOccurs="1" maxOccurs="1" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="tc810KeyGrpType">
        <xs:sequence>
            <xs:element name="membExcIdCod" type="membExcIdCodType" minOccurs="1" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
                        The "Member ID" of the latest order owner. For orders created by M7 as a result of AOT, it is the "Member ID" of the order owner before the AOT has been performed.
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="membClgIdCod" type="membClgIdCodType" minOccurs="1" maxOccurs="1" />
            <xs:element name="stlIdAct" type="stlIdActType" minOccurs="1" maxOccurs="1" />
            <xs:element name="stlIdLoc" type="stlIdLocType" minOccurs="1" maxOccurs="1" />
            <xs:element name="instTitl" type="instTitlType" />
            <xs:element name="cntcUnt" type="cntcUntType" minOccurs="1" maxOccurs="1" />
            <xs:element name="product" type="product" minOccurs="1" maxOccurs="1" />
            <xs:element name="currTypCod" type="currTypCodType" minOccurs="1" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
Currency Type Code contains the currency in which the product is traded and the related fees are charged.

Valid values: A valid ISO code
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="tc810KeyGrp1Type">
        <xs:sequence>
            <xs:element name="partIdCod" type="partIdCodType" minOccurs="1" maxOccurs="1" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="tc810RecType">
        <xs:sequence>
            <xs:element name="mktArea" type="mktAreaType" minOccurs="1" maxOccurs="1" />
            <xs:element name="tso" type="tsoType" minOccurs="1" maxOccurs="1" />
            <xs:element name="balGrp" type="balGrpType" minOccurs="1" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
                        Balancing Group for which the order was entered.
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="clgHseCode" type="clgHseCodeType" minOccurs="0" maxOccurs="1"/>
            <xs:element name="clgAcctId" type="clgAcctIdType" minOccurs="0" maxOccurs="1"/>
            <xs:element name="tranTim" type="tranTimType" minOccurs="1" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
The transaction timestamp. The exact time when the trade execution or modification was performed.

Valid values: Any time in the format hh:mm:ss:ccc.
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="tranIdNo" type="tranIdNoType" minOccurs="1" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
A unique identifier of a trade per day ("Trade ID")
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="tranIdSfxNo" type="tranIdSfxNoType" minOccurs="0" maxOccurs="1" />
            <xs:element name="remoteTranIdNo" type="tranIdNoType" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
A unique identifier of a trade per day assigned by XBID SOB ("Trade ID")

Conditions: Present if the trade was executed or modified by XBID SOB
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="remoteTranIdSfxNo" type="tranIdSfxNoType" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
The Remote Transaction ID Suffix Number. The field contains the revision number of the trade on the XBID SOB. Valid values:

Usually "1", the value changes e.g. when a trade recall is granted by XBID Central Admin.

Conditions: Present if the trade was executed or modified by XBID SOB
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="tranTypCod" type="tranTypCodType" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
The transaction type code describes the action performed on a trade.

**" "** - Regular trade execution

**Q** - Trade with requested recall

**R** - Recalled trade

**J** - Trade with rejected recall

**C** - Cancelled trade
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="typOrig" type="typOrigType" minOccurs="0" maxOccurs="1" />
            <xs:element name="aggressorIndicator" type="aggressorIndicatorType" minOccurs="1" maxOccurs="1" />
            <xs:element name="isinCod" type="isinCodType" minOccurs="0" maxOccurs="1" />
            <xs:element name="ordrNo" type="ordrNoType" minOccurs="0" maxOccurs="1" />
            <xs:element name="acctTypCodGrp" type="acctTypCodGrpType" minOccurs="1" maxOccurs="1" />
            <xs:element name="ordrBuyCod" type="ordrBuyCodType" minOccurs="1" maxOccurs="1" />
            <xs:element name="openCloseInd" type="openCloseIndType" minOccurs="0" maxOccurs="1" />
            <xs:element name="tradMtchQty" type="tradMtchQtyType" minOccurs="1" maxOccurs="1" />
            <xs:element name="tradMtchPrc" type="tradMtchPrcType" minOccurs="1" maxOccurs="1" />
            <xs:element name="tradPhase" type="tradPhaseType" minOccurs="0" maxOccurs="1" />
            <xs:element name="stlDate" type="stlDateType" minOccurs="1" maxOccurs="1" />
            <xs:element name="feeAmt" type="feeAmtType" minOccurs="1" maxOccurs="1" />
            <xs:element name="membCtpyIdCod" type="membCtpyIdCodType" minOccurs="1" maxOccurs="1" />
            <xs:element name="text" type="textType" minOccurs="0" maxOccurs="1" />
            <xs:element name="membExcIdCodOboMs" type="membExcIdCodOboMsType" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
                        The "Member ID" of the admin user who granted a recall or cancelled a trade.
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="partIdCodOboMs" type="partIdCodOboMsType" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
The "User Code" of the admin user who granted a recall or cancelled a trade.

Conditions: Present if the trade was cancelled or a trade recall was granted by an admin user
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="brokerMembIdCod" type="mbrIdType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
The "Member ID" of the broker

Conditions: present if the trade was modified by a broker user on behalf of another user
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="brokerUserIdCod" type="userIdCodType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
The "User Code" of the broker

Conditions: present if the action was modified by a broker user on behalf of another user
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="selfTrade" type="selfTradeType" minOccurs="0" maxOccurs="1" />
            <xs:element name="recallRequestor" type="mbrIdType" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
                        The Member Id of the party who initiated the trade recall. Filled only in case report is generated for admin or user who belongs to same balancing group as user who initiated the recall.
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="location" type="string64" minOccurs="0" maxOccurs="1" >
                <xs:annotation>
                    <xs:documentation>
Location of trade within the delivery area.

Condition: Present if the location for orders was submitted.
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

</xs:schema>
