<?xml version="1.0" encoding="UTF-8" ?>
<!--Generated by Visual Studio 2003 Conforms to w3c http://www.w3.org/2001/XMLSchema-->
<!-- From: http://lists.oasis-open.org/archives/emergency/200505/bin00000.bin cited in
     http://lists.oasis-open.org/archives/emergency/200505/msg00000.html -->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
		targetNamespace="http://www.incident.com/EDXLDist/1.0"
		xmlns:ed="http://www.incident.com/EDXLDist/1.0"
		xmlns:xs="http://www.w3.org/2001/XMLSchema"
		elementFormDefault="qualified" 
		attributeFormDefault="unqualified">
	<element name="EDXLDist">
		<annotation>
			<documentation>EDXL Distribution Message (version 1.0)</documentation>
		</annotation>
		<complexType>
			<sequence>
				<element ref="ed:messageID" minOccurs="1" />
				<element ref="ed:senderID" minOccurs="1" />
				<element ref="ed:dateTimeSent" minOccurs="1" />
				<element name="messageStatus">
					<simpleType>
						<restriction base="string">
							<enumeration value="Actual" />
							<enumeration value="Exercise" />
							<enumeration value="System" />
							<enumeration value="Test" />
						</restriction>
					</simpleType>
				</element>
				<element name="messageType">
					<simpleType>
						<restriction base="string">
							<enumeration value="Report" />
							<enumeration value="Update" />
							<enumeration value="Cancel" />
							<enumeration value="Request" />
							<enumeration value="Resonse" />
							<enumeration value="Dispatch" />
							<enumeration value="Ack" />
							<enumeration value="Error" />
						</restriction>
					</simpleType>
				</element>
				<element name="messageReference" type="string" minOccurs="0" maxOccurs="unbounded" />
				<element name="recipentAddress" type="string" minOccurs="0" maxOccurs="unbounded" />
				<element name="llconfidentiallity" type="string" minOccurs="0" />
				<element name="targetArea" minOccurs="0" maxOccurs="unbounded">
				<annotation>
				<documentation> TargetArea is a container for location information</documentation>
				</annotation>
					<complexType>
						<sequence>
							<element name="targetAreaDesc" type="string" />
							<!-- There needs to be a attribute id associated with this to connect to content -->
							<element name="circle" type="string" minOccurs="0" maxOccurs="unbounded" />
							<element name="polygon" type="string" minOccurs="0" maxOccurs="unbounded" />
							<element name="country" minOccurs="0" maxOccurs="unbounded" />
							<element name="primaryJuristriction" type="string" minOccurs="0" />
							<element name="secondaryJuristiction" type="string" minOccurs="0" />
						</sequence>
					</complexType>
				</element>
				<element name="messageElement" minOccurs="0" maxOccurs="unbounded">
				<annotation>
				<documentation>MessagaeElement is a container for </documentation>
				</annotation>
				<!-- Target Area reference id matching this -->
					<complexType>
						<sequence>
							<element name="keyword" minOccurs="0" maxOccurs="unbounded">
								<complexType>
									<sequence>
										<element ref="ed:valueListUrn" />
										<element ref="ed:value" />
									</sequence>
								</complexType>
							</element>
							<element name ="senderRole" >
								<complexType>
									<sequence>
										<element ref="ed:valueListUrn" />
										<element ref="ed:value" />
									</sequence>
								</complexType>
							</element>
							<element name ="recipentRole" minOccurs="0" maxOccurs="unbounded" >
								<complexType>
									<sequence>
										<element ref="ed:valueListUrn" />
										<element ref="ed:value" />
									</sequence>
								</complexType>
							</element>
							<element name ="responseType" minOccurs="0" maxOccurs="unbounded" >
								<complexType>
									<sequence>
										<element ref="ed:valueListUrn" />
										<element ref="ed:value" />
									</sequence>
								</complexType>
							</element>
							<element name="confidentiallity" type="string" minOccurs="0" />
							<element name="keyXmlContent" minOccurs="1">
								<complexType>
									<sequence>
										<any namespace="##targetNamespace" processContents="strict" minOccurs="0" maxOccurs="unbounded" />
										<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs ="unbounded" />
									</sequence>
									<anyAttribute namespace="##any" processContents="skip" />
								</complexType>
							</element>
							<element name="contentOject" >
								<complexType>
									<sequence>		
										<choice>
										<element name="Payload">
											<complexType>
												<sequence>
													<any namespace="##other" processContents ="lax" maxOccurs="unbounded" />
												</sequence>
												<anyAttribute namespace="##other" processContents="skip" />
											</complexType>
										</element>
										<element name="Resource" maxOccurs="unbounded">
											<complexType>
												<sequence>
													<element name="resourceDesc" type="string" />
													<element name="mimeType" type="string" minOccurs="0" />
													<element name="size" type="integer" minOccurs="0" />
													<element name="uri" type="anyURI" minOccurs="0" />
													<element name="derefUri" type="string" minOccurs="0" />
													<element name="digest" type="string" minOccurs="0" />
												</sequence>
											</complexType>
										</element>
										</choice>
									</sequence>
								</complexType>
							</element>
						</sequence>
					</complexType>
				</element>
			</sequence>
		</complexType>
	</element>
	<!--
	<simpleType name="URN">
		<restriction base="anyURI">
			<pattern value="grep pattern" />
		</restriction> 
	</simpleType>
	-->
	<element name="valueListUrn" type="string" />
	<!-- We need to develp pattern for URN -->
	<element name="valueName" type="string" />
	<element name="value" type="string" />
	<element name="messageID" type="string" />
	<element name="senderID" type="string" />
	<element name="dateTimeSent" type="dateTime" />
</schema>
