<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:core="http://www.omg.org/spec/CTS2/1.1/Core"
  xmlns:map="http://www.omg.org/spec/CTS2/1.1/MapCatalog"
  xmlns:mapVersion="http://www.omg.org/spec/CTS2/1.1/MapVersion"
  xmlns:coreService="http://www.omg.org/spec/CTS2/1.1/CoreService"
  xmlns:tns="http://www.omg.org/spec/CTS2/1.1/wsdl/MapVersionReadServices"
  attributeFormDefault="qualified"
  elementFormDefault="qualified"
  targetNamespace="http://www.omg.org/spec/CTS2/1.1/wsdl/MapVersionReadServices">
  
  <xs:import namespace="http://www.omg.org/spec/CTS2/1.1/Core" schemaLocation="../core/Core.xsd"/>
  <xs:import namespace="http://www.omg.org/spec/CTS2/1.1/CoreService" schemaLocation="../core/CoreService.xsd"/>
  <xs:import namespace="http://www.omg.org/spec/CTS2/1.1/MapCatalog" schemaLocation="../map/Map.xsd"/>
  <xs:import namespace="http://www.omg.org/spec/CTS2/1.1/MapVersion" schemaLocation="../mapversion/MapVersion.xsd"/>
  <xs:import namespace="http://www.omg.org/spec/CTS2/1.1/wsdl/BaseServiceTypes" schemaLocation="BaseServiceTypes.xsd"/>
  
  <xs:element name="exists" type="tns:exists"/>
  <xs:complexType name="exists">
    <xs:sequence>
      <xs:element minOccurs="1" name="mapVersion" type="coreService:NameOrURI"/>
      <xs:element minOccurs="0" name="context" type="coreService:ReadContext"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="existsResponse" type="tns:existsResponse"/>
  <xs:complexType name="existsResponse">
    <xs:sequence>
      <xs:element name="return" type="xs:boolean"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="existsMapVersionForMap" type="tns:existsMapVersionForMap"/>
  <xs:complexType name="existsMapVersionForMap">
    <xs:sequence>
      <xs:element minOccurs="1" name="map" type="coreService:NameOrURI"/>
      <xs:element minOccurs="0" name="tag" type="coreService:NameOrURI"/>
      <xs:element minOccurs="0" name="context" type="coreService:ReadContext"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="existsMapVersionForMapResponse" type="tns:existsMapVersionForMapResponse"/>
  <xs:complexType name="existsMapVersionForMapResponse">
    <xs:sequence>
      <xs:element name="return" type="xs:boolean"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="readMapVersionForMap" type="tns:readMapVersionForMap"/>
  <xs:complexType name="readMapVersionForMap">
    <xs:sequence>
      <xs:element minOccurs="1" name="map" type="coreService:NameOrURI"/>
      <xs:element minOccurs="0" name="tag" type="coreService:NameOrURI"/>
      <xs:element minOccurs="0" name="queryControl" type="coreService:QueryControl"/>
      <xs:element minOccurs="0" name="context" type="coreService:ReadContext"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="readMapVersionForMapResponse" type="tns:readMapVersionForMapResponse"/>
  <xs:complexType name="readMapVersionForMapResponse">
    <xs:sequence>
      <xs:element ref="mapVersion:MapVersion"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="read" type="tns:read"/>
  <xs:complexType name="read">
    <xs:sequence>
      <xs:element minOccurs="1" name="mapVersion" type="coreService:NameOrURI"/>
      <xs:element minOccurs="0" name="queryControl" type="coreService:QueryControl"/>
      <xs:element minOccurs="0" name="context" type="coreService:ReadContext"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="readResponse" type="tns:readResponse"/>
  <xs:complexType name="readResponse">
    <xs:sequence>
      <xs:element ref="mapVersion:MapVersion"/>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="readEntry" type="tns:readEntry"/>
  <xs:complexType name="readEntry">
    <xs:sequence>
      <xs:element minOccurs="1" name="mapVersion" type="coreService:NameOrURI"/>
      <xs:element minOccurs="1" name="sourceEntity" type="coreService:EntityNameOrURI"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="readEntryResponse" type="tns:readEntryResponse"/>
  <xs:complexType name="readEntryResponse">
    <xs:sequence>
      <xs:element name="return" type="mapVersion:MapEntry"/>
    </xs:sequence>
  </xs:complexType>

  <xs:element name="entryExists" type="tns:entryExists"/>
  <xs:complexType name="entryExists">
    <xs:sequence>
      <xs:element minOccurs="1" name="mapVersion" type="coreService:NameOrURI"/>
      <xs:element minOccurs="1" name="sourceEntity" type="coreService:EntityNameOrURI"/>
    </xs:sequence>
  </xs:complexType>
  
  <xs:element name="entryExistsResponse" type="tns:entryExistsResponse"/>
  <xs:complexType name="entryExistsResponse">
    <xs:sequence>
      <xs:element name="return" type="xs:boolean"/>
    </xs:sequence>
  </xs:complexType>

</xs:schema>
