<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.lrms-address" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.lrms-address" xmlns:local="http://www.local-address" >
	<xs:import namespace="http://www.local-address" schemaLocation="local.xsd"/>
	<xs:complexType name="AddressLinkProfile">
		<xs:sequence>
			<xs:element name="fromStructureNumber" type="Text-name255"/>
			<xs:element name="toStructureNumber" type="Text-name255"/>
			<xs:element name="streetInfo" type="StreetInfo" minOccurs="0"/>
			<xs:element name="direction" type="Direction" minOccurs="0"/>
			<xs:element name="fromSide" type="Side" minOccurs="0"/>
			<xs:element name="toSide" type="Side" minOccurs="0"/>
			<xs:element name="fromHeight" type="Height" minOccurs="0"/>
			<xs:element name="toHeight" type="Height" minOccurs="0"/>
			<xs:element name="fromAdminAreas" type="AdminAreaGroup" minOccurs="0"/>
			<xs:element name="toAdminAreas" type="AdminAreaGroup" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="AddressPointProfile">
		<xs:sequence>
			<xs:element name="structureNumber" type="Text-name255"/>
			<xs:element name="streetInfo" type="StreetInfo" minOccurs="0"/>
			<xs:element name="side" type="Side" minOccurs="0"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
			<xs:element name="adminAreas" type="AdminAreaGroup" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="AddressProfile">
		<xs:sequence>
			<xs:element name="addressName" type="Text-name255" minOccurs="0"/>
			<xs:choice>
				<xs:element name="addressPointProfile" type="AddressPointProfile"/>
				<xs:element name="addressLinkProfile" type="AddressLinkProfile"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="AdminAreaGroup">
		<xs:choice maxOccurs="10">
			<xs:element name="city" type="Text-name255"/>
			<xs:element name="county" type="Text-name255"/>
			<xs:element name="state" type="Text-name255"/>
			<xs:element name="postalCode" type="PostalCode"/>
			<xs:element name="countryCode" type="CountryCode"/>
			<xs:element name="cityFIPS" type="Int-index16"/>
			<xs:element name="countyFIPS" type="Int-index16"/>
			<xs:element name="stateFIPS" type="Int-index16"/>
			<xs:element name="localAdminAreaGroup" type="local:AdminAreaGroup" minOccurs="0"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="AdminAreas">
		<xs:sequence>
			<xs:element name="areaName" type="Text-name255" minOccurs="0"/>
			<xs:element name="adminAreas" type="AdminAreaGroup"/>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="Angle">
		<xs:choice>
			<xs:element name="deg">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="0"/>
						<xs:maxInclusive value="360"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="rad">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="0"/>
						<xs:maxInclusive value="6.2832"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="cdeg">
				<xs:simpleType>
					<xs:restriction base="xs:unsignedShort">
						<xs:maxInclusive value="36000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="AreaLocation">
		<xs:sequence>
			<xs:element name="areaName" type="Text-name255" minOccurs="0"/>
			<xs:element name="areaId" type="IdType" minOccurs="0"/>
			<xs:element name="adminAreas" type="AdminAreaGroup" minOccurs="0"/>
			<xs:element name="polygon" type="PolygonType" minOccurs="0"/>
			<xs:element name="preCoded" type="ISOPreCodedProfile" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="Attributes">
		<xs:sequence>
			<xs:element name="textAttributes" type="Text-name255" minOccurs="0" maxOccurs="100"/>
			<xs:element name="topoAttributes" type="Text-name255" minOccurs="0" maxOccurs="100"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ChainType">
		<xs:sequence>
			<xs:element name="chainName" type="Text-name255" minOccurs="0"/>
			<xs:element name="chainId" type="IdType" minOccurs="0"/>
			<xs:element name="startNodeId" type="IdType" minOccurs="0"/>
			<xs:element name="endNodeId" type="IdType" minOccurs="0"/>
			<xs:element name="chainOffset" type="ChainOffset" minOccurs="0"/>
			<xs:element name="startSequenceNum" type="SequenceNum" minOccurs="0"/>
			<xs:element name="endSequenceNum" type="SequenceNum" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="CrossStreetsLinkProfile">
		<xs:sequence>
			<xs:element name="onStreetInfo" type="StreetInfo"/>
			<xs:element name="fromStreetInfo" type="StreetInfo"/>
			<xs:element name="toStreetInfo" type="StreetInfo"/>
			<xs:element name="startGeoLocation" type="GeoLocation" minOccurs="0"/>
			<xs:element name="endGeoLocation" type="GeoLocation" minOccurs="0"/>
			<xs:element name="startIntersectionType" type="IntersectionType" minOccurs="0"/>
			<xs:element name="endIntersectionType" type="IntersectionType" minOccurs="0"/>
			<xs:element name="offset1" type="Distance" minOccurs="0"/>
			<xs:element name="offset2" type="Distance" minOccurs="0"/>
			<xs:element name="direction" type="Direction" minOccurs="0"/>
			<xs:element name="side" type="Side" minOccurs="0"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
			<xs:element name="adminArea1" type="AdminAreaGroup" minOccurs="0"/>
			<xs:element name="adminArea2" type="AdminAreaGroup" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CrossStreetsPointProfile">
		<xs:sequence>
			<xs:element name="onStreetInfo" type="StreetInfo"/>
			<xs:element name="atStreetInfo" type="StreetInfo"/>
			<xs:element name="geoLocation" type="GeoLocation" minOccurs="0"/>
			<xs:element name="intersectionType" type="IntersectionType" minOccurs="0"/>
			<xs:element name="offset" type="Distance" minOccurs="0"/>
			<xs:element name="direction" type="Direction" minOccurs="0"/>
			<xs:element name="side" type="Side" minOccurs="0"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
			<xs:element name="adminArea" type="AdminAreaGroup" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CrossStreetsProfile">
		<xs:sequence>
			<xs:element name="locationID" type="String-index64" minOccurs="0"/>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:choice>
				<xs:element name="crossStreetsPoint" type="CrossStreetsPointProfile"/>
				<xs:element name="crossStreetsLink" type="CrossStreetsLinkProfile"/>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Distance">
		<xs:choice>
			<xs:element name="m">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="-10000000"/>
						<xs:maxInclusive value="+10000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="mDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-10000000"/>
						<xs:maxInclusive value="+10000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="mm">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="-1000000"/>
						<xs:maxInclusive value="+1000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="mmDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-1000000"/>
						<xs:maxInclusive value="+1000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="dm">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="-1000000"/>
						<xs:maxInclusive value="+1000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="dmDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-1000000"/>
						<xs:maxInclusive value="+1000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="yd">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="-17600000"/>
						<xs:maxInclusive value="+17600000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ydDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-17600000"/>
						<xs:maxInclusive value="+17600000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ft">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="-52800000"/>
						<xs:maxInclusive value="+52800000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ftDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-52800000"/>
						<xs:maxInclusive value="+52800000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="in">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="-1000000"/>
						<xs:maxInclusive value="+1000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="inDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-1000000"/>
						<xs:maxInclusive value="+1000000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="mi">
				<xs:simpleType>
					<xs:restriction base="xs:short">
						<xs:minInclusive value="-10000"/>
						<xs:maxInclusive value="+10000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="miDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-10000"/>
						<xs:maxInclusive value="+10000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="km">
				<xs:simpleType>
					<xs:restriction base="xs:short">
						<xs:minInclusive value="-10000"/>
						<xs:maxInclusive value="+10000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="kmDec">
				<xs:simpleType>
					<xs:restriction base="xs:decimal">
						<xs:minInclusive value="-10000"/>
						<xs:maxInclusive value="+10000"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="GeographicCoordinateProfile">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:choice>
				<xs:element name="geoLocationPoint" type="GeoLocation"/>
				<xs:element name="geoLocationLink" type="GeoLocationLink"/>
				<xs:element name="polarCoordinates" type="PolarCoordinates"/>
				<xs:element name="geoLocationDelta" type="GeoLocationDelta"/>
				<xs:element name="nodeAttribute" type="NodeAttribute"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="Int-index32"/>
	</xs:complexType>
	<xs:complexType name="GeoLocation">
		<xs:sequence>
			<xs:element name="latitude" type="Latitude"/>
			<xs:element name="longitude" type="Longitude"/>
			<xs:element name="horizontalDatum" type="HorizontalDatum" minOccurs="0"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GeoLocationDelta">
		<xs:sequence>
			<xs:element name="deltaHeight" type="Height" minOccurs="0"/>
			<xs:element name="deltaCoordinates" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="deltaLatitude" type="Latitude"/>
						<xs:element name="deltaLongitude" type="Longitude"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="deltaDistance" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="offsetEast" type="Distance"/>
						<xs:element name="offsetNorth" type="Distance"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GeoLocationLink">
		<xs:sequence>
			<xs:element name="startPoint" type="GeoLocation"/>
			<xs:element name="endPoint" type="GeoLocation"/>
			<xs:element name="direction" type="Direction" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GeometryProfile">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:choice>
				<xs:element name="geometryNode" type="PointLocation"/>
				<xs:element name="geometryPointOffset" type="PointOffsetType"/>
				<xs:element name="geometryLink" type="LinkLocation"/>
				<xs:element name="geometryArea" type="AreaLocation"/>
				<xs:element name="geometryPolygon" type="PolygonType"/>
				<xs:element name="geometryChain" type="ChainType"/>
				<xs:element name="geometryTransition" type="TransitionType"/>
				<xs:element name="geometryAttribute" type="SpatialObject"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="GridArray">
		<xs:sequence>
			<xs:element name="gridArray" type="GridArrayPoint" maxOccurs="10"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GridArrayPoint">
		<xs:sequence>
			<xs:element name="gridId" type="GridId"/>
			<xs:element name="gridLatitude" type="GridLatitude"/>
			<xs:element name="gridLongitude" type="GridLongitude"/>
			<xs:element name="gridZoom" type="GridZoom"/>
			<xs:element name="gridAltitude" type="GridAltitude" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GridPoint">
		<xs:sequence>
			<xs:element name="pointCoordinateType" type="GridPointCoordinateType"/>
			<xs:element name="side" type="Side"/>
			<xs:sequence maxOccurs="1000">
				<xs:sequence>
					<xs:element name="pointLongitude" type="GridPointLongitude"/>
					<xs:element name="pointLatitude" type="GridPointLatitude"/>
					<xs:element name="gridId" type="GridId"/>
					<xs:element name="pointLatitudeDelta" type="GridPointLatLonDelta"/>
					<xs:element name="pointLongitudeDelta" type="GridPointLatLonDelta"/>
					<xs:element name="pointAltitudeDelta" type="GridPointAltitudeDelta" minOccurs="0"/>
					<xs:element name="pointOffsetDistance" type="GridPointOffsetDistance" minOccurs="0"/>
				</xs:sequence>
			</xs:sequence>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GridPointPair">
		<xs:sequence>
			<xs:element name="pointPairCoordinateType" type="GridPointPairCoordinateType"/>
			<xs:element name="side" type="Side"/>
			<xs:sequence maxOccurs="1000">
				<xs:sequence>
					<xs:element name="startLongitude" type="GridPointLongitude"/>
					<xs:element name="startLatitude" type="GridPointLatitude"/>
					<xs:element name="endLongitude" type="GridPointLongitude"/>
					<xs:element name="endLatitude" type="GridPointLatitude"/>
					<xs:element name="gridId" type="GridId"/>
					<xs:element name="startLatitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="startLongitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="endLatitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="endLongitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="endLatitudePointDelta" type="GridLatLonPointDelta"/>
					<xs:element name="endLongitudePointDelta" type="GridLatLonPointDelta"/>
					<xs:element name="startAltitudeGridDelta" type="GridAltitudeDelta" minOccurs="0"/>
					<xs:element name="endAltitudeGridDelta" type="GridAltitudeDelta" minOccurs="0"/>
				</xs:sequence>
			</xs:sequence>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GridPointSequence">
		<xs:sequence>
			<xs:element name="pointPairCoordinateType" type="GridPointPairCoordinateType"/>
			<xs:element name="side" type="Side"/>
			<xs:sequence maxOccurs="1000">
				<xs:sequence>
					<xs:element name="startLongitude" type="GridPointLongitude"/>
					<xs:element name="startLatitude" type="GridPointLatitude"/>
					<xs:element name="nextLongitude" type="GridPointLongitude"/>
					<xs:element name="nextLatitude" type="GridPointLatitude"/>
					<xs:element name="gridId" type="GridId"/>
					<xs:element name="startLatitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="startLongitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="nextLatitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="nextLongitudeGridDelta" type="GridPointLatLonDelta"/>
					<xs:element name="nextLatitudePointDelta" type="GridLatLonPointDelta"/>
					<xs:element name="nextLongitudePointDelta" type="GridLatLonPointDelta"/>
					<xs:element name="startAltitudeGridDelta" type="GridAltitudeDelta" minOccurs="0"/>
					<xs:element name="nextAltitudeGridDelta" type="GridAltitudeDelta" minOccurs="0"/>
				</xs:sequence>
			</xs:sequence>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GridProfile">
		<xs:choice>
			<xs:element name="gridArray" type="GridArray"/>
			<xs:element name="gridPoint" type="GridPoint"/>
			<xs:element name="gridPointPair" type="GridPointPair"/>
			<xs:element name="gridPointSequence" type="GridPointSequence"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="GroupLocation">
		<xs:sequence>
			<xs:element name="groupName" type="Text-name255" minOccurs="0"/>
			<xs:choice maxOccurs="100">
				<xs:element name="pointLocation" type="PointLocation"/>
				<xs:element name="linkLocation" type="LinkLocation"/>
				<xs:element name="areaLocation" type="AreaLocation"/>
				<xs:element name="referenceLocation" type="LocationReference"/>
				<xs:element name="routeLocation" type="RouteLocation"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="groupID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="Height">
		<xs:choice>
			<xs:sequence>
				<xs:element name="altitude" type="Distance"/>
				<xs:element name="verticalDatum" type="VerticalDatum" minOccurs="0"/>
			</xs:sequence>
			<xs:element name="verticalLevel" type="VerticalLevel"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="IdType">
		<xs:sequence>
			<xs:element name="id" type="Int-index32" minOccurs="0"/>
			<xs:element name="idAlpha" type="String-index64" minOccurs="0"/>
			<xs:element name="databaseID" type="String-index64" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ISOObjectProfile">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:element name="startInfo">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="startCrossing" type="GeoLocation"/>
						<xs:element name="startType" type="IntersectionType"/>
						<xs:element name="streetName" type="Text-name255" minOccurs="0"/>
						<xs:element name="streetIndex" type="Int-index32" minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="viaInfo">
				<xs:complexType>
					<xs:sequence minOccurs="0" maxOccurs="100">
						<xs:element name="viaInfo-item">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="viaCrossing" type="GeoLocation"/>
									<xs:element name="viaType" type="IntersectionType"/>
									<xs:element name="vianame" type="Text-name255" minOccurs="0"/>
									<xs:element name="viaIndex" type="Int-index32" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="endInfo" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="endCrossing" type="GeoLocation"/>
						<xs:element name="endType" type="IntersectionType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="offset1" type="Distance" minOccurs="0"/>
			<xs:element name="offset2" type="Distance" minOccurs="0"/>
			<xs:element name="offsetDirection">
				<xs:simpleType>
					<xs:annotation>
						<xs:appinfo>
                     fromStart (0)
                     fromEnd (1)
                  </xs:appinfo>
					</xs:annotation>
					<xs:union>
						<xs:simpleType>
							<xs:restriction base="xs:unsignedInt">
								<xs:minInclusive value="0"/>
								<xs:maxInclusive value="1"/>
							</xs:restriction>
						</xs:simpleType>
						<xs:simpleType>
							<xs:restriction base="xs:string">
								<xs:enumeration value="fromStart"/>
								<xs:enumeration value="fromEnd"/>
							</xs:restriction>
						</xs:simpleType>
					</xs:union>
				</xs:simpleType>
			</xs:element>
			<xs:element name="side" type="Side"/>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="ISOPreCodedProfile">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:element name="idType" type="IdType"/>
			<xs:element name="alertcCountryCode" type="AlertCCountryCode" minOccurs="0"/>
			<xs:element name="locationTable" type="LocationTable" minOccurs="0"/>
			<xs:element name="locationCode" type="LocationCode" minOccurs="0"/>
			<xs:element name="countryCode" type="CountryCode" minOccurs="0"/>
			<xs:element name="registryNumericId" type="Int-index16" minOccurs="0"/>
			<xs:element name="registryAlphanumId" type="Text-name255" minOccurs="0"/>
			<xs:element name="alphanumId" type="String-index64" minOccurs="0"/>
			<xs:element name="numericIdxSize8" type="NumericIDXSize8" minOccurs="0"/>
			<xs:element name="numericIdxSize12" type="NumericIDXSize12" minOccurs="0"/>
			<xs:element name="numericIdxSize16" type="NumericIDXSize16" minOccurs="0"/>
			<xs:element name="numericIdxSize32" type="NumericIDXSize32" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="LinearReferenceLinkProfile">
		<xs:sequence>
			<xs:element name="linearReferenceType" type="LinearReferenceType" minOccurs="0"/>
			<xs:choice>
				<xs:element name="refOrImplicitType">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="link" type="LinkLocation"/>
							<xs:element name="referencePoint" type="PointLocation" minOccurs="0"/>
							<xs:element name="offsetDirection" type="Direction" minOccurs="0"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="linkType" type="LinkGeneral"/>
			</xs:choice>
			<xs:choice>
				<xs:element name="offset1" type="Distance"/>
				<xs:element name="normalizedOffset1" type="NormalizedOffset"/>
			</xs:choice>
			<xs:choice minOccurs="0">
				<xs:element name="offset2" type="Distance"/>
				<xs:element name="normalizedOffset2" type="NormalizedOffset"/>
			</xs:choice>
			<xs:element name="travelDirection" type="Direction"/>
			<xs:element name="side1" type="Side" minOccurs="0"/>
			<xs:element name="side2" type="Side" minOccurs="0"/>
			<xs:element name="height1" type="Height" minOccurs="0"/>
			<xs:element name="height2" type="Height" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="LinearReferencePointProfile">
		<xs:sequence>
			<xs:element name="linearReferenceType" type="LinearReferenceType" minOccurs="0"/>
			<xs:choice>
				<xs:element name="refOrImplicitType">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="link" type="LinkLocation"/>
							<xs:element name="referencePoint" type="PointLocation" minOccurs="0"/>
							<xs:element name="offsetDirection" type="Direction" minOccurs="0"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="linkType" type="LinkGeneral"/>
			</xs:choice>
			<xs:choice>
				<xs:element name="offset" type="Distance"/>
				<xs:element name="normalizedOffset" type="NormalizedOffset"/>
			</xs:choice>
			<xs:element name="travelDirection" type="Direction"/>
			<xs:element name="side" type="Side" minOccurs="0"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="LinearReferenceProfile">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:choice>
				<xs:element name="linearReferencePoint" type="LinearReferencePointProfile"/>
				<xs:element name="linearReferenceLink" type="LinearReferenceLinkProfile"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="Int-index32"/>
	</xs:complexType>
	<xs:complexType name="LinkGeneral">
		<xs:sequence>
			<xs:element name="startLocation" type="PointLocation"/>
			<xs:element name="endLocation" type="PointLocation"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="LinkLocation">
		<xs:sequence>
			<xs:element name="linkName" type="Text-name255" minOccurs="0"/>
			<xs:element name="linkEndpoints" type="LinkGeneral" minOccurs="0"/>
			<xs:element name="linkId" type="IdType" minOccurs="0"/>
			<xs:element name="addressLink" type="AddressLinkProfile" minOccurs="0"/>
			<xs:element name="linearReferenceLink" type="LinearReferenceLinkProfile" minOccurs="0"/>
			<xs:element name="crossStreetsLink" type="CrossStreetsLinkProfile" minOccurs="0"/>
			<xs:element name="geoLocationLink" type="GeoLocationLink" minOccurs="0"/>
			<xs:element name="gridLink" type="GridPointPair" minOccurs="0"/>
			<xs:element name="preCodedLink" type="ISOPreCodedProfile" minOccurs="0"/>
			<xs:element name="adminAreas" type="AdminAreas" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="LocationReference">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:element name="databaseID" type="String-index64" minOccurs="0"/>
			<xs:choice maxOccurs="100">
				<xs:element name="locationName" type="Text-name255"/>
				<xs:element name="pointLocation" type="PointLocation"/>
				<xs:element name="linkLocation" type="LinkLocation"/>
				<xs:element name="areaLocation" type="AreaLocation"/>
				<xs:element name="groupLocation" type="GroupLocation"/>
				<xs:element name="routeLocation" type="RouteLocation"/>
				<xs:element name="geometry" type="GeometryProfile"/>
				<xs:element name="geographicCoordinate" type="GeographicCoordinateProfile"/>
				<xs:element name="grid" type="GridProfile"/>
				<xs:element name="linearReference" type="LinearReferenceProfile"/>
				<xs:element name="crossStreets" type="CrossStreetsProfile"/>
				<xs:element name="iSO-preCoded" type="ISOPreCodedProfile"/>
				<xs:element name="iSO-Object" type="ISOObjectProfile"/>
				<xs:element name="address" type="AddressProfile"/>
				<xs:element name="publicGrid" type="PublicGridProfile"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="NodeAttribute">
		<xs:sequence>
			<xs:element name="nodeId" type="IdType" minOccurs="0"/>
			<xs:element name="nodeOrigin" type="NodeOrigin" minOccurs="0"/>
			<xs:element name="nodeValence" type="NodeValence"/>
			<xs:element name="geoLocation" type="GeoLocation"/>
			<xs:element name="streets" type="StreetInfo" minOccurs="0" maxOccurs="10"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PointLocation">
		<xs:sequence>
			<xs:element name="pointName" type="Text-name255" minOccurs="0"/>
			<xs:element name="pointNodeId" type="IdType" minOccurs="0"/>
			<xs:element name="pointOffset" type="PointOffsetType" minOccurs="0"/>
			<xs:element name="polarCoordinates" type="PolarCoordinates" minOccurs="0"/>
			<xs:element name="linearReferencePoint" type="LinearReferencePointProfile" minOccurs="0"/>
			<xs:element name="addressPoint" type="AddressPointProfile" minOccurs="0"/>
			<xs:element name="crossStreetsPoint" type="CrossStreetsPointProfile" minOccurs="0"/>
			<xs:element name="grid" type="GridPoint" minOccurs="0"/>
			<xs:element name="publicGrid" type="PublicGridProfile" minOccurs="0"/>
			<xs:element name="geoLocationPoint" type="GeoLocation" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="pointID" type="Int-index32"/>
	</xs:complexType>
	<xs:complexType name="PointOffsetType">
		<xs:sequence>
			<xs:element name="point" type="PointLocation"/>
			<xs:element name="offsetEast" type="Distance"/>
			<xs:element name="offsetNorth" type="Distance"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PolarCoordinates">
		<xs:sequence>
			<xs:element name="point" type="PointLocation"/>
			<xs:element name="angularDirection" type="Angle"/>
			<xs:element name="angularDistance" type="Distance"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PolygonType">
		<xs:sequence>
			<xs:element name="polygonName" type="Text-name255" minOccurs="0"/>
			<xs:element name="vertices" type="PointLocation" minOccurs="3" maxOccurs="255"/>
		</xs:sequence>
		<xs:attribute name="polygonId" type="Int-index32"/>
	</xs:complexType>
	<xs:complexType name="PublicGridLocalReference">
		<xs:sequence>
			<xs:element name="gridCode" type="PublicGridGridCode" minOccurs="0"/>
			<xs:element name="cellId" type="IdType" minOccurs="0"/>
			<xs:element name="nodeId" type="IdType" minOccurs="0"/>
			<xs:element name="gridStep" type="PublicGridGridStep" minOccurs="0"/>
			<xs:choice minOccurs="0">
				<xs:element name="eastWestDelta" type="PublicGridEastWestDelta"/>
				<xs:element name="northSouthDelta" type="PublicGridNorthSouthDelta"/>
			</xs:choice>
			<xs:element name="height" type="Height" minOccurs="0"/>
			<xs:element name="horizontalDatum" type="HorizontalDatum" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PublicGridProfile">
		<xs:sequence>
			<xs:element name="gridName" type="Text-name255" minOccurs="0"/>
			<xs:choice>
				<xs:element name="usng" type="PublicGridUSNG"/>
				<xs:element name="localReference" type="PublicGridLocalReference"/>
				<xs:element name="statePlane" type="PublicGridStatePlane"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="PublicGridStatePlane">
		<xs:sequence>
			<xs:element name="gridCode" type="PublicGridGridCode"/>
			<xs:element name="easting32" type="PublicGridEasting32"/>
			<xs:element name="northing32" type="PublicGridNorthing32"/>
			<xs:element name="gridStep" type="PublicGridGridStep"/>
			<xs:element name="statePlaneZone" type="PublicGridStatePlaneZone"/>
			<xs:element name="height" type="Height" minOccurs="0"/>
			<xs:element name="horizontalDatum" type="HorizontalDatum" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PublicGridUSNG">
		<xs:sequence>
			<xs:element name="gridZone" type="PublicGridGridZone"/>
			<xs:element name="gridSquare" type="PublicGridGridSquare"/>
			<xs:element name="gridStep" type="PublicGridGridStep"/>
			<xs:choice>
				<xs:element name="easting16" type="PublicGridEasting16"/>
				<xs:element name="easting32" type="PublicGridEasting32"/>
			</xs:choice>
			<xs:choice>
				<xs:element name="northing16" type="PublicGridNorthing16"/>
				<xs:element name="northing32" type="PublicGridNorthing32"/>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="RouteLocation">
		<xs:sequence>
			<xs:element name="routeName" type="Text-name255" minOccurs="0"/>
			<xs:choice maxOccurs="100">
				<xs:element name="pointLocation" type="PointLocation" minOccurs="0"/>
				<xs:element name="linkLocation" type="LinkLocation" minOccurs="0"/>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="routeID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="SpatialObject">
		<xs:sequence>
			<xs:element name="locationName" type="Text-name255" minOccurs="0"/>
			<xs:element name="objectId" type="IdType" minOccurs="0"/>
			<xs:choice>
				<xs:element name="pointOrNodeObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="pointOrNode" type="PointLocation"/>
							<xs:element name="pointAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="linkObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="link" type="LinkLocation"/>
							<xs:element name="linkAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="chainObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="chain" type="ChainType"/>
							<xs:element name="chainAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="transitionObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="transition" type="TransitionType"/>
							<xs:element name="transitionAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="areaObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="area" type="AreaLocation"/>
							<xs:element name="areaAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="polygonObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="polygon" type="PolygonType"/>
							<xs:element name="polygonAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="routeObject">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="route" type="RouteLocation"/>
							<xs:element name="routeAttributes" type="Attributes"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:complexType name="StreetInfo">
		<xs:choice>
			<xs:sequence>
				<xs:element name="prefix" type="Text-name-presuf4" minOccurs="0" maxOccurs="4"/>
				<xs:element name="name" type="Text-name255"/>
				<xs:element name="suffix" type="Text-name-presuf4" minOccurs="0" maxOccurs="4"/>
			</xs:sequence>
			<xs:element name="streetIndex" type="Int-index32"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="TransitionType">
		<xs:sequence>
			<xs:element name="transitionName" type="Text-name255" minOccurs="0"/>
			<xs:element name="transitionId" type="IdType"/>
			<xs:element name="transitionOffset" minOccurs="0">
				<xs:simpleType>
					<xs:restriction base="xs:unsignedShort"/>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="locationID" type="String-index64"/>
	</xs:complexType>
	<xs:simpleType name="AlertCCountryCode">
		<xs:restriction base="xs:unsignedByte">
			<xs:minInclusive value="1"/>
			<xs:maxInclusive value="15"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ChainOffset">
		<xs:restriction base="xs:unsignedShort"/>
	</xs:simpleType>
	<xs:simpleType name="CountryCode">
		<xs:restriction base="xs:string">
			<xs:length value="3"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Direction">
		<xs:annotation>
			<xs:appinfo>
            north (0)
            south (1)
            east (2)
            west (3)
            northeast (4)
            northwest (5)
            southeast (6)
            southwest (7)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="7"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="north"/>
					<xs:enumeration value="south"/>
					<xs:enumeration value="east"/>
					<xs:enumeration value="west"/>
					<xs:enumeration value="northeast"/>
					<xs:enumeration value="northwest"/>
					<xs:enumeration value="southeast"/>
					<xs:enumeration value="southwest"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="GridAltitude">
		<xs:restriction base="xs:unsignedShort">
			<xs:maxInclusive value="4095"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridAltitudeDelta">
		<xs:restriction base="xs:unsignedShort">
			<xs:minInclusive value="1"/>
			<xs:maxInclusive value="2048"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridId">
		<xs:restriction base="xs:unsignedByte">
			<xs:minInclusive value="7"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridLatitude">
		<xs:restriction base="xs:short">
			<xs:minInclusive value="-10987"/>
			<xs:maxInclusive value="+10987"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridLatLonPointDelta">
		<xs:restriction base="xs:unsignedByte">
			<xs:minInclusive value="1"/>
			<xs:maxInclusive value="254"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridLongitude">
		<xs:restriction base="xs:short">
			<xs:minInclusive value="-21973"/>
			<xs:maxInclusive value="+21973"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridPointAltitudeDelta">
		<xs:restriction base="xs:unsignedShort">
			<xs:maxInclusive value="16374"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridPointCoordinateType">
		<xs:annotation>
			<xs:appinfo>
            32-bit-lat-long (0)
            point-with-delta (1)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="1"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="32-bit-lat-long"/>
					<xs:enumeration value="point-with-delta"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="GridPointLatitude">
		<xs:restriction base="xs:int">
			<xs:minInclusive value="-720000000"/>
			<xs:maxInclusive value="+720000000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridPointLatLonDelta">
		<xs:restriction base="xs:unsignedShort">
			<xs:maxInclusive value="16383"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridPointLongitude">
		<xs:restriction base="xs:int">
			<xs:minInclusive value="-1440000000"/>
			<xs:maxInclusive value="+1440000000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="GridPointOffsetDistance">
		<xs:restriction base="xs:unsignedByte"/>
	</xs:simpleType>
	<xs:simpleType name="GridPointPairCoordinateType-item">
		<xs:annotation>
			<xs:appinfo>
            32-bit-lat-long (0)
            point-with-14bit-delta (1)
            point (2)
            variable (3)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:int">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="3"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="32-bit-lat-long"/>
					<xs:enumeration value="point-with-14bit-delta"/>
					<xs:enumeration value="point"/>
					<xs:enumeration value="variable"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="GridPointPairCoordinateType">
		<xs:list itemType="GridPointPairCoordinateType-item"/>
	</xs:simpleType>
	<xs:simpleType name="GridZoom">
		<xs:restriction base="xs:byte">
			<xs:minInclusive value="-5"/>
			<xs:maxInclusive value="+6"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="HorizontalDatum">
		<xs:annotation>
			<xs:appinfo>
            wgs-84 (0)
            wgs-84egm-96 (1)
            nad83 (2)
            nad27 (3) -- LOCAL_CONTENT
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="3"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="wgs-84"/>
					<xs:enumeration value="wgs-84egm-96"/>
					<xs:enumeration value="nad83"/>
					<xs:enumeration value="nad27"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="IntersectionType">
		<xs:annotation>
			<xs:appinfo>
            simple (0) -- Road crossing that has no internal road elements.
             -- Represented in any map database by just one GDF junction.
            complex (1) -- Road crossing that has one or more internal
             -- road elements that can be considered part of the road crossing.
             -- Represented in higher resolution map databases by several
             -- GDF road elements and junctions.
            gradeSeparated (2) -- Non-topological intersection of roads ,  for example an overpass.
            roundabout (3) -- Closed ,  one-way loop for the regulation of traffic flow at grade.
            square (4) -- An area of regulated traffic flow around an obstruction such as a fountain.
            interchange (5) -- A complex feature composed of all the road elements and junctions forming a crossing.
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="5"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="simple"/>
					<xs:enumeration value="complex"/>
					<xs:enumeration value="gradeSeparated"/>
					<xs:enumeration value="roundabout"/>
					<xs:enumeration value="square"/>
					<xs:enumeration value="interchange"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="Int-index12">
		<xs:restriction base="xs:unsignedShort">
			<xs:maxInclusive value="4095"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Int-index16">
		<xs:restriction base="xs:unsignedShort"/>
	</xs:simpleType>
	<xs:simpleType name="Int-index32">
		<xs:restriction base="xs:unsignedInt"/>
	</xs:simpleType>
	<xs:simpleType name="Int-index8">
		<xs:restriction base="xs:unsignedByte"/>
	</xs:simpleType>
	<xs:simpleType name="Int-latitude32">
		<xs:restriction base="xs:int">
			<xs:minInclusive value="-90000000"/>
			<xs:maxInclusive value="+90000000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Int-loccode16">
		<xs:restriction base="xs:unsignedShort">
			<xs:minInclusive value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Int-loctable8">
		<xs:restriction base="xs:unsignedByte">
			<xs:minInclusive value="1"/>
			<xs:maxInclusive value="63"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Int-longitude32">
		<xs:restriction base="xs:int">
			<xs:minInclusive value="-180000000"/>
			<xs:maxInclusive value="+180000000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Latitude">
		<xs:restriction base="Int-latitude32"/>
	</xs:simpleType>
	<xs:simpleType name="LinearReferenceType">
		<xs:annotation>
			<xs:appinfo>
            implicit (0)
            relative (1)
            link (2)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="2"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="implicit"/>
					<xs:enumeration value="relative"/>
					<xs:enumeration value="link"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="LocationCode">
		<xs:restriction base="Int-loccode16"/>
	</xs:simpleType>
	<xs:simpleType name="LocationTable">
		<xs:restriction base="Int-loctable8"/>
	</xs:simpleType>
	<xs:simpleType name="Longitude">
		<xs:restriction base="Int-longitude32"/>
	</xs:simpleType>
	<xs:simpleType name="NodeOrigin">
		<xs:annotation>
			<xs:appinfo>
            NationalDataset (0)
            Regional/LocalDataset (1)
            ProprietaryDataset (2)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="2"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="NationalDataset"/>
					<xs:enumeration value="Regional/LocalDataset"/>
					<xs:enumeration value="ProprietaryDataset"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="NodeValence">
		<xs:restriction base="xs:unsignedByte">
			<xs:maxInclusive value="7"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="NormalizedOffset">
		<xs:restriction base="xs:float">
			<xs:minInclusive value="-100"/>
			<xs:maxInclusive value="100"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="NumericIDXSize12">
		<xs:restriction base="Int-index12"/>
	</xs:simpleType>
	<xs:simpleType name="NumericIDXSize16">
		<xs:restriction base="Int-index16"/>
	</xs:simpleType>
	<xs:simpleType name="NumericIDXSize32">
		<xs:restriction base="Int-index32"/>
	</xs:simpleType>
	<xs:simpleType name="NumericIDXSize8">
		<xs:restriction base="Int-index8"/>
	</xs:simpleType>
	<xs:simpleType name="PostalCode">
		<xs:restriction base="xs:string">
			<xs:minLength value="4"/>
			<xs:maxLength value="10"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PreCodedIdType">
		<xs:annotation>
			<xs:appinfo>
            AlertC (0)
            Registry (1)
            AlphanumId (2)
            NumericIdx (3)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="3"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="AlertC"/>
					<xs:enumeration value="Registry"/>
					<xs:enumeration value="AlphanumId"/>
					<xs:enumeration value="NumericIdx"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="PublicGridEasting16">
		<xs:restriction base="xs:int"/>
	</xs:simpleType>
	<xs:simpleType name="PublicGridEasting32">
		<xs:restriction base="xs:unsignedInt">
			<xs:maxInclusive value="1000000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridEastWestDelta">
		<xs:restriction base="xs:short">
			<xs:minInclusive value="-10000"/>
			<xs:maxInclusive value="+10000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridGridCellId">
		<xs:restriction base="xs:unsignedInt"/>
	</xs:simpleType>
	<xs:simpleType name="PublicGridGridCellIdAlpha">
		<xs:restriction base="String-index64"/>
	</xs:simpleType>
	<xs:simpleType name="PublicGridGridCode">
		<xs:restriction base="xs:string">
			<xs:length value="2"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridGridSquare">
		<xs:restriction base="xs:string">
			<xs:length value="2"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridGridStep">
		<xs:restriction base="xs:unsignedShort">
			<xs:minInclusive value="1"/>
			<xs:maxInclusive value="+10000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridGridZone">
		<xs:restriction base="xs:string">
			<xs:length value="3"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridNorthing16">
		<xs:restriction base="xs:int"/>
	</xs:simpleType>
	<xs:simpleType name="PublicGridNorthing32">
		<xs:restriction base="xs:unsignedInt">
			<xs:maxInclusive value="1000000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridNorthSouthDelta">
		<xs:restriction base="xs:short">
			<xs:minInclusive value="-10000"/>
			<xs:maxInclusive value="+10000"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="PublicGridStatePlaneZone">
		<xs:restriction base="Int-index16"/>
	</xs:simpleType>
	<xs:simpleType name="SequenceNum">
		<xs:restriction base="Int-index16"/>
	</xs:simpleType>
	<xs:simpleType name="Side">
		<xs:annotation>
			<xs:appinfo>
            unknown (0)
            right (1)
            left (2)
            both (3)
            north (4)
            south (5)
            east (6)
            west (7)
            northeast (8)
            northwest (9)
            southeast (10)
            southwest (11)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="11"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="unknown"/>
					<xs:enumeration value="right"/>
					<xs:enumeration value="left"/>
					<xs:enumeration value="both"/>
					<xs:enumeration value="north"/>
					<xs:enumeration value="south"/>
					<xs:enumeration value="east"/>
					<xs:enumeration value="west"/>
					<xs:enumeration value="northeast"/>
					<xs:enumeration value="northwest"/>
					<xs:enumeration value="southeast"/>
					<xs:enumeration value="southwest"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="String-index64">
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="64"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Text-name255">
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="255"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Text-name-presuf4">
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="4"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="VerticalDatum">
		<xs:annotation>
			<xs:appinfo>
            wgs-84 (0)
            navd (1)
         </xs:appinfo>
		</xs:annotation>
		<xs:union>
			<xs:simpleType>
				<xs:restriction base="xs:unsignedInt">
					<xs:minInclusive value="0"/>
					<xs:maxInclusive value="1"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:enumeration value="wgs-84"/>
					<xs:enumeration value="navd"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>
	<xs:simpleType name="VerticalLevel">
		<xs:restriction base="xs:byte">
			<xs:minInclusive value="-7"/>
			<xs:maxInclusive value="7"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>

