xNAL: xNL and xAL XML DTDs
xNAL: xNL and xAL XML DTDs From: http://www.oasis-open.org/committees/ciq/ciq.shtml
<?xml version='1.0' encoding='UTF-8' ?> <!-- xNL: eXtensible Name Language This is an XML document type definition (DTD) for defining customer name(s). Date of Creation: 1 March 2001 Copyright(c) 2000, OASIS. All Rights Reserved [http://www.oasis-open.org] Contact: Customer Information Quality Technical Committee, OASIS Version: 1.1 CHANGES FROM 1.0: May 16, 2001: - Replaced attribute Type in FirstName, FirstNameDetails, MiddleName and LastName to NameType. Included a new attribute for these elements called "Type" - Introduced a new element "AddresseeIndicator" - Removed Indicator attribute from Name, NameDetails, Person, PersonDetails - Changed attribute NameType of NameDetails to CustomerType - Introduced NameType attribute for FormerName and MaidenName - Changed Preposition Element to LastNamePrefix - Changed LastName to cater for multiplicity - Changed FirstName to cater for multiplicity - Removed fixed attribute value restriction for NameType attribute on FirstName, MiddleName and LastName - Removed PersonName element - Changed MaidenName to OtherName and made it handle multiplicity - Removed FirstNameDetails element and FirstNameExtra element and instead, use FirstName itself --> <!--===========================NAML Document==============================--> <!--The root element xNL contains the element CustomerNameDetails. All other elements are then defined within the CustomerNameDetails element. This is so multiple records can be in the one XML file. --> <!ELEMENT xNL (NameDetails+)> <!ELEMENT NameDetails (AddresseeIndicator?, (Name* | (PersonName?, Function?) | OrganisationName*), (DependencyName | DependencyNameDetails)?)> <!ATTLIST NameDetails CustomerType (Person | Organisation) #REQUIRED> <!-- Specific for name and address where the addressee is specified. eg. ATTENTION, ter attentie van (in Holland), etc --> <!ELEMENT AddresseeIndicator (#PCDATA)> <!ELEMENT Name (#PCDATA)> <!-- Person or a company --> <!-- Joint Name, free format name, etc.. --> <!ATTLIST Name NameType CDATA #IMPLIED> <!-- ORGANISATION DETAILS --> <!ELEMENT OrganisationName (#PCDATA)> <!--- Pty. Ltd, Inc, etc. --> <!ATTLIST OrganisationName Type CDATA #IMPLIED> <!-- can be legal name, trading name, former name, abbreviation, etc... --> <!ATTLIST OrganisationName NameType CDATA #IMPLIED> <!ELEMENT PersonName (PrecedingTitle*, Title*, FirstName*, MiddleName*, LastNamePrefix?, LastName*, OtherName*, FormerName*, Alias*, GenerationIdentifier*, Suffix*, GeneralSuffix?)> <!-- HIS EXCELLENCY, ESTATE OF THE LATE .......--> <!ELEMENT PrecedingTitle (#PCDATA)> <!ELEMENT Title (#PCDATA)> <!--- plural title such as MESSRS.....--> <!ATTLIST Title Type CDATA #IMPLIED> <!ELEMENT FirstName (#PCDATA)> <!-- Given Name, Christian Name, First Name, etc.. --> <!ATTLIST FirstName NameType CDATA #IMPLIED> <!-- official, unofficial, initial, etc... --> <!ATTLIST FirstName Type CDATA #IMPLIED> <!ELEMENT MiddleName (#PCDATA)> <!-- Given Name, Christian Name, First Name, etc.. --> <!ATTLIST MiddleName NameType CDATA #IMPLIED> <!-- official, unofficial, initial, etc... --> <!ATTLIST MiddleName Type CDATA #IMPLIED> <!--- DE, LA, VAN DE.... --> <!ELEMENT LastNamePrefix (#PCDATA)> <!ELEMENT LastName (#PCDATA)> <!ATTLIST LastName NameType CDATA #IMPLIED> <!-- official, unofficial, initial, etc... --> <!ATTLIST LastName Type CDATA #IMPLIED> <!ELEMENT OtherName (#PCDATA)> <!-- Maiden Name, Patronymic name, Matronymic name, etc. --> <!ATTLIST OtherName NameType CDATA #IMPLIED> <!ELEMENT FormerName (#PCDATA)> <!ATTLIST FormerName NameType CDATA #IMPLIED> <!-- Nick Name, Pet name, etc.. --> <!ELEMENT Alias (#PCDATA)> <!ATTLIST Alias Type CDATA #IMPLIED> <!-- JNR, THE THIRD, III --> <!ELEMENT GenerationIdentifier (#PCDATA)> <!-- Could be compressed initials - PhD, VC, QC --> <!ELEMENT Suffix (#PCDATA)> <!-- DECEASED, RETIRED ... --> <!ELEMENT GeneralSuffix (#PCDATA)> <!-- Managing Director, CEO, Marketing Manager, etc.. --> <!ELEMENT Function (#PCDATA)> <!-- Person-Person/Person-Organisation Relationship --> <!ELEMENT DependencyName (#PCDATA)> <!-- Care of, Wife of, etc... --> <!ATTLIST DependencyName DependencyType CDATA #IMPLIED> <!ELEMENT DependencyNameDetails (NameDetails)> <!ATTLIST DependencyNameDetails DependencyType CDATA #IMPLIED> --------------------------------------------------------------------------- <?xml version='1.0' encoding='UTF-8' ?> <!-- xAL: eXtensible Address Language This is an XML document type definition (DTD) for defining addresses. Date of Creation: 1 March 2001 Copyright(c) 2000, OASIS. All Rights Reserved [http://www.oasis-open.org] Contact: Customer Information Quality Technical Committee, OASIS http://www.oasis-open.org/committees/ciq VERSION: 1.3 ====================== VERSION HISTORY ============================================== VERSION SUMMARY (Version 1.0 to 1.1): May 10, 2001: - Added DependentLocalityNumber, Added NameType attribute for DependentLocalityName - Added TypeNumberOccurence attribute for DependentLocalityNumber - Changed StreetRange element to "StreetNumberRange" - Changed StreetNumberType to "StreetNumberPrefix" May 15, 2001: - Changed "Street" to "Thoroughfare" as a Thoroufare could be street, road, river, canal, etc. Introduced an attribute "type" for Thoroughfare. All the references to Street have been changed to Thoroughfare. May 17, 2001: - Included POBox and Thoroughfare in LargeMailUser Element May 18, 2001: - DeliveryIdentifier Element included in AddressDetails element VERSION SUMMARY (Version 1.1 to 1.2): May 21, 2001: - Included DependentLocality element under Thoroughfare element - Changed "CountryCode" element to "CountryNameCode" May 28, 2001: - Added a new attribute "Separator" to ThoroughfareNumberRange element - Added a new attribute "PremiseNumberSeparator" to SubPremiseNumber element June 14,2001: - Added an attribute "SupplementaryInfo" to the following elements: Locality, DependentLocality, Thoroughfare, DependentThoroughfare, Premise, SubPremise VERSION SUMMARY (Version 1.2 to 1.3): Sep 04, 2001: - Added an attribute NumberType for PremiseNumber and SubPremiseNumber because some premises have old and new numbers. Oct 03, 2001: - Added an attribute UsageType for AdministrativeArea, SubAdministrative Area, Locality and DependentLocality. Sometimes locations must be distinguished between postal system, and physical locations as defined by a political system November 16, 2001: - Added an attribute NumberSuffixConnector and NumberPrefixConnector for the following elements: ThoroughfareNumber, PremiseNumber, SubPremise Number, and PostOfficeBoxNumber ====================================================================================== --> <!ELEMENT xAL (AddressDetails+)> <!ELEMENT AddressDetails (DeliveryIdentifier*, (Address | AddressLines | Country | AdministrativeArea | Locality | Thoroughfare))> <!-- Track changes to customer address details AddressType -> Postal, residential,business, primary, secondary, etc CurrentStatus -> Moved, Living, Investment, Deceased, etc.. ValidFromDate -> Start Date of the validity of address ValidToDate -> End date of the validity of address Usage -> Communication, Contact, etc. --> <!ATTLIST AddressDetails AddressType CDATA #IMPLIED CurrentStatus CDATA #IMPLIED ValidFromDate CDATA #IMPLIED ValidToDate CDATA #IMPLIED Usage CDATA #IMPLIED > <!-- In some countries like USA, UK, Australia, each address is identifier with a unique number as defined by the postal authorities --> <!ELEMENT DeliveryIdentifier (#PCDATA)> <!-- Defines the type of identifier. For example, in Australia it is called as DPID - Delivery Point Identifier --> <!ATTLIST DeliveryIdentifier IdentifierType CDATA #IMPLIED> <!-- Old, new, etc.. --> <!ATTLIST DeliveryIdentifier Type CDATA #IMPLIED> <!-- The order of the AddressLine elements must be preserved--> <!ELEMENT AddressLines (AddressLine+)> <!ELEMENT Address (#PCDATA)> <!ELEMENT AddressLine (#PCDATA)> <!-- Specification of a country --> <!ELEMENT Country (AddressLines | (CountryNameCode*, CountryName*, (AdministrativeArea | Locality | Thoroughfare)*))> <!-- Specification of an administrative area. Examples of administrative areas are provinces, bundesamts, etc. There are two places where the name of an administrative area can be specified. --> <!ELEMENT AdministrativeArea (AddressLines | (AdministrativeAreaName*, SubAdministrativeArea?, (Locality | PostOffice | PostalCode)?))> <!-- Province or State or County or Kanton or Unknown--> <!ATTLIST AdministrativeArea Type CDATA #IMPLIED> <!-- Usage type : Postal or Political : Sometimes locations must be distinguished between postal system, and physical locations as defined by a political system --> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST AdministrativeArea UsageType CDATA #IMPLIED> <!ATTLIST AdministrativeArea Indicator CDATA #IMPLIED> <!-- 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. --> <!ELEMENT SubAdministrativeArea (SubAdministrativeAreaName*)> <!-- Possible values but not limited to: Province or State or County or Kanton or Unknown--> <!ATTLIST SubAdministrativeArea Type CDATA #IMPLIED> <!-- Usage type : Postal or Political : Sometimes locations must be distinguished between postal system, and physical locations as defined bya political system --> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST SubAdministrativeArea UsageType CDATA #IMPLIED> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST SubAdministrativeArea Indicator CDATA #IMPLIED> <!-- Specification of a locality. Examples of localities are cities, reservations and any other built-up areas. --> <!ELEMENT Locality (AddressLines | (LocalityName*, (PostBox | LargeMailUser | PostOffice)?, Thoroughfare?, Premise?, DependentLocality?, PostalCode?)) > <!-- Possible values not limited to: City, IndustrialEstate, Unknown --> <!ATTLIST Locality Type CDATA #IMPLIED> <!-- Usage type : Postal or Political : Sometimes locations must be distinguished between postal system, and physical locations as defined by a political system --> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST Locality UsageType CDATA #IMPLIED> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST Locality Indicator CDATA #IMPLIED> <!-- Any additional info helpful to identify the localition. eg. 3kms past CITY XXX etc. --> <!ATTLIST Locality SupplementaryInfo CDATA #IMPLIED> <!-- 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). --> <!ELEMENT DependentLocality (AddressLines | (DependentLocalityName*, DependentLocalityNumber?, (PostBox | LargeMailUser | PostOffice)?, Thoroughfare?, Premise?, DependentLocality?, PostalCode?))> <!-- City or IndustrialEstate or Unknown When in use for DependentLocality: PostalZone --> <!ATTLIST DependentLocality Type CDATA #IMPLIED> <!-- Eg. VIA as in Hill Top VIA Parish where Parish is a locality and Hill Top is a dependent locality --> <!-- Usage type : Postal or Political : Sometimes locations must be distinguished between postal system, and physical locations as defined bya political system --> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST DependentLocality UsageType CDATA #IMPLIED> <!ATTLIST DependentLocality Connector CDATA #IMPLIED> <!-- Erode (Dist) where (Dist) is the Indicator --> <!ATTLIST DependentLocality Indicator CDATA #IMPLIED> <!-- Any additional info helpful to identify the location. --> <!ATTLIST DependentLocality SupplementaryInfo CDATA #IMPLIED> <!-- Possible values not limited to: Company, Institution, Cedex, LargeUser --> <!-- 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 --> <!ELEMENT LargeMailUser (AddressLines | (LargeMailUserName*, LargeMailUserIdentifier?, BuildingName*, Department?, PostBox?, Thoroughfare?, PostalCode?))> <!ATTLIST LargeMailUser Type CDATA 'LargeUser' > <!-- Specification of a post office. Examples are a rural post office where post is delivered and a post office containing post office boxes. --> <!ELEMENT PostOffice (AddressLines | ((PostOfficeName* | PostOfficeNumber?), PostalRoute?, PostBox?, PostalCode?))> <!-- Could be a Mobile Postoffice Van as in Isreal --> <!ATTLIST PostOffice Type CDATA #IMPLIED> <!-- Kottivakkam (P.O) here (P.O) is the Indicator --> <!ATTLIST PostOffice Indicator CDATA #IMPLIED> <!-- 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. PostBoxType possible values are, not limited to: POBox and Freepost. --> <!ELEMENT PostBox (AddressLines | (PostBoxNumber, PostBoxNumberPrefix?, PostBoxNumberSuffix?, Firm?, PostalCode?))> <!ATTLIST PostBox Type CDATA #IMPLIED> <!-- LOCKED BAG NO:1234 where the Indicator is NO: and Type is LOCKED BAG --> <!ATTLIST PostBox Indicator CDATA #IMPLIED> <!-- 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 neither a street nor a postbox. --> <!ELEMENT Firm (AddressLines | (FirmName+, Department*, PostalCode?))> <!-- Firm type could be company, university, etc.. --> <!ATTLIST Firm Type CDATA #IMPLIED> <!ELEMENT Department (DepartmentName+ , PostalCode?)> <!-- School in Physics School --> <!ATTLIST Department Type CDATA #IMPLIED> <!-- 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 --> <!ELEMENT Thoroughfare (AddressLines | (ThoroughfareName*, ThoroughfarePreDirection?, ThoroughfareLeadingType?, ThoroughfareTrailingType?, (ThoroughfareNumber | ThoroughfareNumberRange)?, ThoroughfareNumberPrefix?, ThoroughfareNumberSuffix?, ThoroughfarePostDirection?, DependentThoroughfare?, (DependentLocality | Premise | Firm | PostalCode)?))> <!-- Street, Road, Canal, etc --> <!ATTLIST Thoroughfare Type CDATA #IMPLIED> <!-- Any street dependent on this Throughfare in the address --> <!ATTLIST Thoroughfare DependentThoroughfares (Yes|No) "No"> <!-- Corner of, Intersection of --> <!ATTLIST Thoroughfare DependentThoroughfaresIndicator CDATA #IMPLIED> <!-- Corner of Street1 AND Street 2 where AND is the Connector --> <!ATTLIST Thoroughfare DependentThoroughfaresConnector CDATA #IMPLIED> <!-- STS in GEORGE & ADELAIDE STS, RDS IN A & B RDS, etc. Use only when both the street types are the same --> <!ATTLIST Thoroughfare DependentThoroughfaresType CDATA #IMPLIED> <!-- Any additional info helpful to identify the location. --> <!ATTLIST Thoroughfare SupplementaryInfo CDATA #IMPLIED> <!-- DependentThroughfare is related to a street; occurs in GB, IE, ES, PT --> <!-- Corner of, Intersection are the indicators --> <!ELEMENT DependentThoroughfare (AddressLines | (ThoroughfareName*, ThoroughfarePreDirection?, ThoroughfareLeadingType?, ThoroughfareTrailingType?, ThoroughfarePostDirection?))> <!-- Street, Road, Canal, etc --> <!ATTLIST DependentThoroughfare Type CDATA #IMPLIED> <!-- Any additional info helpful to identify the location. --> <!ATTLIST DependentThoroughfare SupplementaryInfo CDATA #IMPLIED> <!-- 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 --> <!ELEMENT Premise (AddressLines | (PremiseName*, (PremiseLocation | PremiseNumber*)?, PremiseNumberPrefix?, PremiseNumberSuffix?, BuildingName*, (SubPremise* | Firm?), PostalCode?, Premise?))> <!-- COMPLEXE in COMPLEX DES JARDINS --> <!ATTLIST Premise Type CDATA #IMPLIED> <!-- STREET, PREMISE, SUBPREMISE, PARK, FARM, etc --> <!ATTLIST Premise PremiseDependency CDATA #IMPLIED> <!-- NEAR, ADJACENT TO, ..... --> <!ATTLIST Premise PremiseDependencyType CDATA #IMPLIED> <!-- DES, DE, LA, LA, DU in RUE DU BOIS. These terms connect a premise/thoroughfare type and premise/thoroughfare name. Terms may appear with names AVE DU BOIS --> <!ATTLIST Premise PremiseThoroughfareConnector CDATA #IMPLIED> <!-- Any additional info helpful to identify the location. --> <!ATTLIST Premise SupplementaryInfo CDATA #IMPLIED> <!-- Specification of a single sub-premise. Examples of sub-premises are apartments and suites. Each sub-premise should be uniquely identifiable. SubPremiseType: Specification of the name of a sub-premise type. Possible values not limited to: Suite, Appartment, Floor, Unknown.--> <!-- Multiple levels within a premise by recursively calling SubPremise Eg. Level 4, Suite 2, Block C --> <!ELEMENT SubPremise (AddressLines | (SubPremiseName*, (SubPremiseLocation | SubPremiseNumber*)?, SubPremiseNumberPrefix?, SubPremiseNumberSuffix?, BuildingName*, Firm?, PostalCode?, SubPremise?))> <!-- SubPremiseType may be Apartment, Lot, etc.--> <!ATTLIST SubPremise Type CDATA #IMPLIED> <!-- Any additional info helpful to identify the location. --> <!ATTLIST SubPremise SupplementaryInfo CDATA #IMPLIED> <!-- Specification of a postcode. The postcode is formatted according to country-specific rules. Example: SW3 0A8-1A --> <!ELEMENT PostalCodeNumber (#PCDATA)> <!-- Old Postal Code, new code, etc--> <!ATTLIST PostalCodeNumber NumberType CDATA #IMPLIED> <!-- Sub-element of the PostalCode, specification of a post town. 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". --> <!ELEMENT PostTown (PostTownName+, PostTownSuffix?)> <!ATTLIST PostTown Type CDATA #IMPLIED> <!-- Values may for example be CEDEX 16 (France)--> <!ELEMENT SortingCode (#PCDATA)> <!-- Examples are: 1234 (USA), 1G (UK), etc. --> <!ELEMENT PostalCodeNumberExtension (#PCDATA)> <!-- DeliveryPointSuffix, NewPostalCode, etc.. --> <!ATTLIST PostalCodeNumberExtension Type CDATA #IMPLIED> <!-- Specification of the name of an administrative area. Examples of administrative areas are provinces counties, special regions (such as "Rijnmond"), etc. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT AdministrativeAreaName (#PCDATA)> <!ATTLIST AdministrativeAreaName NameType CDATA #IMPLIED> <!-- Specification of the sub-administrative area name. Examples are county (Ireland) and concelho (Portugal). Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym. --> <!ELEMENT SubAdministrativeAreaName (#PCDATA)> <!ATTLIST SubAdministrativeAreaName NameType CDATA #IMPLIED> <!--#DOCUMENTATION:Specification of the name of a locality. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Vanity name, Synonym.--> <!ELEMENT LocalityName (#PCDATA)> <!ATTLIST LocalityName NameType CDATA #IMPLIED> <!-- Specification of the name of a Thoroughfare (also dependant street name). Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT ThoroughfareName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym. --> <!ATTLIST ThoroughfareName NameType CDATA #IMPLIED> <!ELEMENT ThoroughfareLeadingType (#PCDATA)> <!ELEMENT ThoroughfareTrailingType (#PCDATA)> <!ELEMENT ThoroughfareNumber (#PCDATA)> <!-- 12 Archer Street is "Single" and 12-14 Archer Street is "Range" --> <!ATTLIST ThoroughfareNumber NumberType (Single|Range) "Single"> <!-- No. in Street No.12 or "#" in Street # 12, etc.--> <!ATTLIST ThoroughfareNumber Indicator CDATA #IMPLIED> <!-- No.12 where "No." is before actual street number --> <!ATTLIST ThoroughfareNumber IndicatorOccurrence (Before|After) "After"> <!ELEMENT ThoroughfareNumberSuffix (#PCDATA)> <!-- 12-A where 12 is number and A is suffix and "-" is the connector --> <!ATTLIST ThoroughfareNumberSuffix NumberSuffixConnector CDATA #IMPLIED> <!ELEMENT ThoroughfarePreDirection (#PCDATA)> <!ELEMENT ThoroughfarePostDirection (#PCDATA)> <!-- LODGE in LODGE 5 ARCHER STREET --> <!ELEMENT ThoroughfareNumberPrefix (#PCDATA)> <!-- A-12 where 12 is number and A is prefix and "-" is the connector --> <!ATTLIST ThoroughfareNumberPrefix NumberPrefixConnector CDATA #IMPLIED> <!-- 1-3 Albert Avenue --> <!ELEMENT ThoroughfareNumberRange (ThoroughfareNumberFrom, ThoroughfareNumberTo)> <!ATTLIST ThoroughfareNumberRange Indicator CDATA #IMPLIED> <!-- "-" in 12-14 or "Thru" in 12 Thru 14 etc. --> <!ATTLIST ThoroughfareNumberRange Separator CDATA #IMPLIED> <!-- No.12-14 where "No." is before actual street number --> <!ATTLIST ThoroughfareNumberRange IndicatorOccurrence (Before|After) "After"> <!-- Odd/Even --> <!ATTLIST ThoroughfareNumberRange Type CDATA #IMPLIED> <!ELEMENT ThoroughfareNumberFrom (#PCDATA)> <!ELEMENT ThoroughfareNumberTo (#PCDATA)> <!-- Specification of the number of the postoffice. Common in rural postoffices--> <!ELEMENT PostOfficeNumber (#PCDATA)> <!-- MS in MS 62, # in MS # 12, etc. --> <!ATTLIST PostOfficeNumber Indicator CDATA #IMPLIED> <!-- MS occurs before 62 in MS 62 --> <!ATTLIST PostOfficeNumber IndicatorOccurrence (Before|After) "Before"> <!-- 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. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT PostOfficeName (#PCDATA)> <!ATTLIST PostOfficeName NameType CDATA #IMPLIED> <!-- A Postal van is specific for a route as in Is`rael --> <!ELEMENT PostalRoute ((PostalRouteName+ | PostalRouteNumber))> <!ATTLIST PostalRoute Type CDATA #IMPLIED> <!ELEMENT PostalRouteName (#PCDATA)> <!ATTLIST PostalRouteName NameType CDATA #IMPLIED> <!--Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym. --> <!ELEMENT PostalRouteNumber (#PCDATA)> <!-- Specification of the name of a building. See also the specification of the SinglePremise element. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT BuildingName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ATTLIST BuildingName NameType CDATA #IMPLIED> <!-- EGIS Building where EGIS occurs before Building --> <!ATTLIST BuildingName TypeOccurrence (Before|After) "Before"> <!-- 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. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT PremiseName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ATTLIST PremiseName NameType CDATA #IMPLIED> <!-- EGIS Building where EGIS occurs before Building, DES JARDINS occurs after COMPLEXE DES JARDINS --> <!ATTLIST PremiseName TypeOccurrence (Before|After) "Before"> <!-- Specification of the identifier of the premise (house, building, etc). Premises in a street are often uniquely identified by means of consecutive identifiers. The identifier can be a number, a letter or any combination of the two. --> <!ELEMENT PremiseNumber (#PCDATA)> <!-- No. in House No.12, # in #12, etc. --> <!ATTLIST PremiseNumber Indicator CDATA #IMPLIED> <!-- No. occurs before 12 --> <!ATTLIST PremiseNumber IndicatorOccurrence (Before|After) "Before"> <!-- 12 in BUILDING 12 occurs "after" premise type BUILDING--> <!ATTLIST PremiseNumber NumberTypeOccurrence (Before|After) "Before"> <!-- Old number, new number, official, un-official --> <!ATTLIST PremiseNumber NumberType CDATA #IMPLIED> <!-- LOBBY, BASEMENT, GROUND FLOOR, etc... --> <!ELEMENT PremiseLocation (#PCDATA)> <!ELEMENT PremiseNumberSuffix (#PCDATA)> <!-- 12-A where 12 is number and A is suffix and "-" is the connector --> <!ATTLIST PremiseNumberSuffix NumberSuffixConnector CDATA #IMPLIED> <!ELEMENT PremiseNumberPrefix (#PCDATA)> <!-- A-12 where 12 is number and A is prefix and "-" is the connector --> <!ATTLIST PremiseNumberSuffix NumberPrefixConnector CDATA #IMPLIED> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT SubPremiseName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym. --> <!ATTLIST SubPremiseName NameType CDATA #IMPLIED> <!-- EGIS Building where EGIS occurs before Building --> <!ATTLIST SubPremiseName TypeOccurrence (Before|After) "Before"> <!-- Specification of the identifier of a sub-premise. Examples of sub-premises are apartments and suites. sub-premises in a building are often uniquely identified by means of consecutive identifiers. The identifier can be a number, a letter or any combination of the two. In the latter case, the identifier includes exactly one variable (range) part, which is either a number or a single letter that is surrounded by fixed parts at the left (prefix) or the right (postfix).--> <!ELEMENT SubPremiseNumber (#PCDATA)> <!-- TH in 12TH which is a floor number, NO. in NO.1, # in APT #12, etc.--> <!ATTLIST SubPremiseNumber Indicator CDATA #IMPLIED> <!-- No. occurs before 1 in No.1, or TH occurs after 12 in 12TH --> <!ATTLIST SubPremiseNumber IndicatorOccurrence (Before|After) "Before"> <!-- 12TH occurs "before" FLOOR (a type of subpremise) in 12TH FLOOR --> <!ATTLIST SubPremiseNumber NumberTypeOccurrence (Before|After) "Before"> <!-- "/" in 12/14 Archer Street where 12 is sub-premise number and 14 is premise number --> <!ATTLIST SubPremiseNumber PremiseNumberSeparator CDATA #IMPLIED> <!-- Old number, new number, official, un-official --> <!ATTLIST SubPremiseNumber NumberType CDATA #IMPLIED> <!-- LOBBY, BASEMENT, GROUND FLOOR, etc... --> <!ELEMENT SubPremiseLocation (#PCDATA)> <!ELEMENT SubPremiseNumberSuffix (#PCDATA)> <!-- 12-A where 12 is number and A is suffix and "-" is the connector --> <!ATTLIST SubPremiseNumberSuffix NumberSuffixConnector CDATA #IMPLIED> <!ELEMENT SubPremiseNumberPrefix (#PCDATA)> <!-- A-12 where 12 is number and A is prefix and "-" is the connector --> <!ATTLIST SubPremiseNumberSuffix NumberPrefixConnector CDATA #IMPLIED> <!-- Specification of the name of a post town. 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. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT PostTownName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ATTLIST PostTownName NameType CDATA #IMPLIED> <!-- GENERAL PO in MIAMI GENERAL PO --> <!ELEMENT PostTownSuffix (#PCDATA)> <!-- Specification of the number of a postbox --> <!ELEMENT PostBoxNumber (#PCDATA)> <!ELEMENT PostBoxNumberPrefix (#PCDATA)> <!-- A-12 where 12 is number and A is prefix and "-" is the connector --> <!ATTLIST PostBoxNumberPrefix NumberPrefixConnector CDATA #IMPLIED> <!ELEMENT PostBoxNumberSuffix (#PCDATA)> <!-- 12-A where 12 is number and A is suffix and "-" is the connector --> <!ATTLIST PostBoxNumberSuffix NumberSuffixConnector CDATA #IMPLIED> <!-- Specification of the name of a large mail user. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT LargeMailUserName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym. --> <!ATTLIST LargeMailUserName NameType CDATA #IMPLIED> <!-- Specification of the name of a firm. Examples of a firm are companies and organizations. Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT FirmName (#PCDATA)> <!ATTLIST FirmName NameType CDATA #IMPLIED> <!-- Specification of the name of a department. Possible NameType values not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ELEMENT DepartmentName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym.--> <!ATTLIST DepartmentName NameType CDATA #IMPLIED> <!-- Specification of the name of a country. --> <!ELEMENT CountryName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Synonym. --> <!ATTLIST CountryName NameType CDATA #IMPLIED> <!-- Country code scheme possible values, but not limited to: iso.3166-2, iso.3166-3 for two- and three-character country codes.--> <!ELEMENT CountryNameCode (#PCDATA)> <!--Possible values, but not limited to: iso.3166-2, iso.3166-3 for country code schemes--> <!ATTLIST CountryNameCode Scheme CDATA #IMPLIED> <!-- Specification of the identification number of a large mail user. An example are the Cedex codes in France.--> <!ELEMENT LargeMailUserIdentifier (#PCDATA)> <!ATTLIST LargeMailUserIdentifier Type CDATA #IMPLIED> <!-- Building 429 in which Building is the Indicator --> <!ATTLIST LargeMailUserIdentifier Indicator CDATA #IMPLIED> <!-- PostalCode is the container element for either simple or complex (extended) postal codes. --> <!ELEMENT PostalCode (PostalCodeNumber, PostTown?, SortingCode?, PostalCodeNumberExtension?)> <!-- Area Code, Postcode, etc. --> <!ATTLIST PostalCode Type CDATA #IMPLIED> <!ELEMENT DependentLocalityName (#PCDATA)> <!-- Possible values of NameType not limited to: Official, Unique, Abbreviation, OldName, Vanity, Synonym. --> <!ATTLIST DependentLocalityName NameType CDATA #IMPLIED> <!-- some areas are numbered. Eg. SECTOR 5 in A Suburb as in India or SOI SUKUMVIT 10 as in Thailand --> <!ELEMENT DependentLocalityNumber (#PCDATA)> <!-- SECTOR occurs before 5 in SECTOR 5--> <!ATTLIST DependentLocalityNumber TypeNumberOccurrence (Before|After) "Before">
Prepared by Robin Cover for The XML Cover Pages archive.