<?xml version="1.0" encoding="UTF-8"?>
<!--Modified by Max Voskob on 20/03/2003-->
<!-- Last modified by Andrew Golightly on 19/04/2005 (E-Government Unit, New Zealand) -->
<xs:schema targetNamespace="NZL:govt:egu:xNAL:xAL:version=3_3" xmlns="NZL:govt:egu:xNAL:xAL:version=3_3" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fmt="NZL:govt:egu:xNAL:xAL-formatting:version=3_3" xmlns:xNL="NZL:govt:egu:xNAL:xNL:version=3_3" xmlns:xNLb="NZL:govt:egu:xNAL:xNL-basic:version=3_3" elementFormDefault="qualified">
	<xs:annotation>
		<xs:documentation>DRAFT OF VERSION 3

xAL: eXtensible Address Language
Date of Creation: 26 March 2002
Copyright(c) 2003, OASIS. All Rights Reserved [http://www.oasis-open.org]
Contact: Customer Information Quality Technical Committee, OASIS
http://www.oasis-open.org/committees/ciq
Version: 3.3 
Previous Version: V2.0
</xs:documentation>
	</xs:annotation>
	<xs:annotation>
		<xs:documentation>Common Attributes:Type - If not documented then it means, possible values of Type not limited to: Official, Unique, Abbreviation, OldName, Synonym
Code:Address element codes are used by groups like postal groups like ECCMA, ADIS, UN/PROLIST for postal services</xs:documentation>
	</xs:annotation>
	<xs:import namespace="NZL:govt:egu:xNAL:xNL:version=3_3" schemaLocation="nz-xNL-3_3.xsd"/>
	<xs:import namespace="NZL:govt:egu:xNAL:xAL-formatting:version=3_3" schemaLocation="nz-xALformatting-3_3.xsd"/>
        <xs:import namespace="NZL:govt:egu:xNAL:xNL-basic:version=3_3" schemaLocation="nz-xNL-basic-3_3.xsd"/>
	<xs:attributeGroup name="grFormatting">
		<xs:attribute ref="fmt:LineNumber"/>
		<xs:attribute ref="fmt:ElementPosition"/>
		<xs:attribute ref="fmt:Occurence"/>
		<xs:attribute ref="fmt:Separator"/>
		<xs:attribute ref="fmt:PrecedingIndicator"/>
		<xs:attribute ref="fmt:Prefix"/>
		<xs:attribute ref="fmt:Suffix"/>
		<xs:attribute ref="fmt:FollowingIndicator"/>
	</xs:attributeGroup>
	<xs:attributeGroup name="grAddressDetailsKeyRef">
		<xs:annotation>
			<xs:documentation>This group is used to reference another AddressDetails element for a better description of a particular location if needed. 
E.g. detailed address of an adjasent building that is used as a landmark in the direction. </xs:documentation>
		</xs:annotation>
		<xs:attribute name="AddressDetailsKeyRef" type="xNLb:guid">
			<xs:annotation>
				<xs:documentation>This attribute references AddressDetails element with a matching value of AddressDetailsKey attribute.
There is no constraint set up in the schema coz the referenced element can be outside of the instance document.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<!--*** The root element ***-->
	<xs:element name="xAL">
		<xs:annotation>
			<xs:documentation>Root element for a list of addresses</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressDetails" maxOccurs="unbounded"/>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<!--*** Reused complex types ***-->
	<xs:complexType name="AddressDetails">
		<xs:sequence>
			<xs:element ref="AddressLines" minOccurs="0"/>
			<xs:element ref="Country" minOccurs="0"/>
			<xs:element ref="AdministrativeArea" minOccurs="0"/>
			<xs:element ref="Locality" minOccurs="0"/>
			<xs:element ref="Thoroughfare" minOccurs="0"/>
			<xs:element ref="Premise" minOccurs="0"/>
			<xs:element ref="Postal" minOccurs="0"/>
			<xs:element ref="Geospatial" minOccurs="0"/>
			<xs:element ref="Identifiers" minOccurs="0"/>
			<!--
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
			-->
		</xs:sequence>
		<xs:attribute name="AddressType" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Type of address. Example: Postal, residential,business, primary, secondary, etc</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="CurrentStatus" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Moved, Living, Investment, Deceased, etc..</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="ValidFrom" type="xs:dateTime">
			<xs:annotation>
				<xs:documentation>Start Date of the validity of address</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="ValidTo" type="xs:dateTime">
			<xs:annotation>
				<xs:documentation>End date of the validity of address</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="Usage" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Communication, Contact, etc.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="AddressDetailsKey" type="xNLb:guid">
			<xs:annotation>
				<xs:documentation>Key identifier for the element for not reinforced references from other elements. Not required to be unique for the document to be valid, but application may get confused if not unique. Extend this schema adding unique contraint if needed.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="ComplementWith" type="xNLb:guids">
			<xs:annotation>
				<xs:documentation>All direct child elements missing from this AddressDetails element
are to be inserted from the referenced AddressDetails elements.
If the child element exists it cannot be replaced or modified.
Process in the specified order.
Once added an element cannot be replaced or modified.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:anyAttribute namespace="##other"/>
	</xs:complexType>
	<xs:complexType name="AdministrativeAreaType">
		<xs:sequence>
			<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation> Name of the administrative area. eg. MI in USA, NSW in Australia</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="SubAdministrativeArea" type="AdministrativeAreaType" minOccurs="0">
				<xs:annotation>
					<xs:documentation> Specification of a sub-administrative area. An example of a sub-administrative areas is a county. There are two places where the name of an administrative 
area can be specified and in this case, one becomes sub-administrative area.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element ref="Identifier" minOccurs="0" maxOccurs="unbounded"/>
			<!--
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
			-->
		</xs:sequence>
		<xs:attribute name="Type" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Province or State or County or Kanton, etc</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="UsageType" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Postal or Political - Sometimes locations must be distinguished between postal system, and physical locations as defined by a political system</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="Indicator" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Erode (Dist) where (Dist) is the Indicator</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attributeGroup ref="grAddressDetailsKeyRef"/>
		<xs:anyAttribute namespace="##other"/>
	</xs:complexType>
	<xs:complexType name="ComplexNumberType">
		<xs:sequence>
			<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="NumberPrefix" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Prefix before the number. A in A12 Archer Street</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:annotation>
						<xs:documentation>A-12 where 12 is number and A is prefix and "-" is the separator</xs:documentation>
					</xs:annotation>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="Number" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Eg.: 23 Archer street or 25/15 Zero Avenue, etc</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="NumberSuffix" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Suffix after the number. A in 12A Archer Street</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="NumberSuffixSeparator" type="xNLb:string">
								<xs:annotation>
									<xs:documentation>NEAR, ADJACENT TO, etc</xs:documentation>
									<xs:documentation>12-A where 12 is number and A is suffix and "-" is the separator</xs:documentation>
								</xs:annotation>
							</xs:attribute>
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="Type" type="xNLb:string"/>
		<xs:anyAttribute namespace="##other"/>
	</xs:complexType>
	<xs:complexType name="LocalityType">
		<xs:sequence>
			<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Name of the locality</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Number" type="ComplexNumberType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Number of the locality. Some areas are numbered. Eg. SECTOR 5 in a Suburb as in India or SOI SUKUMVIT 10 as in Thailand</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DependentLocality" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Dependent localities are Districts within cities/towns, locality divisions, postal 
divisions of cities, suburbs, etc. DependentLocality is a recursive element, but no nesting deeper than two exists (Locality-DependentLocality-DependentLocality).</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="LocalityType">
							<xs:attribute name="Connector">
								<xs:annotation>
									<xs:documentation>"VIA" as in Hill Top VIA Parish where Parish is a locality and Hill Top is a dependent locality</xs:documentation>
								</xs:annotation>
							</xs:attribute>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
			<xs:element ref="Identifier" minOccurs="0" maxOccurs="unbounded"/>
			<!--
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
			-->
		</xs:sequence>
		<xs:attribute name="Type" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Possible values not limited to: City, IndustrialEstate, etc</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="UsageType" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Postal or Political - Sometimes locations must be distinguished between postal system, and physical locations as defined by a political system</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="Indicator" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Erode (Dist) where (Dist) is the Indicator</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attributeGroup ref="grAddressDetailsKeyRef"/>
		<xs:anyAttribute namespace="##other"/>
	</xs:complexType>
	<xs:complexType name="NameType">
		<xs:simpleContent>
			<xs:extension base="xNLb:string">
				<xs:attribute name="Type" type="xNLb:string">
					<xs:annotation>
						<xs:documentation>E.g. former name, official, unofficial, common use, etc.</xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attributeGroup ref="grFormatting"/>
				<xs:anyAttribute namespace="##other"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="NumberRangeType">
		<xs:sequence>
			<xs:element name="From" type="ComplexNumberType">
				<xs:annotation>
					<xs:documentation>Start number details of the premise number range</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="To" type="ComplexNumberType">
				<xs:annotation>
					<xs:documentation>End number details of the premise number range</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="RangeType" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>Eg. Odd or even number range</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="Type" type="xNLb:string"/>
		<xs:attributeGroup ref="grFormatting"/>
		<xs:anyAttribute namespace="##other"/>
	</xs:complexType>
	<xs:complexType name="PremiseType">
		<xs:sequence>
			<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="BuildingName" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Specification of the name of a building.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="Location" minOccurs="0">
				<xs:annotation>
					<xs:documentation>LOBBY, BASEMENT, GROUND FLOOR, etc...</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Specification of the name of the premise (house, building, park, farm, etc). A premise name is specified when the premise cannot be addressed using a street name plus premise (house) number.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:choice minOccurs="0">
				<xs:element name="Number" type="ComplexNumberType" maxOccurs="unbounded"/>
				<xs:element name="NumberRange" type="NumberRangeType">
					<xs:annotation>
						<xs:documentation>Specification for defining the premise number range. Some premises have number as Building C1-C7</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:choice>
			<xs:element name="RelativeToPremise" type="PremiseType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Specification of another premise in relation to the parent Premise or Subpremise element.
E.g. "adjacent to" The Karori Shopping Mall, where the shopping mall is the relative premise.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="SubPremise" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Specification of a single sub-premise. Examples of sub-premises are apartments and suites. Each sub-premise should be uniquely identifiable.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="PremiseType">
							<xs:attribute name="PremiseDependencyType" type="xNLb:string">
								<xs:annotation>
									<xs:documentation>NEAR, ADJACENT TO, etc</xs:documentation>
								</xs:annotation>
							</xs:attribute>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
			<xs:element ref="Identifier" minOccurs="0" maxOccurs="unbounded"/>
			<!--
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
			-->
		</xs:sequence>
		<xs:attribute name="Type" type="xNLb:string">
			<xs:annotation>
				<xs:documentation>COMPLEXE in COMPLEX DES JARDINS, A building, station, etc</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attributeGroup ref="grAddressDetailsKeyRef"/>
	</xs:complexType>
	<xs:complexType name="ThoroughfareType">
		<xs:sequence>
			<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="LeadingType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Appears before the thoroughfare name. Ed. Spanish: Avenida Aurora, where Avenida is the leading type / French: Rue Moliere, where Rue is the leading type.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Specification of the name of a Thoroughfare (also dependant street name): street name, canal name, etc.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:choice minOccurs="0" maxOccurs="unbounded">
				<xs:element name="Number" type="ComplexNumberType"/>
				<xs:element name="NumberRange" type="NumberRangeType">
					<xs:annotation>
						<xs:documentation>A container to represent a range of numbers (from x thru y)for a thoroughfare. eg. 1-2 Albert Av</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:choice>
			<xs:element name="Direction" minOccurs="0">
				<xs:annotation>
					<xs:documentation>North Baker Street, where North is the pre-direction.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="TrailingType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Appears after the thoroughfare name. Ed. British: Baker Lane, where Lane is the trailing type.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xNLb:string">
							<xs:attribute name="Type" type="xNLb:string"/>
							<xs:attributeGroup ref="grFormatting"/>
							<xs:anyAttribute namespace="##other"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="DependentThoroughfare" minOccurs="0">
				<xs:annotation>
					<xs:documentation>DependentThroughfare is related to a street; occurs in GB, IE, ES, PT</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="ThoroughfareType">
							<xs:attribute name="DependentThoroughfareIndicator" type="xNLb:string">
								<xs:annotation>
									<xs:documentation>Corner of, Intersection of</xs:documentation>
								</xs:annotation>
							</xs:attribute>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
			<xs:element ref="Identifier" minOccurs="0" maxOccurs="unbounded"/>
			<!--
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
			-->
		</xs:sequence>
		<xs:attribute name="Type" type="xNLb:string"/>
		<xs:attributeGroup ref="grAddressDetailsKeyRef"/>
		<xs:anyAttribute namespace="##other"/>
	</xs:complexType>
	<!--*** Reused elements ***-->
	<xs:element name="AddressLine">
		<xs:annotation>
			<xs:documentation>Free format address representation. An address can have more than one line. The order of the AddressLine elements must be preserved.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xNLb:string">
					<xs:attribute name="Type" type="xNLb:string">
						<xs:annotation>
							<xs:documentation>Defines the type of address line. eg. Street, Address Line 1, etc.</xs:documentation>
						</xs:annotation>
					</xs:attribute>
					<xs:attributeGroup ref="grAddressDetailsKeyRef"/>
					<xs:attributeGroup ref="grFormatting"/>
					<xs:anyAttribute namespace="##other"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="Identifier">
		<xs:annotation>
			<xs:documentation>Address elements may have identifiers from different authorities. E.g. IDs for administrative areas or cities.
They can be used instead of or together with names and other details.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xNLb:string">
					<xs:attribute name="Type" type="xNLb:string">
						<xs:annotation>
							<xs:documentation>Defines the type of the ID. E.g. NZ Post ID or any other authority.</xs:documentation>
						</xs:annotation>
					</xs:attribute>
					<xs:attributeGroup ref="grFormatting"/>
					<xs:anyAttribute namespace="##other"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<!--*** Top level address elements ***-->
	<xs:element name="AddressLines">
		<xs:annotation>
			<xs:documentation>Container for Address lines</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" maxOccurs="unbounded"/>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="AddressDetails" type="AddressDetails">
		<xs:annotation>
			<xs:documentation>This container defines the details of the address. Can define multiple addresses including tracking address history</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="Country">
		<xs:annotation>
			<xs:documentation>Specification of a country</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Specification of the name of a country.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element ref="Identifier" minOccurs="0" maxOccurs="unbounded"/>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attributeGroup ref="grAddressDetailsKeyRef"/>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="AdministrativeArea" type="AdministrativeAreaType">
		<xs:annotation>
			<xs:documentation>Examples of administrative areas are provinces counties, special regions (such as "Rijnmond"), etc.</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="Locality" type="LocalityType">
		<xs:annotation>
			<xs:documentation>Locality is one level lower than adminisstrative area. Eg.: cities, reservations and any other built-up areas.</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="Thoroughfare" type="ThoroughfareType">
		<xs:annotation>
			<xs:documentation>Specification of a thoroughfare. A thoroughfare could be a rd, street, canal, river, etc.  Note dependentlocality in a street. For example, in some countries, a large street will 
have many subdivisions with numbers. Normally the subdivision name is the same as the road name, but with a number to identifiy it. Eg. SOI SUKUMVIT 3, SUKUMVIT RD, BANGKOK</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="Premise">
		<xs:annotation>
			<xs:documentation>Specification of a single premise, for example a house or a building. The premise as a whole has a unique premise (house) number or a premise name.  There could be more than 
one premise in a street referenced in an address. For example a building address near a major shopping centre or raiwlay station</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="PremiseType">
					<xs:anyAttribute namespace="##other"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<!--*** Special containers ***-->
	<xs:element name="Geospatial">
		<xs:annotation>
			<xs:documentation>A group of elements for geospatial information about the location.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<!--
				<xs:any namespace="nz-egov://linz/gml/xAL-gml" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Postal">
		<xs:annotation>
			<xs:documentation>A group of elements for postal purposes.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0"/>
				<xs:element ref="LargeMailUser" minOccurs="0"/>
				<xs:element ref="MailStop" minOccurs="0"/>
				<xs:element ref="PostalCode" minOccurs="0"/>
				<xs:element ref="PostalRoute" minOccurs="0"/>
				<xs:element ref="PostalServiceElements" minOccurs="0"/>
				<xs:element ref="PostBox" minOccurs="0"/>
				<xs:element ref="PostOffice" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Identifiers">
		<xs:annotation>
			<xs:documentation>A container for address identifiers that uniquely identify this particular address.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="Identifier" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<!--*** Postal elements ***-->
	<xs:element name="LargeMailUser">
		<xs:annotation>
			<xs:documentation>Specification of a large mail user address. Examples of large mail users are postal companies, companies in France with a cedex number, hospitals and airports with their own post code. Large mail user addresses do not have a street name with premise name or premise number in countries like Netherlands. But they have a POBox and street also in countries like France</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Identifier" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Specification of the identification number of a large mail user. An example are the Cedex codes in France.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xNLb:string">
								<xs:attribute name="Type" type="xNLb:string">
									<xs:annotation>
										<xs:documentation>CEDEX Code</xs:documentation>
									</xs:annotation>
								</xs:attribute>
								<xs:attribute name="Indicator" type="xNLb:string">
									<xs:annotation>
										<xs:documentation>eg. Building 429 in which Building is the Indicator</xs:documentation>
									</xs:annotation>
								</xs:attribute>
								<xs:attributeGroup ref="grFormatting"/>
								<xs:anyAttribute namespace="##other"/>
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
				<xs:element ref="xNLb:OrganisationName" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Specification of a firm, company, organization, etc. It can be specified as part of an address that contains a street or a postbox. It is therefore different from 
a large mail user address, which contains no street.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string"/>
			<xs:attributeGroup ref="grFormatting"/>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="MailStop">
		<xs:annotation>
			<xs:documentation>A MailStop is where the the mail is delivered to within a premise/subpremise/firm or a facility.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Name of the the Mail Stop. eg. MSP, MS, etc</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Number" type="ComplexNumberType" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Number of the Mail stop. eg. 123 in MS 123</xs:documentation>
					</xs:annotation>
				</xs:element>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string"/>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="PostalCode">
		<xs:annotation>
			<xs:documentation>PostalCode is the container element for either simple or complex (extended) postal codes. Type: Area Code, Postcode, etc.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Number" type="ComplexNumberType" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Specification of a postcode. The postcode is formatted according to country-specific rules. Example: SW3 0A8-1A, 600074, 2067</xs:documentation>
					</xs:annotation>
				</xs:element>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string">
				<xs:annotation>
					<xs:documentation>Area Code, Postcode, Delivery code as in NZ, etc</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="PostalRoute">
		<xs:annotation>
			<xs:documentation>A Postal van is specific for a route as in Is`rael, Rural route</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation> Name of the Postal Route</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Number" type="ComplexNumberType" minOccurs="0">
					<xs:annotation>
						<xs:documentation> Number of the Postal Route</xs:documentation>
					</xs:annotation>
				</xs:element>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string"/>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="PostalServiceElements">
		<xs:annotation>
			<xs:documentation>Postal authorities use specific postal service data to expedient delivery of mail</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string">
				<xs:annotation>
					<xs:documentation>USPS, ECMA, UN/PROLIST, etc</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="PostBox">
		<xs:annotation>
			<xs:documentation>Specification of a postbox like mail delivery point. Only a single postbox number can be specified. Examples of postboxes are POBox, free mail numbers, etc.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Number" type="ComplexNumberType">
					<xs:annotation>
						<xs:documentation>Specification of the number of a postbox</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="NumberExtension" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Some countries like USA have POBox as 12345-123</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:simpleContent>
							<xs:extension base="xNLb:string">
								<xs:attribute name="NumberExtensionSeparator" type="xNLb:string">
									<xs:annotation>
										<xs:documentation>"-" is the NumberExtensionSeparator in POBOX:12345-123</xs:documentation>
									</xs:annotation>
								</xs:attribute>
								<xs:attributeGroup ref="grFormatting"/>
								<xs:anyAttribute namespace="##other"/>
							</xs:extension>
						</xs:simpleContent>
					</xs:complexType>
				</xs:element>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string">
				<xs:annotation>
					<xs:documentation>Possible values are, not limited to: POBox and Freepost.</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attributeGroup ref="grFormatting"/>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="PostOffice">
		<xs:annotation>
			<xs:documentation>Specification of a post office. Examples are a rural post office where post is delivered and a post office containing post office boxes.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>Specification of the name of the post office. This can be a rural postoffice where post is delivered or a post office containing post office boxes.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Number" type="ComplexNumberType" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Specification of the number of the postoffice. Common in rural postoffices</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="PostTown" minOccurs="0">
					<xs:annotation>
						<xs:documentation>A post town is not the same as a locality. A post town can encompass a collection of (small) localities. It can also be a subpart of a locality. An actual post town in Norway is "Bergen".</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element ref="AddressLine" minOccurs="0" maxOccurs="unbounded"/>
							<xs:element name="Name" type="NameType" minOccurs="0" maxOccurs="unbounded">
								<xs:annotation>
									<xs:documentation>Name of the post town</xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="Suffix" minOccurs="0">
								<xs:annotation>
									<xs:documentation>GENERAL PO in MIAMI GENERAL PO</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:simpleContent>
										<xs:extension base="xNLb:string">
											<xs:attributeGroup ref="grFormatting"/>
											<xs:anyAttribute namespace="##other"/>
										</xs:extension>
									</xs:simpleContent>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
						<xs:attribute name="Type" type="xNLb:string">
							<xs:annotation>
								<xs:documentation>eg. village, town, suburb, etc</xs:documentation>
							</xs:annotation>
						</xs:attribute>
						<xs:anyAttribute namespace="##other"/>
					</xs:complexType>
				</xs:element>
				<!--
				<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				-->
			</xs:sequence>
			<xs:attribute name="Type" type="xNLb:string">
				<xs:annotation>
					<xs:documentation>Could be a Mobile Postoffice Van as in Isreal</xs:documentation>
				</xs:annotation>
			</xs:attribute>
			<xs:attributeGroup ref="grFormatting"/>
			<xs:anyAttribute namespace="##other"/>
		</xs:complexType>
	</xs:element>
</xs:schema>
