New feature: Address Format

Description

We suggest to have address format in LDML specification, to deal with the
cultural diversity of address. The format can be as follows:

<address>
<addressSegments>
<addressSegment type="country">
<label>Country/Region</label>
<mandatory>yes</mandatory>
</addressSegment>
<addressSegment type="state">
...
</addressSegment>
<addressSegment type="city">
...
</addressSegment>
<addressSegment type="street">
...
</addressSegment>
<addressSegment type="zip">
...
</addressSegment>
</addressSegments>
<addressOrder>stcyspzpcr</addressOrder>
<addressPattern>%st%nn%cy%nn%sp%bk%zp%nn%cr</addressPattern>
<states>
<state>Alabama</state>
<state>Alaska</state>
<state>Arizona</state>
...
</states>
</address>

Explanation of each tag:
addressSegments contain the address items that compose an address.

addressOrder is the order that an address should be displayed. For example,
"stcyspzpcr" means the sequence: street, city, state, zip code, country.

addressPattern contains the address order and other format information of an
address. For example, in en_US locale, there is a new line for most of the
address items, while in zh_CN locale, most of the address items are put together
consecutively. In the pattern "%st%nn%cy%nn%sp%bk%zp%nn%cr", 'st', 'cy', 'sp',
'zp', 'cr' are the same meaning as in addressOrder, while 'nn' means a new line
and 'bk' means a blank.

states are the states/provinces of the country. Each country has their own state
lists.

xpath

None

locale

None

Priority

minor

Assignee

Mark Davis

Reporter

TracBot

Reviewer

None

Labels

Components

None

Fix versions

None

phase

None
Configure