...
Add these attributes XML in the following format,
Code Block |
---|
|
<nameMappings class="properties">
<property name="postalCode" value="Location.postalCode"/>
<property name="longitude" value="Location.longitude"/>
... others
</nameMappings>
|
Now define the character size for each of the attribute you selected,
name = Attribute name
value = Number of characters
E.g.
Code Block |
---|
|
<sizeMappings class="properties">
<property name="postalCode" value="10"/>
<property name="longitude" value="10"/>
... others
</sizeMappings>
|
...
E.g.
Code Block |
---|
|
<lineByLineFormat>
<string>address1</string>
<string>address2</string>
<string>cityVillage stateProvince country postalCode</string>
<string>latitude longitude</string>
<string>startDate endDate</string>
</lineByLineFormat>
|
(Optional) You can add default values to the attributes as below,
E.g.
Code Block |
---|
|
<elementDefaults>
<property name="country" value="Kenya"/>
...
</elementDefaults>
|
...
E.g.
Regular expressions for validation;
Code Block |
---|
|
<elementRegex>
<property name="longitude" value="^(\\d{1,3}\\s)\\d\\d.(\\d{2,3})\\s*$"/>
<property name="latitude" value="^(\\d{1,3}\\s)\\d\\d.(\\d{2,3})\\s*$"/>
...
</elementRegex>
|
Input suggestions;
Code Block |
---|
|
<elementRegexFormats>
<property name="longitude" value="123 45.000"/>
<property name="latitude" value="123 45.000"/>
...
</elementRegexFormats>
|
Finally bundle all the above XMLs as shown below,
Code Block |
---|
|
<org.openmrs.layout.web.address.AddressTemplate>
<addressTemplate> <nameMappings class="properties">
<property name="postalCode" value="Location.postalCode"/>
...
</nameMappings>
<sizeMappings class="properties">
<property name="postalCode" value="10"/>
...
</sizeMappings>
<lineByLineFormat>
<string>address1</string>
<string>address2</string>
...
</lineByLineFormat>
...
...
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate>
|
For further clarification please go through the samples below,
...
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | General Address Template |
---|
|
<addressTemplate><org.openmrs.layout.web.address.AddressTemplate>
<nameMappings class="properties">
<property name="postalCode" value="Location.postalCode"/>
<property name="longitude" value="Location.longitude"/>
<property name="address2" value="Location.address2"/>
<property name="address1" value="Location.address1"/>
<property name="startDate" value="PersonAddress.startDate"/>
<property name="country" value="Location.country"/>
<property name="endDate" value="personAddress.endDate"/>
<property name="stateProvince" value="Location.stateProvince"/>
<property name="latitude" value="Location.latitude"/>
<property name="cityVillage" value="Location.cityVillage"/>
</nameMappings>
<sizeMappings class="properties">
<property name="postalCode" value="10"/>
<property name="longitude" value="10"/>
<property name="address2" value="40"/>
<property name="address1" value="40"/>
<property name="startDate" value="10"/>
<property name="country" value="10"/>
<property name="endDate" value="10"/>
<property name="stateProvince" value="10"/>
<property name="latitude" value="10"/>
<property name="cityVillage" value="10"/>
</sizeMappings>
<lineByLineFormat>
<string>address1</string>
<string>address2</string>
<string>cityVillage stateProvince country postalCode</string>
<string>latitude longitude</string>
<string>startDate endDate</string>
</lineByLineFormat>
</addressTemplate> |
...
org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for Kenya |
---|
|
<org.openmrs.layout.web.address.AddressTemplate>
<addressTemplate> <nameMappings class="properties">
<property name="postalCode" value="Location.postalCode"/>
<property name="longitude" value="Location.longitude"/>
<property name="address3" value="Location.estateNearestCentre"/>
<property name="address2" value="Location.sectionHomestead"/>
<property name="address1" value="Location.address1"/>
<property name="country" value="Location.country"/>
<property name="stateProvince" value="Location.province"/>
<property name="latitude" value="Location.latitude"/>
<property name="address6" value="Location.location"/>
<property name="address5" value="Location.sublocation"/>
<property name="cityVillage" value="Location.townVillage"/>
<property name="countyDistrict" value="Location.district"/>
<property name="address4" value="Location.division"/>
</nameMappings>
<sizeMappings class="properties">
<property name="postalCode" value="6"/>
<property name="longitude" value="10"/>
<property name="address3" value="24"/>
<property name="address2" value="55"/>
<property name="address1" value="55"/>
<property name="country" value="10"/>
<property name="townshipDivision" value="24"/>
<property name="stateProvince" value="24"/>
<property name="subregion" value="24"/>
<property name="latitude" value="10"/>
<property name="region" value="24"/>
<property name="cityVillage" value="24"/>
<property name="countyDistrict" value="24"/>
</sizeMappings>
<elementDefaults class="properties">
<property name="country" value="Kenya"/>
</elementDefaults>
<elementRegex class="properties">
<property name="longitude" value="^(\\d{1,3}\\s)\\d\\d.(\\d{2,3})\\s*$"/>
<property name="latitude" value="^(\\d{1,3}\\s)\\d\\d.(\\d{2,3})\\s*$"/>
</elementRegex>
<elementRegexFormats class="properties">
<property name="longitude" value="123 45.000"/>
<property name="latitude" value="123 45.000"/>
</elementRegexFormats>
<lineByLineFormat>
<string>address1</string>
<string>address2</string>
<string>address3 cityVillage</string>
<string>address5 address6</string>
<string>address4 countyDistrict</string>
<string>stateProvince postalCode</string>
<string>latitude longitude</string>
<string>country</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for Lesotho |
---|
|
<addressTemplate><org.openmrs.layout.web.address.AddressTemplate>
<nameMappings class="properties">
<property name="countyDistrict" value="Location.district"/>
<property name="cityVillage" value="Location.village"/>
</nameMappings>
<sizeMappings class="properties">
<property name="countyDistrict" value="40"/>
<property name="cityVillage" value="40"/>
</sizeMappings>
<elementDefaults class="properties">
<property name="country" value="Lesotho"/>
</elementDefaults>
<lineByLineFormat>
<string>countyDistrict</string>
<string>cityVillage</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for Malawi |
---|
|
<org.openmrs.layout.web.address.AddressTemplate>
<addressTemplate> <nameMappings class="properties">
<property name="address3" value="Location.neighborhood"/>
<property name="stateProvince" value="Location.district"/>
<property name="address1" value="Location.address1"/>
<property name="countyDistrict" value="Location.traditionalAuthority"/>
<property name="cityVillage" value="Location.village"/>
</nameMappings>
<sizeMappings class="properties">
<property name="address3" value="20"/>
<property name="stateProvince" value="20"/>
<property name="address1" value="40"/>
<property name="countyDistrict" value="20"/>
<property name="cityVillage" value="20"/>
</sizeMappings>
<elementDefaults class="properties">
<property name="country" value="Malawi"/>
</elementDefaults>
<lineByLineFormat>
<string>address1</string>
<string>address3</string>
<string>cityVillage</string>
<string>countyDistrict</string>
<string>stateProvince</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for Rwanda |
---|
|
<org.openmrs.layout.web.address.AddressTemplate>
<addressTemplate> <nameMappings class="properties">
<property name="address3" value="Location.cell"/>
<property name="stateProvince" value="Location.province"/>
<property name="address1" value="Location.rwandanNeighborhood"/>
<property name="countyDistrict" value="Location.district"/>
<property name="cityVillage" value="Location.sector"/>
</nameMappings>
<sizeMappings class="properties">
<property name="address3" value="40"/>
<property name="stateProvince" value="40"/>
<property name="address1" value="40"/>
<property name="countyDistrict" value="40"/>
<property name="cityVillage" value="40"/>
</sizeMappings>
<elementDefaults class="properties">
<property name="country" value="Rwanda"/>
</elementDefaults>
<lineByLineFormat>
<string>stateProvince</string>
<string>countyDistrict</string>
<string>cityVillage</string>
<string>address3</string>
<string>address1</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for Spain |
---|
|
<addressTemplate><org.openmrs.layout.web.address.AddressTemplate>
<nameMappings class="properties">
<property name="address2" value="Location.address2"/>
<property name="stateProvince" value="Location.stateProvince"/>
<property name="address1" value="Location.address1"/>
<property name="longitude" value="Location.longitude"/>
<property name="postalCode" value="Location.postalCode"/>
<property name="cityVillage" value="Location.cityVillage"/>
<property name="country" value="Location.country"/>
<property name="latitude" value="Location.latitude"/>
</nameMappings>
<sizeMappings class="properties">
<property name="address2" value="40"/>
<property name="stateProvince" value="10"/>
<property name="address1" value="40"/>
<property name="longitude" value="10"/>
<property name="postalCode" value="10"/>
<property name="cityVillage" value="10"/>
<property name="country" value="10"/>
<property name="latitude" value="10"/>
</sizeMappings>
<lineByLineFormat>
<string>address1</string>
<string>address2</string>
<string>cityVillage stateProvince country postalCode</string>
<string>latitude longitude</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for Tanzania |
---|
|
<addressTemplate><org.openmrs.layout.web.address.AddressTemplate>
<nameMappings class="properties">
<property name="address6" value="Location.region"/>
<property name="address5" value="Location.ward"/>
<property name="countyDistrict" value="Location.district"/>
<property name="cityVillage" value="Location.villageStreet"/>
</nameMappings>
<sizeMappings class="properties">
<property name="address6" value="14"/>
<property name="address5" value="22"/>
<property name="countyDistrict" value="17"/>
<property name="cityVillage" value="50"/>
</sizeMappings>
<lineByLineFormat>
<string>cityVillage</string>
<string>address5</string>
<string>countyDistrict</string>
<string>address6</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Code Block |
---|
controls | true |
---|
language | xml |
---|
title | Address Template for USA |
---|
|
<org.openmrs.layout.web.address.AddressTemplate>
<addressTemplate> <nameMappings class="properties">
<property name="address2" value="Location.address2"/>
<property name="stateProvince" value="Location.state"/>
<property name="address1" value="Location.address1"/>
<property name="postalCode" value="Location.zipCode"/>
<property name="cityVillage" value="Location.city"/>
</nameMappings>
<sizeMappings class="properties">
<property name="address2" value="50"/>
<property name="stateProvince" value="2"/>
<property name="address1" value="50"/>
<property name="postalCode" value="10"/>
<property name="cityVillage" value="20"/>
</sizeMappings>
<elementDefaults class="properties">
<property name="country" value="USA"/>
</elementDefaults>
<lineByLineFormat>
<string>address1</string>
<string>address2</string>
<string>cityVillage stateProvince postalCode</string>
</lineByLineFormat>
</addressTemplate>org.openmrs.layout.web.address.AddressTemplate> |
Snippet