<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
    targetNamespace="http://www.opengis.net/ogc"
    xmlns:ogc="http://www.opengis.net/ogc"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    version="1.0.2 2010-02-01">

<!--
    WCS is an OGC Standard.
    Copyright (c) 2003,2010 Open Geospatial Consortium, Inc. All Rights Reserved.
    To obtain additional rights of use, visit http://www.opengeospatial.org/legal/ .
-->
    
    <xs:element name="ServiceExceptionReport">
        <xs:annotation>
            <xs:documentation> The ServiceExceptionReport element contains one or more
                ServiceException elements that describe a service exception. </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element name="ServiceException" type="ogc:ServiceExceptionType" minOccurs="0"
                    maxOccurs="unbounded">
                    <xs:annotation>
                        <xs:documentation> The Service exception element is used to describe a
                            service exception. </xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:sequence>
            <xs:attribute name="version" type="xs:string" fixed="1.2.0"/>
        </xs:complexType>
    </xs:element>
    <xs:complexType name="ServiceExceptionType">
        <xs:annotation>
            <xs:documentation> The ServiceExceptionType type defines the ServiceException element.
                The content of the element is an exception message that the service wished to convey
                to the client application. </xs:documentation>
        </xs:annotation>
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="code" type="xs:string">
                    <xs:annotation>
                        <xs:documentation> A service may associate a code with an exception by using
                            the code attribute. </xs:documentation>
                    </xs:annotation>
                </xs:attribute>
                <xs:attribute name="locator" type="xs:string" use="optional">
                    <xs:annotation>
                        <xs:documentation> The locator attribute may be used by a service to
                            indicate to a client where in the client's request an exception was
                            encountered. If the request included a 'handle' attribute, this may be
                            used to identify the offending component of the request. Otherwise the
                            service may try to use other means to locate the exception such as line
                            numbers or byte offset from the begining of the request, etc ...
                        </xs:documentation>
                    </xs:annotation>
                </xs:attribute>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
</xs:schema>

