<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:doc="http://www.ros.ie/schemas/customs/doc"
    xmlns:base="http://www.ros.ie/schemas/customs/base"
    xmlns:simple="http://www.ros.ie/schemas/customs/simple"
    xmlns:complex="http://www.ros.ie/schemas/customs/complex"
    xmlns="http://www.ros.ie/schemas/customs/IM405"
    targetNamespace="http://www.ros.ie/schemas/customs/IM405" elementFormDefault="qualified"
    version="1.00">


    <!--===== Includes =====-->
    <xs:import namespace="http://www.ros.ie/schemas/customs/base" schemaLocation="AIS_base.xsd"/>
    <xs:import namespace="http://www.ros.ie/schemas/customs/simple" schemaLocation="AIS_simple.xsd"/>
    <xs:import namespace="http://www.ros.ie/schemas/customs/complex"
        schemaLocation="AIS_complex.xsd"/>

    <!--===== Root Element =====-->
    <xs:element name="IM405" type="IM405">
        <xs:annotation>
            <xs:documentation><doc:description value="Amendment Request Rejection"/></xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:complexType name="IM405">
        <xs:sequence>
            <xs:element name="Declaration" type="DeclarationType">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="Declaration"/>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="FunctionalError" type="complex:FunctionalErrorType" minOccurs="0"
                maxOccurs="unbounded">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="Functional Error"/>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>


    <!-- DeclarationType -->
    <xs:complexType name="DeclarationType">
        <xs:sequence>
            <xs:element name="MRN" type="simple:MRN_type" minOccurs="1" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="MRN"/>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="AmendmentRejectionDate" type="simple:Date_type">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="Amendment Rejection Date"/>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="AmendmentRejectionMotivationText" type="base:Alphanumeric_Max350"
                minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="Declaration Rejection Reason"/>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="CustomsOffices" minOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="Customs Offices"/>
                    </xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence minOccurs="1">
                        <xs:element name="PresentationCustomsOffice_5_26"
                            type="simple:CustomsOffice_type" minOccurs="0" maxOccurs="1">
                            <xs:annotation>
                                <xs:documentation>
                                    <doc:description value="5/26: Customs office of presentation"/>
                                    <doc:codeList name="NationalCustomsOffice" type="business"/>
                                    <doc:wco name="15C"/>
                                </xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="SupervisingCustomsOffice_5_27"
                            type="simple:CustomsOffice_type" minOccurs="0" maxOccurs="1">
                            <xs:annotation>
                                <xs:documentation>
                                    <doc:description value="5/27: Supervising customs office"/>
                                    <doc:codeList name="NationalCustomsOffice" type="business"/>
                                    <doc:wco name="97B"/>
                                </xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="CustomsOfficeLodgement" type="simple:CustomsOffice_type"
                            minOccurs="1" maxOccurs="1">
                            <xs:annotation>
                                <xs:documentation>
                                   <doc:description value="Customs office of lodgement"/>
                                   <doc:codeList name="NationalCustomsOffice" type="business"/>
                                </xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="Parties" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>
                        <doc:description value="Parties"/>
                    </xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence minOccurs="0">
                        <xs:element name="Declarant" type="complex:Declarant_type" minOccurs="0"/>
                        <xs:element name="Representative"
                            type="complex:Representative_Optional_type" minOccurs="0"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="Remarks" type="simple:Remarks_type" minOccurs="0">
                <xs:annotation>
                    <xs:documentation><doc:description value="Remarks"/></xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>


</xs:schema>
