ecad product guide - ossian smyth

104
EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 ECAD PRODUCT GUIDE Edition 1, version 7

Upload: others

Post on 05-Oct-2021

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7

ECAD PRODUCT GUIDE

Edition 1, version 7

Page 2: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7

Table of Contents

1. General Information .................................................................................................................. 3

1.1 Background .......................................................................................................................................... 3

1.2 What is an Eircode? ........................................................................................................................... 3

1.3 Who supplies Eircode? ..................................................................................................................... 4

1.4 Sources of Data ................................................................................................................................... 4

1.5 Addressing in Ireland ........................................................................................................................ 4

1.6 Eircode Structure and Presentation.............................................................................................. 6

1.7 Eircode Address Database (ECAD) ................................................................................................. 7

1.8 How Irish language is Integrated ................................................................................................21

1.9 Postal Address ...................................................................................................................................25

2. Advanced Topics ....................................................................................................................... 31

2.1 How to use Alias Information ......................................................................................................31

2.2 Spatial Data and Other Information ..........................................................................................36

2.3 Address Validation ...........................................................................................................................43

2.4 Sample ECAD Queries.....................................................................................................................46

3. Data Provision and Updates ................................................................................................. 49

3.1 ECAD ....................................................................................................................................................49

4. Appendices................................................................................................................................... 52

4.1 Appendix 1 – Physical Model for Model ECAD V0.1 .............................................................52

4.2 Appendix 2 – Lookup Tables ........................................................................................................87

4.3 Appendix 3 – Postal Address View .............................................................................................94

Contact Information ........................................................................................................................ 102

Page 3: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 1

Using the ECAD Product Guide

Introduction

This is the product guide to the Beta-Eircode Address Database (ECAD) data product. It is an

accurate representation of the data which will be within the Beta-ECAD when it is

released. This guide provides software programmers and database administrators’ information

required to incorporate ECAD data into their IT systems.

The Beta-ECAD does not contain actual Eircodes; these will be released just prior to launch in

mid 2015. It is expected that the full ECAD will be the same as this Beta-ECAD, with the

inclusion of Eircodes. The final version of the ECAD is subject to approval by Department of

Communication, Energy and Natural Resources (DCENR), this includes the following data sources

not provided by OSi and/or GeoDirectory;

a) Eircode Translation for Irish_Verification (P17,21)

b) Unverified Accuracy Level (p37) for spatial data accuracy

c) The Code of Practice for changing Eircodes

The document is structured in four sections.

1. General Information

The information in this section covers the following topics:

The structure of an Eircode

The unique challenges of addressing in Ireland

How Eircodes are assigned

Recommendation for storage and presentation

Describes the ECAD data product

Describes how Irish language is integrated into the ECAD

Describes the nature of the Postal Address in the ECAD

2. Advanced Topics

This section provides more detail on certain technical aspects of ECAD.

How to use alias information

Spatial data and other data within the ECAD

Information concerning address validation

How to perform sample ECAD queries

Page 4: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 2

3. Data Provision and Updates

This section covers the following topics:

Data supply format and options for receiving updates

Business process considerations

4. Appendices

This section contains the following Appendices:

Appendix 1 – ECAD Tables

This appendix provides a list and detailed specification of all files provided as part of the

ECAD data provision

Appendix 2 – Lookup Tables

This appendix provides details of the Address Types and other Lookup Table information

Appendix 3 – Postal Address View

This appendix provides details of how to create the Postal Address View from the ECAD

information

Page 5: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 3

1. General Information

1.1 Background

Every address in Ireland will receive its Eircode by mid 2015. Ireland will be the first country in

the world to have a public database of unique identifiers for all properties which will assist

citizens, businesses and public bodies to locate every individual address in the country.

An Eircode will identify an individual address – rural or urban - and help show exactly where it

is located. Postcodes in most other countries only identify clusters or groups of addresses. The

Eircode is much more than just a postcode. It is a smart location code for all Irish addresses.

By mid 2015, all 2.2 million addresses in the country will be directly notified of the Eircode for

their address. It is anticipated that there will be rapid take-up and quick adoption of Eircode by

the Public and businesses. At that time, all major state bodies will be using Eircode in

correspondence and in their dealings with their customers.

People and businesses will not need to change their address, they will just add the Eircode to

their current address. While the use of Eircode will not be mandatory on mail, many

organisations and businesses will start to ask people to provide their Eircode as a normal part of

doing business (e.g. to capture address details faster and more accurately, to improve delivery

accuracy).

1.2 What is an Eircode?

Eircode are location codes for Irish addresses. An Eircode will be assigned to every residential

and non-residential address in Ireland that receives post, as defined by the Universal Service

Provider for postal services in Ireland. Throughout this document the term “Postal Address”

always refers to a delivery address as defined by Irish Standard - I.S. EN 14142-1:2011 (Postal

services. Address databases), as operated by the Universal Service Provider, An Post.

One or more Eircodes are assigned per building depending on the number of unique addresses

within the building. For multi-occupancy residential premises, each individual address, e.g.

“Apartment 1” receives its own Eircode. For multi-occupancy business premises unique address

information is required, e.g. “Unit 1”, otherwise the businesses are assigned the same Eircode.

For multi-occupancy mixed use buildings Eircodes are not shared between residential and non-

residential addresses. The only exception to this rule is where the entire address is both

residential and non-residential, e.g. a farm house.

Page 6: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 4

1.3 Who supplies Eircode?

Eircode (the company), part of Capita Business Support Services (Ireland) Ltd, is the Postcode

Management Licence Holder (PMLH) and were awarded the government licence to design,

launch and manage a postcode system for Ireland. This included the design and assignment of

the postcode – now called “Eircode”.

This Eircode data is available to external organisations in two forms: a basic version Eircode

Address File (ECAF) and a richer version with more data elements Eircode Address Database

(ECAD) which is described in this document.

Software applications are available from third party suppliers who provide a variety of products

and services using Eircode data.

Find out more about the range of products and services available www.eircode.ie

1.4 Sources of Data

The source data is supplied by the following:

• Alias information: Eircode

• Unofficial Irish Translations: Foras na Gaelige

• Administrative information: Ordnance Survey Ireland

• All Other Information: An Post Geodirectory Limited, which sources information from

Ordnance Survey Ireland, the Placenames Branch (Department of Arts, Heritage and the

Gaeltacht) and the Universal Service Provider for postal services in Ireland, An Post.

1.5 Addressing in Ireland

Ireland has a number of unique challenges when it comes to addressing. Firstly, people in the

same street, townland, apartment building, etc. may write their addresses in very different ways.

This arises for reasons of; local common naming conventions, historical reasons, variations in

spelling (notably anglicised versions of Gaelic names) and vanity addressing.

An Post, the Universal Service Provider, has prompted postal users to use the addressing format

required to maximise the effectiveness and efficiency of the postal service. Their addressing

guides comply with the Universal Postal Union’s (UPU) (the United Nations body responsible for

promoting standards in the postal industry across the World) addressing guidelines. The postal

address as defined by Irish Standard - I.S. EN 14142-1:2011 (Postal services. Address databases),

as operated by the Universal Service Provider, An Post,, is the format used in the ECAD.

Page 7: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 5

However, the various ways that people record their own address may differ from the Postal

Address. The following examples of the same address and the different ways in which it can be

recorded illustrate the problem.

Example:

42 Woodbrook Glen 42 Woodbrook Glen 42 Woodbrook Glen

Diswellstown Rd Riverwood Road Carpenterstown

Clonsilla Castleknock Dublin 15

Dublin 15 Dublin 15

In section 2.1 we discuss how alias information available in the ECAD can be used to mitigate

this problem. Section 2.3 describes how the allocation of Eircodes to addresses follows a

methodology designed to optimise address verification.

Ireland has a very high level of non-unique addresses (NUA), i.e. the address does not contain a

unique building number or name. Approximately 35% of all Irish addresses are non-unique

which equates to 600,000 addresses.

The typical example of NUA addressing is where every address in a townland is the same. The

way that post is delivered is by local knowledge of postal delivery personnel of which addressee

lives in which house.

N.B. For a NUA address, it is impossible to match to a unique record in the ECAD and

assign an Eircode.

We can clearly see the issue below where four separate houses in a townland have the same

address, but a different Eircode. Knowing the address isn’t sufficient information to determine

the Eircode.

Address 1 Address 2 Address 3 Address 4

Ballinroamin Ballinroamin Ballinroamin Ballinroamin

Holycross Holycross Holycross Holycross

Tipperary Tipperary Tipperary Tipperary

A65 TF12 A65 DE34 A65 TA33 A65 HN88

Page 8: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 6

1.6 Eircode Structure and Presentation

An Eircode is a seven-character postcode consisting of two elements:

1. Three-character Routing Key

2. Four-character Unique Identifier

1.6.1 Recommendations for Storage and Presentation

An Eircode should always be stored as a single string of seven upper case characters in

IT systems, i.e. A65F4E2.

An Eircode should always be presented in upper case as two parts separated by a space,

on stationary, mail items, computer forms, etc. i.e. A65 F4E2 and never A65F4E2.

1.6.2 Routing Key

The Routing Key is the first part of an Eircode and is consistently three characters long. The

Universal Service Provider identified principal post towns through which mail is distributed and

Eircode assigned Routing Key codes to those principal post towns. The Routing Key format is

Letter-Number-Number with the single exception of D6W for the Dublin 6W postal district. The

existing Dublin Postal Districts 1 to 24 have been retained as D01 to D24. The Routing Key letter

and numbers assigned to the remainder of the 139 Routing Keys are not directly linked to

counties, towns or any other geographic boundaries. A Routing Key will be shared by many

properties in an area. Routing keys are fixed once assigned to an address and do not change.

1.6.3 Unique Identifier

The Unique Identifier is the second part of an Eircode and consistently comprises four

characters. The Unique Identifier is unique within each Routing Key, but not across Routing

Keys. Unique Identifiers are not assigned in any sequence order, nor is there any hierarchical

grouping information contained in the Unique Identifier. Unique Identifiers are fixed once

generated an Eircode, and are only retired if there is a change of building use, e.g. A Georgian

House is converted into a block of apartments.

6

Number

5

Number*

4 Alpha-

Numeric

A

Letter

F Alpha-

Numeric

E Alpha-

Numeric

2 Alpha-

Numeric

* “W” allowed for only in D6W

Routing Key Unique Identifier

Page 9: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 7

The Unique Identifier has the same allowable characters in each position, twenty five characters

in total defined from the following available list of numbers and letters:

NUMBERS: 0,1,2,3,4,5,6,7,8,9

LETTERS: A,C,D,E,F,H,K,N,P,R,T,V,W,X,Y

This provides 25 x 25 x 25 x 25 possible combinations, which allows a maximum of 390,625

Eircodes per Routing Key.

1.6.4 Character Set

The characters allowed in each position in an Eircode are as below:

Component Position Allowed Characters

Routing Key 1 A,C,D,E,F,H,K,N,P,R,T,V,W,X,Y

2 0-9

3 0-9 with the exception of W for D6W

Unique Identifier 4

0-9 and A,C,D,E,F,H,K,N,P,R,T,V,W,X,Y 5

6

7

1.7 Eircode Address Database (ECAD)

ECAD is the Eircode Address Database. It is a master database containing complete address and

Eircode information for over 2 million Irish addresses. The ECAD contains no software; the data

within it must be processed for use in IT applications.

The ECAD is comprised of a number of database tables. The tables are divided into a number of

categories based on the role they perform within the database. The categories are:

Address – Contains the information that is used to make up an address

Alias – Provides information on address alias information

Lookup – Contains lookup information that has been normalised into separate tables

Information – Holds non address information related to the Address Tables

Historical* – Provides detail of retired or changed building records and their related

Eircodes *Note: Historical Tables yet to be determined.

Page 10: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 8

The tables in the ECAD are described in more detail below (detailed table definition for each

table is available in Appendix 1.)

1.7.1 Address Tables

The following is the list of tables that contain the address information stored in the ECAD:

Address Group Address Table

Premises Tables ORGANISATION

SUB_ADDRESS_POINT

ADDRESS_POINT

BUILDINGS

Thoroughfare Tables BUILDING_GROUP

THOROUGHFARE

Locality Tables LOCALITY

POST_TOWN

COUNTY

Address POSTAL_ADDRESS

The address information stored in these tables is stored in upper case only. Address elements

always have an associated address type that is stored in the Address Type Lookup Table

described in Appendix 2.

Address

ORGANISATION

SUB_ADDRESS_POINT

ADDRESS_POINT

BUILDING

BUILDING_GROUP

THOROUGHFARE

LOCALITY

POST_TOWN

COUNTY

POSTAL_ADDRESS

Alias

ALIAS_TYPE

ORGANISATION_ALIAS

SUB_ADDRESS_POINT_ALIAS

ADDRESS_POINT_ALIAS

BUILDING_ALIAS

BUILDING_GROUP_ALIAS

THOROUGHFARE_ALIAS

LOCALITY_ALIAS

POST_TOWN_ALIAS

COUNTY_ALIAS

Lookup

ADDRESS_TYPE

DESCRIPTOR

GEOGRAPHIC

QUALIFIER

IRISH_VERFICATION

ROUTING_KEY

GEODIRECTORY_LOOKUP

Information

SPATIAL_INFO

BUILDING_INFO

ORGANISATION_INFO

ADMINISTRATIVE_INFO

Page 11: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 9

The Entity Relationship Diagram for Address Tables is shown below, and the tables are

described in the following sections.

Page 12: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 10

BUILDING

A record in the BUILDING table generally refers to a permanent physical building, however some

records may refer to other entities, e.g. a halting site bay. The BUILDING table is the central hub

of the Address Tables, defining the thoroughfare and locality elements of a building. A locality

may cross county boundaries, or a thoroughfare may cross multiple post towns, therefore the

post town or county information resides solely at the building level.

ADDRESS TYPE DESCRIPTION

Single Occupancy Residential Building

This type of building contains one residential address.

Multiple Occupancy Residential Building

This type of building contains multiple residential addresses.

Single Occupancy Non-Residential Building

This type of building contains one non-residential address (business, club or other organisation).

Multiple Occupancy Non-Residential Building

This type of building contains multiple non-residential addresses (business, club or other organisation).

Multiple Occupancy Mixed Use Building

This type of building contains multiple residential and non-residential addresses.

Buildings can also have a more specific address types such as a Hospital, School, Shopping

Centre, etc.

ADDRESS_POINT

An address point record exists for every unique address within a building. A standard residential

property will have one address point. Apartment buildings and multi-unit commercial buildings

will have one address point for every unique address within the building. Eircodes are assigned

at the address point level and reside in the ADDRESS_POINT table.

There are a number of address points that do not have an associated Eircode. This is due to the

building not receiving a direct delivery of mail by the Universal Service Provider. In these cases

mail is generally delivered centrally and distributed to each building by internal mail processes,

e.g. a University Campus. These addresses do not have a Postal Address as defined by Irish

Standard - I.S. EN 14142-1:2011 (Postal services. Address databases), as operated by the

Universal Service Provider, An Post.

Page 13: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 11

Address points can be one of the following address types:

ADDRESS TYPE DESCRIPTION

Residential Address Point This type of address point has one or more residential addresses associated with it.

Non-Residential Address Point This type of address point has one or more non-residential address (business, club or other organisation) associated with it.

Mixed Address Point This is a special case where the residential and non residential addresses in the building are essentially the same address. The typical example is a farm house on an active farm.

It is important to note that this is a special case. In general a building with both residential and non-residential addresses (e.g. an apartment over a shop) will receive two address points, one commercial and one residential, and hence two Eircodes.

Buildings can contain multiple address points of type Residential and/or Non-Residential.

SUB_ADDRESS_POINT

A sub address point is an address within a building which has no underlying address

information. This information indicates that there are multiple flats within a building without

discrete addresses (e.g. without Flat 1, Flat 2, etc. indicators). These records are inserted into the

SUB_ADDRESS_POINT table to indicate their existence. The address point associated with the

records is always of type Residential Address Point. The SUB_ADDRESS_POINT records are never

used to generate a Postal Address and can be ignored for most purposes.

ORGANISATION

The ORGANISATION table contains a record for every non-residential address in the ECAD. The

organisation name is present unless the address is vacant or the organisation name is unknown.

Page 14: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 12

BUILDING_GROUP

A building group is a collection of buildings with a collective name, located on or near the same

thoroughfare.

Building groups can be one of the following generic address types:

ADDRESS TYPE DESCRIPTION

Residential Building Group This type of building group contains buildings with residential addresses only.

Non-Residential Building Group This type of building group contains buildings with non-residential addresses (business, club or other organisation) only.

Mixed Building Group This type of building group contains buildings with residential and non-residential addresses.

Building groups can also have a more specific address type such as a Hospital, School, Shopping

Centre, etc.

THOROUGHFARE

Thoroughfares generally refer to the street, road, avenue, etc. on which a building resides. The

BUILDINGS table has a reference to both PRIMARY and SECONDARY thoroughfares (if

populated), which both references this THOROUGHFARE table.

LOCALITY

A locality refers to areas, districts, towns, etc. and is generally one of the following address types:

ADDRESS TYPE DESCRIPTION

Rural Locality This is generally a townland.

Industrial Estate Industrial Estate, Industrial Park, Business Campus, etc.

Shopping District Shopping Centre.

Housing Estate Residential Housing Estate.

Village Based on Census 2011 population < 1,500.

Town Based on Census 2011 population > 1,500.

Urban Area Wholly within a village/town/city e.g. Rathmines.

Suburban Locality This is an area that is both rural and urban, as it is both a townland, and also an area name applied to houses in a town, as the town has extended partially into the townland.

Page 15: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 13

The BUILDINGS table has a reference to PRIMARY and SECONDARY localities (if populated),

which all reference this LOCALITY table.

All records in the POST_TOWN table are duplicated in the LOCALITY table, where the

LOCALITY_ID in the LOCALITY table is equal to the POST_TOWN_ID in the POST_TOWN table.

These LOCALITY records have one of the following address types:

ADDRESS TYPE DESCRIPTION

Village Based on Census 2011 population < 1,500

Town Based on Census 2011 population > 1,500

Postal District Dublin 1 to 24

City Dublin, Cork, Limerick, Galway or Waterford

POST_TOWN

The POST_TOWN table contains a record for every post town in the ECAD (currently 139 Post

Towns). The post town is a vital element of the Postal Address, it is always populated in an

address. The official post office guide, Eolaí an Phoist1, describes post towns in the following

manner;

“A provincial postal address may include the name of a town or village several miles distant, with which the addressee has little or no connection, and, in some places, especially if this residence happens to be near a county boundary, the name of the neighbouring county instead of the county in which he actually resides. The explanation is that the main mail despatches have to be sent for more detailed sub division to certain centres known as POST TOWNS, chosen because of their accessibility and convenience.”

The POST TOWN record always has an address type of post town.

COUNTY

The COUNTY table contains a row for each of the 26 counties in Ireland.

A COUNTY record always has an address type of County.

1 Ireland. Eolaí an phoist: Post office guide. Dublin

Page 16: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 14

POSTAL_ADDRESS

The POSTAL ADDRESS Table contains a row for every Postal Address in the ECAD. It contains the

following fields:

POST_ADDRESS field

ECAD_ID

ORGANISATION_ID

ADDRESS_POINT_ID

BUILDING_ID

BUILDING_GROUP_ID

PRIMARY_THOROUGHFARE_ID

SECONDARY_THOROUGHFARE_ID

PRIMARY_LOCALITY_ID

SECONDARY_LOCALITY_ID

POST_TOWN_ID

POST_COUNTY_ID

EIRCODE

NUA

ADDR_LINE_1

ADDR_LINE_2

ADDR_LINE_3

ADDR_LINE_4

ADDR_LINE_5

ADDR_LINE_6

ADDR_LINE_7

ADDR_LINE_8

ADDR_LINE_9

IRISH_ADDR_LINE_1

IRISH_ADDR_LINE_2

IRISH_ADDR_LINE_3

IRISH_ADDR_LINE_4

IRISH_ADDR_LINE_5

IRISH_ADDR_LINE_6

IRISH_ADDR_LINE_7

IRISH_ADDR_LINE_8

IRISH_ADDR_LINE_9

ADDRESS_REFERENCE

Page 17: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 15

The individual address elements (i.e. BUILDING_ID, THOROUGHFARE_ID,etc) make up the

address lines. Some address elements are combined for an address line (e.g. Building Number

and Thoroughfare Name). Address creation rules have been applied to create Address Line 1-8

in both English and Irish. The final line in every Postal Address in the table is the Eircode. For

inbound international mail the country name IRELAND should be appended as the last line of

the Postal Address.

The NUA field contains a Y value when the address is a non-unique address, and N when it is a

unique address.

The ADDRESS_REFERENCE is the An Post GeoDirectory address reference identifier used by the

Universal Service Provider.

1.7.2 Lookup Tables

The Lookup Tables are used to tie together the Address Tables. They have been created when

the Address Tables were normalised. The Lookup Tables are as follows:

ADDRESS_TYPE

DESCRIPTOR

GEOGRAPHIC

QUALIFIER

IRISH_VERIFICATION

ROUTING_KEY

GEODIRECTORY_LOOKUP

ADDRESS_TYPE

This table contains one record for each Address Type. Address Types categorise addresses. The

address type is a field in every Address Table and thus allows for the addresses to be

consistently queried.

For example a BUILDING, a BUILDING GROUP or a LOCALITY may all have an Address Type of

“Industrial Estate”. The Address Type of a BUILDING has a bearing on what other information is

available for an address. For example if a building has an address type of SINGLE OCCUPANCY

RESIDENTIAL BUILDING this means that there will be no entries in the ORGANISATION table for

that building. All Address Tables contain an ADDRESS_TYPE_ID that references the

ADDRESS_TYPE table.

For a comprehensive list please see Appendix 2.

Page 18: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 16

DESCRIPTOR

This table contains one record for each Descriptor. A Descriptor is the part of a thoroughfare or

building group address such as the examples below.

NAME IRISH NAME

AVENUE ASCAILL

GROVE GARRÁN

STREET SRÁID

ROAD BÓTHAR

For a comprehensive list please see Appendix 2.

GEOGRAPHIC

This file contains one record for each Geographic. A geographic address element is North, South,

East or West which can be appended or prepended to an address element.

Name Irish Name

EAST THOIR

NORTH THUAIDH

SOUTH THEAS

WEST THIAR

QUALIFIER

This table contains one record for each Qualifier. Qualifiers are appended of prepended to

address elements, and are listed in the table below.

NAME IRISH NAME

EXTENSION SÍNEADH

GREAT MHÓR

LITTLE BHEAG

LOWER ÍOCHTARACH

MIDDLE LÁIR

UPPER UACHTARACH

For the BUILDING_GROUP, THOROUGHFARE and LOCALITY tables the DESCRIPTOR_ID,

QUALIFIER_ID and GEOGRAPHIC_ID fields are deconstructed from the NAME and NAME_IRISH

fields. The tables also contain a variation of the following two fields (THOROUGHFARES table

used as an example).

Page 19: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 17

THOROUGHFARE_NAME

The element of NAME that remains after Descriptor, Qualifier and Geographic elements have

been removed.

THOROUGHFARE_NAME_IRISH

Same as THOROUGHFARE_NAME but using NAME_IRISH.

THOROUGHFARE EXAMPLE 1 EXAMPLE 2

NAME ABBEY STREET MIDDLE O'CONNELL STREET LOWER

NAME_IRISH SRÁID NA MAINISTREACH LÁIR

SRÁID UÍ CHONAILL ÍOCHTARACH

THOROUGHFARE_NAME ABBEY O'CONNELL

THOROUGHFARE_NAME_IRISH SRÁID NA MAINISTREACH LÁIR

SRÁID UÍ CHONAILL ÍOCHTARACH

As the NAME field contains these elements in a variety of order permutations, it is not possible

to re-create the NAME or NAME_IRISH fields in their original order.

IRISH_VERIFICATION

All Address Tables contain a field called NAME, this contains the English language version for

the address element. Each table also contains a NAME_IRISH field which contains the equivalent

address element in Irish.

Each Address Table also contains an IRISH_VERIFICATION_ID field. This field denotes the

validation status of the Irish language address element. This information is stored in the

IRISH_VERIFICATION table as displayed below:

IRISH_VERIFICATION_ID VALIDATION_LIFECYCLE

0 NO IRISH - ENGLISH USED

1 EIRCODE TRANSLATION2

2 UNOFFICIAL TRANSLATION

3 OFFICIAL TRANSLATION

2 In a small number of cases Eircode has generated a translation without recourse to official sources. These generally

apply to simple lookup table entries (e.g. East, West, etc.). Eircode plan to have these translations verified, but do not

expect the values to change.

Page 20: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 18

The Irish Validation lifecycle gives the developer the option of choosing the Irish language

version where the validation level is appropriately high. Official Translation of the address is

provided by FIONTAR in collaboration with The Placenames Branch (Department of Arts,

Heritage and the Gaeltacht). Unofficial translations are provided by Conradh na Gaelige and

Foras na Gaelige.

ROUTING_KEY

The Routing Key is the first part of an Eircode and is consistently three characters long. Routing

Keys are defined by the Universal Service Provider for postal services which reflect the sortation

requirements of the mail distribution network. The Routing Key format is Letter-Number-

Number with the single exception of D6W for the Dublin 6W postal district. The existing Dublin

Postal Districts 1 to 24 have been retained as D01 to D24. The Routing Key letters and number

assigned to the remainder of the 139 Routing Keys are not directly linked to counties, towns or

any other geographic boundaries. A Routing Key will be shared by many properties in an area.

Routing keys are fixed once assigned to an Eircode and do not change.

The BUILDING table contains a ROUTING_KEY_ID column that links to the ROUTING_KEY table

which contains 139 Routing Key Names (e.g. D01, Y14, etc.).

GEODIRECTORY_LOOKUP

For existing users of GeoDirectory, this table provides a lookup to determine the relevant

ECAD_ID for a GeoDirectory ID, as illustrated by the sample rows below.

ECAD_ID GEO_ID ECAD_TABLE GEO_TABLE

1000548185 36650520 BUILDING BUILDINGS

1000548186 36650521 BUILDING BUILDINGS

1000548187 36650522 BUILDING BUILDINGS

1000548188 36650523 BUILDING BUILDINGS

1.7.3 Information Tables

The information tables provide extra information that adds value to the addresses.

INFORMATION TABLES

SPATIAL_INFO

BUILDING_INFO

ORGANISATION_INFO

ADMINISTRATIVE_INFO

Page 21: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 19

SPATIAL_INFO

The SPATIAL_INFO table contains spatial data. This data includes map coordinates of buildings

and also the extents of non-buildings, e.g. Town, Thoroughfare. The spatial information is

provided in a number of coordinate formats. The SPATIAL_INFO table is described in detail in

section 2.2.1 of this document. This table links to all Address Tables at BUILDING level and

below.

BUILDING_INFO

The BUILDING_INFO table contains extra information about buildings such as if it is under

construction or vacant. This links to the BUILDING table.

ORGANISATION_INFO

The ORGANISATION_INFO table contains extra information about an Organisation. The

ORGANISATION_INFO is explained in detail in section 2.2.3 of this document.

ADMINISTRATIVE_INFO

The ADMINISTRATIVE_INFO table contains information that is useful from a governmental and

local administration perspective. It includes census and other boundary information. The

ADMINISTRATIVE_INFO is explained in detail in section 2.2.4 of this document.

These tables are described in detail in section 2.2.

1.7.4 Alias Tables

There is an alias table for each of the Address Tables as listed in the table below:

ADDRESS GROUP ALIAS TABLE

Premises Tables ORGANISATION_ALIAS

ADDRESS_POINT_ALIAS

BUILDINGS_ALIAS

Thoroughfare Tables BUILDING_GROUP_ALIAS

THOROUGHFARE_ALIAS

Locality Tables LOCALITY_ALIAS

POST_TOWN_ALIAS

COUNTY_ALIAS

Page 22: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 20

Aliases fall into the following categories:

1. Common Misspelling

Either English or Irish common misspellings of an address element. The address element

should be corrected to the proper spelling.

2. Alternative Spelling

Alternative spelling of an address element. The address element does not need to be corrected

to the proper spelling.

3. Alternative Format

The address is commonly written in a different format to the Postal Address.

4. Alternative Format and Spelling

The address element has an alternative spelling, but only when written in a different format to

the Postal Address.

For a more in depth description of Aliases see section 2.1 How to use Alias Information.

1.7.5 Historic Tables

Historic tables provide detail of retired or changed ECAD records. Historic tables have yet to be

defined, but they will cater for the following business processes:

• Changed Address Elements

If a thoroughfare, building name, etc. previously had a different name to its current

name, the historic tables will store the previous name and date of change. The previous

name will also be stored in the relevant alias table if appropriate.

• Retired Address Elements

If a thoroughfare, locality, etc. no longer exists, the historic tables will store the address

element and date of retirement.

• Retired Eircodes

When buildings are demolished, or if a building is changed from multi-unit to a single

unit, then associated Eircodes are retired. The historic tables will store the retired

Eircodes, when they were retired, and a link to the new building where appropriate. For

demolished buildings the coordinates of the old building location and its full address

will be stored.

Page 23: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 21

• Changed Eircodes

There may be exceptional circumstances that require an Eircode to be changed. If this

occurs it will most likely be an address in a multi-unit building that previously shared its

Eircode with other addresses being given its own Eircode as underlying address data

issues are corrected. It is Eircode’s policy not to change an Eircode once issued, however,

if an issue is raised regarding an Eircode it will be reviewed against the Code of Practice.

The historic tables will store the previous version of the Eircode, the date of change, and

the reason for the change.

Note to GeoDirectory users:

If a correction is made to two buildings in such a way as they swap their unique address

information, e.g. No. 9 and No 10 are swapped, then the Eircode associated with the existing

address is not changed, the attributes (e.g. coordinates) of the buildings are swapped. This is to

ensure that matching a unique address to ECAD always returns the same Eircode. If the

GeoDirectory solution to the data issue involved an alternative method of a change to the

Building Number labels, then this will result in a change to the ADDRESS_REFERENCE for an

Eircode address.

1.8 How Irish language is Integrated

The ECAD is bilingual by design. Every ECAD table that contains address fields has both English

and Irish language versions side by side.

All Address Tables contain a field called NAME, this contains the English language version for

the address element. Each table also contains a NAME_IRISH field which contains the equivalent

address element in Irish.

Each Address Table contains an IRISH_VERIFICATION_ID field. This field denotes the validation

status of the Irish language address element. This information is stored in the

IRISH_VERIFICATION table as displayed below:

IRISH_VERIFICATION_ID VALIDATION_LIFECYCLE

0 NO IRISH - ENGLISH USED

1 EIRCODE TRANSLATION3

2 UNOFFICIAL TRANSLATION

3 OFFICIAL TRANSLATION

3 In a small number of cases Eircode has generated a translation without recourse to official sources. These generally

apply to simple Lookup Table entries (e.g. East, West, etc.). Eircode plan to have these translations verified, but do not

expect the values to change.

Page 24: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 22

The Validation Lifecycle gives users the option of choosing the Irish language version suitable

for their purpose. Unofficial translations are provided by Conradh na Gaelige and Foras na

Gaelige, and are replaced with official translations when they become available.

The Irish Postal Address currently only contains the Official Translation of the address, and if that

is not available it uses the English version of the address.

The English and Irish versions of address elements are displayed per Address Table below.

ADDRESS TABLE NAME IRISH LANGUAGE

ORGANISATION NAME SUB_ADDRESS_NAME DEPARTMENT

NAME_IRISH SUB_ADDRESS_NAME_IRISH DEPARTMENT_IRISH

SUB_ADDRESS_POINT NAME NAME_IRISH

ADDRESS_POINT NAME NAME_IRISH

BUILDING NAME NAME_IRISH

BUILDING_GROUP NAME BUILDING_GROUP_NAME

NAME_IRISH BUILDING_GROUP_NAME_IRISH

THOROUGHFARE NAME THOROUGHFARE_NAME

NAME_IRISH THOROUGHFARE_NAME_IRISH

LOCALITY NAME LOCALITY_NAME

NAME_IRISH LOCALITY_NAME_IRISH

POST_TOWN NAME NAME_IRISH

COUNTY NAME NAME_IRISH

Irish translations are also available in the various Lookup Tables.

LOOKUP TABLE ENGLISH LANGUAGE IRISH LANGUAGE

QUALIFIER NAME NAME_IRISH

DESCRIPTOR NAME NAME_IRISH

GEOGRAPHIC NAME NAME_IRISH

Address Tables store QUALIFIER_ID, DESCRIPTOR_ID or GEOGRAPHIC_ID as a key to the

equivalent Lookup Table. This means that the English and Irish equivalent for each of the values

is equally available and is consistently stored.

For example, the thoroughfare OAKWOOD STREET UPPER would be stored in the

THOROUGHFARE Table as:

Page 25: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 23

THOROUGHFARE Fictional Example

NAME OAKWOOD STREET UPPER

NAME_IRISH SRÁID CHOILL NA DARACH UACHTARACH

QUALIFIER_ID 123

GEOGRAPHIC_ID NULL

DESCRIPTOR_ID 777

THOROUGHFARE_NAME OAKWOOD

THOROUGHFARE_NAME_IRISH CHOILL NA DARACH

The QUALIFIER_ID in the THOROUGHFARE table links to the Qualifier record that contains the

English and Irish version of the Qualifier.

QUALIFIER Fictional Example

QUALIFIER_ID 123

NAME UPPER

NAME_IRISH UACHTARACH

IRISH_VERIFICATION_ID 1

The DESCRIPTOR_ID in the THOROUGHFARE table links to the Descriptor record that contains the

English and Irish version of the Descriptor.

DESCRIPTOR Fictional Example

DESCRIPTOR_ID 777

NAME STREET

NAME_IRISH SRÁID

IRISH_VERIFICATION_ID 777

Page 26: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 24

This allows Irish versions of addresses to be searched in the exact same manner as English

versions of addresses. For Example:

THOROUGHFARE EXAMPLE 1 EXAMPLE 2

NAME MARY STREET NORTH O'CONNELL STREET LOWER

NAME_IRISH SRÁID MHUIRE THUAIDH SRÁID UÍ CHONAILL ÍOCHTARACH

THOROUGHFARE_NAME MARY O'CONNELL

THOROUGHFARE_NAME_IRISH MHUIRE UÍ CHONAILL

QUALIFIER_ID 0 14

DESCRIPTOR_ID 194 194

GEOGRAPHIC_ID 2 0

The two thoroughfares above have their full name stored in both English and Irish. The

descriptor, qualifier and geographic is removed from the full name and the remainder is stored

in THOROUGHFARE_NAME and THOROUGHFARE_NAME_IRISH.

A link to the DESCRIPTOR (STREET, ROAD, AVENUE etc.) table is stored with the thoroughfare.

This link allows the Irish and English to be equally searchable.

DESCRIPTOR EXAMPLE 1 EXAMPLE 2

DESCRIPTOR_ID 194 194

NAME STREET STREET

NAME_IRISH SRÁID SRÁID

A link to the QUALIFIER (LITTLE, MIDDLE, GREAT, etc.) is stored with the thoroughfare. This link

allows the Irish and English to be equally searchable.

QUALIFIER EXAMPLE 1 EXAMPLE 2

QUALIFIER_ID 13

NAME LOWER

NAME_IRISH ÍOCHTARACH

Page 27: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 25

A link to the GEOGRAPHIC (NORTH, SOUTH, EAST, WEST) is stored with the thoroughfare. This

link allows the Irish and English to be equally searchable.

GEOGRAPHIC EXAMPLE 1 EXAMPLE 2

GEOGRAPHIC_ID 2

NAME NORTH

NAME_IRISH THUAIDH

This model allows the main elements of the thoroughfare to be stored and searched efficiently.

It also removes common items to separate tables to improve data accuracy and search

capabilities.

1.9 Postal Address

An Post, the Universal Service Provider, has prompted postal users to use the addressing format

required to maximise the effectiveness and efficiency of the postal service. Their addressing

guides comply with the Universal Postal Union’s (UPU) (the United Nations body responsible for

promoting standards in the postal industry across the World) addressing guidelines. The postal

address as defined by Irish Standard - I.S. EN 14142-1:2011 (Postal services. Address databases),

as operated by the Universal Service Provider, An Post., is the format used in the ECAD.

The Postal Address is made up of a number of parts as outlined in the table below.

Address Parts

Department

Organisation

Sub Building Name (e.g. ‘Flat 1’)

Building Name (e.g. ‘Rose Cottage’)

Building Number (e.g. 22)

Building Group (e.g. ‘Marian Terrace’)

Primary Thoroughfare (e.g. ‘Griffith Road’)

Secondary Thoroughfare (e.g. Navan Road’)

Primary Locality (e.g. ‘Cookstown Industrial Estate’)

Secondary Locality (e.g. ‘Manorhamilton’)

Post Town (e.g. ‘Dublin 14’)

Post County (e.g. ‘Cork’)

Eircode (e.g. ‘A65R2AF’)

Page 28: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 26

There are twelve possible address parts but no Postal Address contains more than eight address

lines. A set of rules is applied to the twelve possible address parts to construct an address with a

maximum of eight lines plus a line for the Eircode. The results are stored in the

POSTAL_ADDRESS table as described in section 1.7.1.

1.9.1 Address Elements & Rules for Construction

Department

The department or division within an organisation. If the department element exists, then the

organisation must also exist.

Field in ECAD Fictional Example

Department ACCOUNTS DEPARTMENT

Organisation ENERGY FOR YOU

Sub Building UNIT 8

Building MIDDLETON CENTRE

Primary Thoroughfare MAIN STREET

Post Town TRIM

Post County MEATH

Postcode T22 FNT4

Organisation

The name of an organisation, commercial or non-commercial.

Field in ECAF Fictional Example

Organisation OAK TREE LIMITED

Primary Thoroughfare SAINT ANDREW STREET

Post Town DUBLIN 1

Postcode T22 FNT4

Page 29: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 27

Sub-Building

The sub-building refers to an apartment, flat or unit within a building.

Field in ECAF Fictional Example

Sub Building APARTMENT 114

Building THE MIDDLETON

Primary Thoroughfare MAIN STREET

Post Town TRIM

Post County MEATH

Postcode T22 FNT4

Building Name

The name given to the building. Prepended by sub building, if any, when the sub building does

not appear on a line to itself. The building name is omitted if it is the same as either the

Organisation or Building Group.

Building Number

A number associated with the whole building. The building number may have a numeric and

an alphanumeric component, which are concatenated e.g. 2A, or alternatively will have a simple

building number or a complex building number. The building number always relates to the

whole building and not a sub-unit within it.

A complex building number may be one of the following:

Dual

Two number separated by '/' e.g. 63/64 = 63, 64

Sequence

An odd or even sequence of numbers with lower and upper bound separated by an

underscore '_' e.g. 1_5 = 1,3,5 and 2_6 = 2,4,6

Range

A range of consecutive numbers with lower and upper bound separated by a dash '-' e.g.

63-66 = 63, 64, 56, 66

The building number never appears on a line by itself and can prepend Building Group, Primary

Thoroughfare or Primary Locality.

Page 30: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 28

THOROUGHFARE ELEMENTS

Building Groups

A collection of buildings with a collective name, located on or near the same thoroughfare. The

buildings in a Building Group, if numbered, are numbered within the Building Group, not within

the thoroughfare. Examples include universities, hospitals, some industrial estates, some

terraces, shopping centres, apartment complexes etc.

It may be appended to a building number, if any, otherwise it is output on a line by itself. It is

omitted if the same as organisation.

Primary Thoroughfare

The name of the thoroughfare on which premises are located. It may appear on a line by itself

or be appended to either a sub building or building number.

Addresses with thoroughfares can sometimes have the thoroughfare excluded where a Building

Group exists, such as a Retail Centre or Business Park, and the thoroughfare is not part of the

Postal Address.

Secondary thoroughfare

It is never present without a primary thoroughfare. The primary thoroughfare is dependent on

the secondary thoroughfare and appears before the secondary thoroughfare in any address.

Secondary thoroughfare are generally used to assist locating a primary thoroughfare. For

example:

ADDRESS Fictional Example

Primary Thoroughfare LOVE LANE EAST

Secondary Thoroughfare MOUNT STREET LOWER

Post Town DUBLIN 2

This example shows that LOVE LANE EAST is a small thoroughfare that can be found off MOUNT

STREET LOWER in DUBLIN 2.

LOCALITY ELEMENTS

Locality elements are:

Primary Locality

Secondary Locality

Post Town

County

Page 31: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 29

The first two locality elements refer to areas, districts, industrial estates, towns, etc. For a

complete list of address types see Appendix 2.

For example:

ADDRESS Fictional Example

Primary Locality KILLARAINY

Secondary Locality MOYCULLEN

The primary locality refers to the specific place the address is. The secondary locality helps

identify where the primary locality is located.

Primary Locality

The name of the locality in which the address resides.

In urban areas, the primary locality can be required to distinguish between two thoroughfares of

the same name in the same district or town. Industrial estates with named thoroughfares are

also held as localities. In rural areas the primary locality is generally a townland name.

Secondary Locality

Never present without a primary locality. The secondary locality has a wider geographic scope

than the primary locality.

It is the secondary locality therefore which differentiates addresses with the same primary

locality name within the same county.

Secondary localities are more likely to be required for rural addresses.

Post Town

The name of the post town associated with the premises for postal delivery purposes. This

includes Dublin Postal Districts “Dublin 1” to “Dublin 24”.

The post town is a vital element of the Postal Address, it is always populated in an address. The

official post office guide, Eolaí an Phoist4, describes post towns in the following manner

“A provincial postal address may include the name of a town or village several miles distant, with which the addressee has little or no connection, and, in some places, especially if this residence happens to be near a county boundary, the name of the neighbouring county instead of the county in which he actually resides. The explanation is that the main mail despatches have to be sent for more detailed sub division to certain centres known as POST TOWNS, chosen because of their accessibility and convenience.”

4 Ireland. Eolaí an phoist: Post office guide. Dublin

Page 32: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 30

Post County

One of the 26 Counties in the Republic of Ireland. These counties are sub-national divisions

used for the purposes of administrative, geographical and political demarcation. Post County is

the County associated with the Post Town, not the geographic county in which the building is

located. The Post County is normally used as part of the Postal Address with some exceptions

e.g. Dublin Postal Districts where the Post County is not used and some Post Towns (e.g.

Tipperary, Kildare, etc.) that have the same name as the Post County.

EIRCODE ELEMENT

Eircode

The seven character Eircode has an A65F4E2 format. The Eircode is a mandatory address

element. The last line of a Postal Address will contain the Eircode, displayed with a space. e.g.

A65 F4E2.

Page 33: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 31

2. Advanced Topics

This section is aimed at ECAD users, and provides more detail on the following technical aspects

of ECAD:

How to use Alias information

Spatial data and other data within the ECAD

Information concerning address validation

How to perform sample ECAD queries

2.1 How to use Alias Information

How the Irish Public currently provide and use addresses can differ from the Postal Address

format. While the first address line is usually (but not always) the same, the subsequent

address lines can vary in number and content. One of the issues is a difference to the Post

County in the Postal Address. For example the address below is geographically located in Co.

Offaly but has a postal county of Co. Laois. It is not uncommon to find the address written as

Co. Offaly rather than the correct postal county of Co. Laois.

ADDRESS WRITTEN ADDRESS POSTAL ADDRESS

ADDRESS LINE 1 123 ROWAN STREET 123 ROWAN STREET

ADDRESS LINE 2 TULLAMORE ROAD TULLAMORE ROAD

ADDRESS LINE 3 PORTARLINGTON PORTARLINGTON

ADDRESS LINE 4 CO. OFFALY CO. LAOIS

The BUILDING table contains both a POST_COUNTY_ID and a COUNTY_ID to indicate the County

used in the Postal Address and the Geographic County to be used as an aid to address matching

or validation of a provided address.

Another issue relates to whether the Post Town element of the Postal Address is currently in

common use by the public. If we look at the following example address:

ADDRESS WRITTEN ADDRESS POSTAL ADDRESS

ADDRESS LINE 1 123 ROCK STREET 123 ROCK STREET

ADDRESS LINE 2 DUN LAOGHAIRE DUN LAOGHAIRE

ADDRESS LINE 3 CO. DUBLIN GLENAGEARY

ADDRESS LINE 4 CO. DUBLIN

Page 34: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 32

Addresses in Dun Laoghaire have a post town of Glenageary, however addresses in existing

databases and as currently provided by the public would not commonly contain the Glenageary

post town, and thus cause difficulties when address matching or validating a provided address.

The BUILDING table contains a flag called POST_TOWN_COMMON_USE to indicate this

information. Typically, with a POST_TOWN_COMMON_USE flag of ‘Y’ you encounter the

address without the Post Town or Post County and instead it uses the Geographic County.

It is important to note that Eircode is providing this flag as a method to assist address

matching/verification only. The flag does not indicate an alternative postal address to the

postal address as defined by Irish Standard - I.S. EN 14142-1:2011 (Postal services. Address

databases), as operated by the Universal Service Provider, An Post.

Alias Tables provide a solution to the remaining address differences with addresses that do not

conform to the correct Postal Address.

Each of the Address Tables have an associated Alias table as listed below.

ADDRESS TABLE ALIAS TABLE

ORGANISATION ORGANISATION_ALIAS

ADDRESS_POINT ADDRESS_POINT_ALIAS

BUILDINGS BUILDINGS_ALIAS

BUILDING_GROUP BUILDING_GROUP_ALIAS

THOROUGHFARE THOROUGHFARE_ALIAS

LOCALITY LOCALITY_ALIAS

POST_TOWN POST_TOWN_ALIAS

COUNTY COUNTY_ALIAS

The aliases fall into 4 types as described in the table below:

# ALIAS TYPE

1 Common Misspelling

2 Alternative Name

3 Alternative Format

4 Alternative Name and Format

The following sections describe the different Alias Types.

Page 35: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 33

2.1.1 Common Misspelling Alias Type

This Alias Type covers situations where common misspellings of addresses are outside normal

“fuzzy tolerance” settings. If searching for an address element does not yield a result, the

recommended approach is to perform a search on the relevant Alias Table. This will allow

matching an address that has been incorrectly spelt. The alias table contains the incorrect

spelling of the address element and a link to the relevant record containing the correct element

it represents. In a common misspelling scenario it would be normal procedure to feedback the

corrected address rather than perpetuating the spelling mistake. Care must be taken in this

scenario to highlight the correction back to the originator.

This example shows a common misspelling of a locality and how it is corrected.

Entered Address:

Fictional Example

ROCK STREET

DUNLAOGHIRE

Entry in LOCALITY_ALIAS Table:

LOCALITY_ID ALIAS_TYPE_ID NAME

132165468 1 DUNLAOGHIRE

Entry in LOCALITY Table

LOCALITY_ID NAME

132165468 DUN LAOGHAIRE

This allows us to match the address and correct its spelling.

Corrected Address

ROCK STREET

DUN LAOIGHAIRE

2.1.2 Alternative Name Alias Type

This alias type covers situations where address elements have more than one way of being spelt

that are accepted as correct. The Alias Table will contain the name that the address element is

also known as. In alternative spelling scenarios it would be normal procedure to not correct the

inputted address.

Page 36: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 34

This example shows an alternative spelling of a locality.

Entered Address:

Fictional Example

ROCK STREET

BUNNYCONNELLAN

MAYO

Entry in LOCALITY_ALIAS Table:

LOCALITY_ALIAS_ID LOCALITY_ID ALIAS_TYPE_ID NAME

1546 132164558 2 BUNNYCONNELLAN

Entry in LOCALITY Table:

LOCALITY_ID NAME

132164558 BONNICONLON

In the Postal Address this is spelt BONNICONLON but in this case it is not advisable to correct the

locally used spelling of the input address.

Unchanged Address

ROCK STREET

BUNNYCONNELLAN

MAYO

It is important to note that this advice pertains where there is a requirement to maintain

the input address as is, and does not indicate an alternative postal address to the postal

address as defined by Irish Standard - I.S. EN 14142-1:2011 (Postal services. Address

databases), as operated by the Universal Service Provider, An Post..

2.1.3 Alternative Format Alias Type

This alias type covers situations where an address is often written using different address lines

to the Postal Address.

In this alias type each Alias Table with contain links to the records that make up the alternative

format of an address.

Page 37: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 35

Alternative format aliases can be used in all Alias Tables and this example shows a

THOROUGHFARE_ALIAS example.

Field Type Fictional Example Alias Postal Address

Thoroughfare STONEWALL DRIVE STONEWALL DRIVE

Primary Locality SAGGART ABBEY

Post Town DUBLIN 24

Post County CO. DUBLIN

Entry in THOROUGHFARE_ALIAS Table:

ALIAS_TYPE_ID THOROUGHFARE_ID PRIMARY_LOCALITY_ID POST_TOWN_ID COUNTY_ID

3 132164558 543216 20

Thus the Thoroughfare of STONEWALL DRIVE(132164558) can be followed by SAGGART

ABBEY(543216), CO. DUBLIN (20).

This alias type allows you to match/verify addresses in an alternative format to the Postal

Address by using the Address IDs in the tables. It is important to note that Eircode is

providing this alias information as a method to assist address matching/verification only.

The alias information does not indicate an alternative postal address to the postal address

as defined by Irish Standard - I.S. EN 14142-1:2011 (Postal services. Address databases), as

operated by the Universal Service Provider, An Post.

2.1.4 Alternative Name and Format Alias Type

This alias type covers situations where an address can be written using different address lines to

the Postal Address including an alternative name for the current address element. This

commonly occurs where there are alternative names for certain roads or housing estates that

have an implied relationship with or shortened next address line.

This example shows the same address displayed in two different formats.

Entered Address:

Field Type Fictional Example Alias Postal Address

Thoroughfare THE DRIVE CASTLETOWN DRIVE

Locality CASTLETOWN

Post Town ASHBOURNE ASHBOURNE

Post County CO. MEATH CO. MEATH

Page 38: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 36

Entry in the THOROUGHFARE_ALIAS Table:

FIELD NAME VALUE

ALIAS_TYPE_ID 4

THOROUGHFARE_ID

132164558

NAME THE DRIVE

PRIMARY_LOCALITY_ID 543216

POST_TOWN_ID 252

POST_COUNTY_ID 20

It is important to note that by making this an ALIAS_TYPE of 4 instead of 2 you are being told to

only match/validate an address written as THE DRIVE to CASTLETOWN DRIVE when the

following line in the address is CASTLETOWN.

It is important to note that Eircode is providing this alias information as a method to assist

address matching/verification only. The alias information does not indicate an alternative

postal address to the postal address as defined by Irish Standard - I.S. EN 14142-1:2011

(Postal services. Address databases), as operated by the Universal Service Provider, An Post.

2.2 Spatial Data and Other Information

This section explains the additional non-address related information that the ECAD provides.

There are four tables:

Spatial Information, i.e. geographical co-ordinates

Extra non address related Building Information

Extra non address related Organisation Information

Administrative Information, i.e. local authorities.

The main link between these additional information tables and the address type entities will be

the primary key of these Address Tables, i.e. BUILDING_ID, THOROUGHFARE_ID, etc.

Each of the four additional information tables has a list of address types which it supports. For

the included Address Tables, you can simply use the primary key of the Address Table to look up

information in the respective tables by linking to its primary key; ECAD_ID.

Page 39: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 37

Figure 1 Example of how sample Address Tables link to SPATIAL_INFO table using primary keys.

Table Name Address Tables

SPATIAL_INFO Buildings

Building Groups

Thoroughfares

Localities

Post Towns

Counties

BUILDING_INFO Buildings

ORGANISATION_INFO Organisations

ADMINISTRATIVE_INFO Buildings

Building Groups

Thoroughfares

Localities

Post Towns

Counties

Page 40: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 38

The data in these tables is updated independently from the address related tables. Each table

has their own LAST_UPDATED and CREATED_DATE columns to reflect these changes.

In the next sections the above Additional Information Tables are described in more detail, listing

the columns and descriptions for each.

2.2.1 Spatial Data

The ECAD supports multiple geographical co-ordinate options for mapping locations. These co-

ordinates are available as Easting/Northing or Latitude/Longitude depending on the reference

system used.

The following geographic co-ordinate systems are currently supported in the ECAD:

Irish National Grid (Easting/Northing)

Irish Transverse Mercator (Easting/Northing)

ETRS89 Reference System (Latitude/Longitude)

These are described in more detail below and further detail can be found on the Ordnance

Survey website (www.osi.ie).

2.2.1.1 Spatial Accuracy

The accuracy of the geo-coordinate provided for a building is determined by An Post based on

the source of the information and the methodology employed. The accuracy levels are

described in the following table:

ACCURACY LEVEL DESCRIPTION

1 – OSI MAP This is the highest level of accuracy. The position has been determined by Ordnance Survey Ireland using their most up to date mapping. The position is located in the centroid of the building outline.

2 – OSI ORTHO The position has been determined by Ordnance Survey Ireland using ortho photography.

3 – GENERAL An initial approximate position has been generated by An Post

4 – UNVERIFIED The co-ordinates provided, if any, have not been certified by the source provider. This means that the final quality control process has not been completed, and you should not rely on the accuracy of the provided co-ordinates.

Page 41: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 39

2.2.1.3 Specific Geo-coordinates Vs. Bounding Box Geo-coordinates

For buildings the SPATIAL_INFO table will contain geo-coordinates for the specific building

location. For the remaining address types which encompass multiple buildings the specific geo-

co-ordinate fields contain statistical mean values of the co-ordinates and also bounding box

information. The bounding box fields contain the minimum and maximum coordinate values

for all the buildings associated with the address.

The SPATIAL_INFO table has the following fields:

FIELD INFO DESCRIPTION

ECAD_ID Unique 10 digit identification number

ING_EAST Irish National Grid Easting Co-ordinate

ING_NORTH Irish National Grid Northing Co-ordinate

ITM_EAST ITM Easting Co-ordinate

ITM_NORTH ITM Northing Co-ordinate

ETRS89_LAT ETRS89 Latitude Co-ordinate

ETRS89_LONG ETRS89 Longitude Co-ordinate

ING_MIN_EAST Irish National Grid Minimum Easting Coordinate

ING_MIN_NORTH Irish National Grid Minimum Northing Coordinate

ING_MAX_EAST Irish National Grid Maximum Easting Coordinate

ING_MAX_NORTH Irish National Grid Maximum Northing Coordinate

ITM_MIN_EAST ITM Minimum Easting Coordinate

ITM_MIN_NORTH ITM Minimum Northing Coordinate

ITM_MAX_EAST ITM Maximum Easting Coordinate

ITM_MAX_NORTH ITM Maximum Northing Coordinate

ETRS89_MIN_LAT ETRS89 Minimum Latitude Coordinate

ETRS89_MIN_LONG ETRS89 Minimum Longitude Coordinate

ETRS89 _MAX_ LAT ETRS89 Maximum Latitude Coordinate

ETRS89 _MAX_ LONG ETRS89 Maximum Longitude Coordinate

SPATIAL_ACCURACY Describes Accuracy Level of Geo-Coordinates

CREATED_DATE Date Created for the record

LAST_UPDATED Date Updated for the record

Page 42: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 40

2.2.1.4 Irish National Grid

The Irish National Grid reference system was derived by the Ordnance Survey of Ireland, it is a

plane co-ordinate system based on a modified Transverse Mercator Map Projection on the Airy

Modified ellipsoid.

Within the grid any location can be mapped using two dimensions Easting (E) and Northings (N)

relative to the false origin. The Irish grid false origin is originated at 200 kilometres west and 250

kilometres south of true origin. The true origin is located at Latitude: 53°30'00 N and Longitude:

8°00'00 W.

2.2.1.5 Irish Transverse Mercator (ITM)

ITM is a new co-ordinate system devised for Ireland jointly implemented by the Ordnance

Survey of Ireland (OSI) and the Ordnance Survey of Northern Ireland (OSNI) in 2001. The name

is derived from the Transverse Mercator projection it uses.

It maintains the true origin and central meridian as set in the Irish National Grid but has a

different False Origin, thus distributing the differences between the previous National Irish Grid

distortions due to the projection evenly.

2.2.1.6 ETRS89 European Terrestrial Reference System

The European Terrestrial Reference system is a precise subset of the IRTF (International

Terrestrial Reference Frame) with geographic co-ordinates (latitudes and longitudes) based on

the GRS80 ellipsoid and has become the adopted reference system for Europe.

2.2.1.7 WGS84 Reference System

The Reference System WGS84 is commonly used with GPS devices. It and the European

Reference System ETRS89 are virtually identical and Coordinate Transformation between the

two systems is unnecessary as the positions calculated by these two Reference Systems

currently deviate by far less than one metre.

Page 43: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 41

2.2.2 Additional Building Information

The following table lists the fields available in the BUILDING_INFO table. The unique identifier

for this table is the BUILDING_ID which is the primary key of the BUILDING table.

FIELD INFO DESCRIPTION

BUILDING_ID Unique 10 digit identification number for the Building.

HOLIDAY_HOME A Yes/No field, indicating whether or not the building is a holiday home. NOTE: This field currently provided for future proofing, no data currently available to Eircode.

BUILDING_TYPE The Type of Building e.g. Bungalow, Detached etc.

UNDER CONSTRUCTION

A Yes/No field, indicating whether or not the building is under construction.

BUILDING_USE R- Residential, C-Commercial, B-Both or U-Unknown.

VACANT A Yes/No field, indicating whether or not the building is vacant.

CREATED_DATE Date Created for the record.

LAST_UPDATED Date Updated for the record.

2.2.3 Additional Organisation Information

The following table lists the fields available in the ORGANISATION_INFO table. The unique

identifier for this table is the ORGANISATION_ID which is the primary key of the ORGANISATION

table.

FIELD INFO DESCRIPTION

ORGANISATION_ID Unique 10 digit identification number for Organisations

NACE_CODE The NACE Code for the Category. NOTE: This field currently provided for future proofing, no data currently available to Eircode.

NACE_CATEGORY Name of the NACE Category. NOTE: This field currently provided for future proofing, no data currently available to Eircode.

CREATED_DATE Date Created for the record.

LAST_UPDATED Date Updated for the record.

Page 44: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 42

NACE CODE

The NACE (Nomenclature of Economic Activities) Classification list for economic activities is

divided into separate categories such as Manufacturing, Agriculture, etc.

2.2.4 Additional Administrative Information

The ADMINISTRATIVE INFO table contains additional generic information for different types of

ECAD Address Information Entities.

The ECAD ID’s of the different Address Entities i.e. Building ID, Address Point ID, etc. are the

unique identifiers to be used to look up information in this table using the ECAD_ID column.

FIELD INFO DESCRIPTION

ECAD_ID Unique 10 digit identification

LA_ID Unique Identifier for Local Authority

ED_ID Unique Identifier for Electoral Divisions

SMALL_AREA_ID Unique Identifier for the Small Area

TOWNLAND_ID Unique Identifier for townland

CREATED_DATE Date Created for the record

LAST_UPDATED Date Updated for the record

Local Authority

There are 31 local authorities in Ireland including 26 county councils, 2 city and county councils,

and 3 city councils. Local authorities are multi-purpose bodies charged with the responsibility

for a large range of services within their area, e.g. Housing, Planning, Roads, etc.

Electoral Divisions

Electoral Divisions (ED) are legally defined administrative areas in Ireland. There are 3,441

Electoral Divisions. Electoral Divisions are sub-divisions of Counties.

Small Area

Small Area boundaries are sub-divisions of Electoral Divisions and offer a much greater level of

detail in terms of analysing data spatially. A normal Small Area is comprised of approximately

80-120 dwellings created by the National Institute of Regional and Spatial Analysis (NIRSA) on

behalf of the Ordnance Survey Ireland (OSi) in consultation with the Central Statistics Office

(CSO). CSO’s Census 2011 publishes SAPS at the Small Area level. There are 18,489 Small Areas

in the ECAD.

Page 45: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 43

Townland

A townland is a small geographical division of land commonly used in Ireland and form the

building blocks for higher-level Electoral Divisions.

Townland names may not be unique within a County.

2.3 Address Validation

The Eircode is designed to optimise validation against its corresponding address. The Eircode

design and allocation has a number of built-in rules to minimise issues with verbal and written

miscommunication.

2.3.1 Character Set

The character set selected to make up the Eircode was carefully chosen to minimise the

confusion caused by characters that are similar physically or phonetically. This will assist the

accuracy of written and verbal communication of an Eircode.

2.3.2 Rules for Assigning Eircodes

The main aim of the allocation process is to ensure that similar addresses have very different

Eircodes to allow ease of validation of an Eircode against its address.

Let’s consider the following Postal Address to illustrate the concept:

Postal Address

DUNROAMIN

21 STONEWALL DRIVE

DUBLIN 24

D24 TF12

If the Eircode has a data entry error, then we may have examples like the following:

Captured Eircode Entry Error

D24 FT12 Characters transposed

D22 TF12 Incorrect character entered

D24 TF13 Incorrect character entered

D24 TF21 Characters transposed

Etc.

Page 46: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 44

Eircodes have been assigned in a manner to ensure the following is true for all the addresses

associated with Eircodes similar to D24 TF12

None will have a house name of Dunroamin

None will be on street called Stonewall Drive

None will have the same house number and similar street stems, e.g. none of the

following; 21 Stonewall Road, 21 Stonewall Lane, 21 Stonewall Grove, etc.

In the case of a non-unique address:

Postal Address

BALLINROAMIN

THURLES

CO. TIPPERARY

A65 TF12

Eircodes have been assigned in a manner to ensure the following is true for all the addresses

associated with similar Eircodes to A65 TF12

None will be in the same townland of Ballinroamin

None will be in any townland in Ireland called Ballinroamin

None will be in any similar townland name of Ballinroamin North, Ballinroamin Upper,

etc.

So how does this help us with address validation? Consider the following four input addresses

and their Eircodes:

Example 1 Example 2 Example 3 Example 4

12 STONEWALL DRIVE BALLINROAMIN 21 STONEWALL

DRIVE

21 STONEWALL DRIVE

DUBLIN 24 HOLYCROSS SAGGART ABBEY DUBLIN 24

D24 TF12 TIPPERARY DUBLIN D24 FT12

A65 TF12 D24 TF12

Page 47: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 45

Example 1

In this example we can be confident that the number 12 in the address is an error and should

be corrected to 21.

Example 2

In this example we can confidently validate this address even though the second address line

doesn’t match the Postal Address.

Example 3

In this example we can confidently validate the address even though the second and third

address lines don’t match the Postal Address.

Example 4

In this example we can confidently correct the Eircode from D24 FT12 to D24 TF12.

The following are the complete list of rules that have been implemented when allocating

Eircodes:

Not similar to other Eircodes in the same building

Not similar to Eircodes with the same building name, group of buildings, street, or

townland

Not similar to Eircodes with the same building number and similar street names

Where adjoining Routing Keys meet, the same Unique Identifier segment of the Eircode

within each are not physically close, designed to be at least 300 metres apart.

Where the address entered cannot be easily verified with the corresponding address, it is

recommended that alias address information is checked to assist verification. Alias information

is covered in section 2.1.

If Eircodes were simply allocated randomly, rather than our rules based approach, then our

calculations indicate that eight percent of addresses would have Eircodes that would be liable to

address verification issues. While every effort has been made to mitigate this issue, we cannot

guarantee 100% that all instances of address/Eircode verification confusion have been resolved.

Page 48: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 46

2.4 Sample ECAD Queries

The sample database queries below demonstrate some commonly requested address queries.

The SQL is for a SQL Server database or similar relational database.

2.4.1 Querying Towns by County

Show all the town in a given county:

-- all post towns in Wexford SELECT C.NAME as county, PT.NAME as post_town FROM BUILDING b INNER JOIN POST_TOWN PT ON PT.POST_TOWN_ID = b.POST_TOWN_ID INNER JOIN COUNTY C ON b.COUNTY_ID = C.COUNTY_ID WHERE C.NAME = 'WEXFORD' GROUP BY C.NAME, PT.NAME ORDER BY POST_TOWN

county post_town

WEXFORD ENNISCORTHY

WEXFORD GOREY

WEXFORD NEW ROSS

WEXFORD WEXFORD

Determine number of buildings in each town in a given county:

-- number of buildings in each post town in Wexford SELECT C.NAME as county, PT.NAME as post_town, COUNT(*) as building_count FROM BUILDING b INNER JOIN POST_TOWN PT ON PT.POST_TOWN_ID = b.POST_TOWN_ID INNER JOIN COUNTY C ON b.COUNTY_ID = C.COUNTY_ID WHERE C.NAME = 'WEXFORD' GROUP BY C.NAME, PT.NAME ORDER BY POST_TOWN

county post_town building_count

WEXFORD ENNISCORTHY 22

WEXFORD GOREY 25

WEXFORD NEW ROSS 22

WEXFORD WEXFORD 56

Page 49: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 47

2.4.2 Querying Industrial Estates in a County

Show industrial estates in Dublin:

SELECT DISTINCT l.NAME as Industrial_Estate FROM BUILDING b INNER JOIN COUNTY c ON b.COUNTY_ID = c.COUNTY_ID INNER JOIN LOCALITY l ON (b.PRIMARY_LOCALITY_ID = l.LOCALITY_ID OR b.SECONDARY_LOCALITY_ID = l.LOCALITY_ID) WHERE c.NAME = 'DUBLIN' AND l.ADDRESS_TYPE_ID = 1080 -- Industrial Estate UNION

SELECT DISTINCT b.NAME as Industrial_Estate FROM BUILDING b INNER JOIN COUNTY c ON b.COUNTY_ID = c.COUNTY_ID WHERE c.NAME = 'DUBLIN' AND b.ADDRESS_TYPE_ID = 1080 -- Industrial Estate UNION SELECT DISTINCT bg.NAME as Industrial_Estate FROM BUILDING b INNER JOIN COUNTY c ON b.COUNTY_ID = c.COUNTY_ID INNER JOIN BUILDING_GROUP bg ON (b.BUILDING_GROUP_ID = bg.BUILDING_GROUP_ID) WHERE c.NAME = 'DUBLIN' AND bg.ADDRESS_TYPE_ID = 1080 -- Industrial Estate

Industrial_Estate

I.F.S.C

2.4.3 Querying Thoroughfares in a Town

Show roads in Bantry:

SELECT TOP 3 T.THOROUGHFARE_ID , T.NAME FROM (SELECT POST_TOWN_ID FROM POST_TOWN WHERE NAME = 'BANTRY') PT INNER JOIN BUILDING B ON B.POST_TOWN_ID = PT.POST_TOWN_ID INNER JOIN THOROUGHFARE T ON (T.THOROUGHFARE_ID = B.PRIMARY_THOROUGHFARE_ID OR T.THOROUGHFARE_ID = B.SECONDARY_THOROUGHFARE_ID) LEFT OUTER JOIN LOCALITY LOC1 ON (LOC1.LOCALITY_ID = B.PRIMARY_LOCALITY_ID) LEFT OUTER JOIN LOCALITY LOC2 ON (LOC2.LOCALITY_ID = B.SECONDARY_LOCALITY_ID) WHERE (LOC1.LOCALITY_ID IS NULL OR LOC1.ADDRESS_TYPE_ID NOT IN (3400,3600,3700,3800)) and (LOC2.LOCALITY_ID IS NULL OR LOC2.ADDRESS_TYPE_ID NOT IN (3400,3600,3700,3800)) GROUP BY T.THOROUGHFARE_ID, T.NAME THOROUGHFARE_ID THOROUGHFARE

1000014808 BARRACK STREET

1000034519 OLD BARRACK ROAD

1000039257 GLENGARRIFF ROAD

Page 50: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 48

2.4.4 Postal Address View

The Postal Address View is a view of data from the ECAD address tables in the ECAD database

that replicates the ECAD Postal Address table.

The extract requires two primary steps:

1. get the address data from the tables

2. construct address lines 1 to 8 from the address data

Construction of the eight columns for address lines 1 to 8 requires conditional logic and is

therefore best suited to a function or other programming construct in either SQL or any other

programming language.

The following sub-sections describe an example of how a Postal Address View might be

constructed on a relational database, in this case a SQL Server database. Comments are

embedded in the SQL for clarification: The SQL is contained in Appendix 3.

Postal Address Line View

The nine address lines are constructed from the following address elements:

Department

Organisation

Sub Building

Building Number

Building Group

Primary Thoroughfare

Secondary Thoroughfare

Primary Locality

Secondary Locality

Post Town

County

Eircode

The Irish language version of the Postal Address is to be produced in the same manner as the

English version simply by replacing references to any NAME column to NAME_IRISH.

The construction of the eight address lines is conditional upon the content of these elements

and so typically the conditional logic is put in a function. Each value present appears on the

next available address line, except for sub building which may prefix another element, and

building number which always prefixes the next available address line after building name.

Having constructed the eight address line rows, they are “pivoted” to convert them from rows

into columns which can then be appended to each row in the view, as described above. The

example SQL function (f_get_address_cols) gets the address lines (f_get_address_lines) and

pivots them into 7 columns. See Appendix 3 for details.

Page 51: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 49

3. Data Provision and Updates

Updates are available from Eircode on a quarterly basis. These are available for secure

download via the Eircode website www.eircode.ie

3.1 ECAD

There are two types of update available for the ECAD:

Complete dataset

Update only

The data files are tab delimited with column headers as the first line and each subsequent line

is a row of data. The lines are separated by newline characters. The character encoding is

Windows 1252.

Description Character Ascii values

Delimiter Tab (\t) 0x09

Newline Newline (\r \n) 0x0A , 0x0D

3.1.1 Complete Dataset

The complete dataset consists of a single zip file that contains a text file for each table in the

ECAD, each containing the full record set. The schema is described in Appendix 1. The file size

estimate for the Complete Dataset zip file is 150Mb, the unzipped contents are approximately 2

GB.

When updating an ECAD with the complete dataset, the existing data for the all ECAD tables

should be removed, leaving an empty schema. Then each text file is imported into the relevant

table.

Page 52: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 50

The tables included are (Structures for and descriptions of all these tables are contained in

Appendix 1):

# TABLENAME

1 ADDRESS_POINT

2 ADDRESS_TYPE

3 ALIAS_TYPE

4 BUILDING

5 BUILDING_ALIAS

6 BUILDING_GROUP

7 BUILDING_GROUP_ALIAS

8 BUILDING_INFO

9 COUNTY

10 COUNTY_ALIAS

11 DESCRIPTOR

12 GEODIRECTORY_LOOKUP

13 GEOGRAPHIC

14 LOCALITY

15 LOCALITY_ALIAS

16 ORGANISATION

17 ORGANISATION_INFO

18 POST_TOWN

19 POST_TOWN_ALIAS

20 POSTAL_ADDRESS

21 QUALIFIER

22 SPATIAL_INFO

23 SUB_ADDRESS_POINT

24 THOROUGHFARE

25 THOROUGHFARE_ALIAS

Page 53: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 51

3.1.2 Update Only

The Update Only version contains all the changes required to add, update and remove the

necessary records to upgrade it from one ECAD release to the next. This deliverable comprises of

multiple files, these files are categorised into three different types: insertions, updates and

deletions.

3.1.2.1 Insert File for Update Only Process

As part of the Update Only release there is an insert file for each table that has new records. The

new data records in each file must be inserted into the relevant table.

3.1.2.2 Update File for Update Only process

As part of the Update Only release there is one update file. This file contains details of the

changes that have to be made to the ECAD compared to the previous release.

Each data row contains directions to update to one field of data in the ECAD. The data contains

the ECAD identifier, table name, column name, the new value.

The example below shows some sample records in an update file:

UPDATE_ID TABLE_NAME ECAD_ID COLUMN_NAME NEW_VALUE

1 BUILDING 54684 BUILDING_NAME DUNROAMIN

2 BUILDING 54684 LAST_UPDATED 2014-01-01 09:00:00

Each update must be performed in order, to bring the ECAD up to date.

3.1.2.3 Delete File for Update process

As part of the Update Only release there is one delete file. This file contains details of all records

that need to be removed from the ECAD as part of this release.

Each data row contains details of the records to remove from the ECAD. The data contains the

ECAD identifier and the table name.

DELETE_ID ECAD_ID TABLE_NAME

1 1000658732 BUILDING

2 1000074563 ORGAINISATION

When each data record in the delete file has been processed the ECAD update is complete.

Page 54: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 52

4. Appendices

4.1 Appendix 1 – Physical Model for Model ECAD V0.1

Entity Report

Entity 'dbo.ADDRESS_POINT'

Caption ADDRESS_POINT

Entity Properties

Filegroup PRIMARY

Primary Key 'PK_ADDRESS_POINT' Attribute Name type Parent Entity

ADDRESS_POINT_ID PK -----

Attributes Key Attribute Name Data Type Comment

PK ADDRESS_POINT_ID Int

FK ADDRESS_TYPE_ID Int

FK BUILDING_ID Int

NAME Nvarchar(60)

NAME_IRISH Nvarchar(60)

IRISH_VERIFICATION_ID Int

EIRCODE Varchar(7)

FULL_ADDRESS_LINE Varchar(1)

SUB_BUILDING_NAME_REQUIRED Varchar(1)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 55: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 53

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_ADDRESS_POINT_BUILDING Non-identifying dbo.BUILDING dbo.ADDRESS_POINT

1:N

FK_BUILDING_GROUP_ADDRESS_POINT

Non-identifying dbo.ADDRESS_TYPE

dbo.ADDRESS_POINT

1:N

FK_ORGANISATION_ADDRESS_POINT

Non-identifying dbo.ADDRESS_POINT

dbo.ORGANISATION 1:N

FK_SUB_ADDRESS_POINT_ADDRESS_POINT

Non-identifying dbo.ADDRESS_POINT

dbo.SUB_ADDRESS_POINT

1:N

Indexes Index Name Attributes Unique

IDX_AP_ADD_PT_ID ADDRESS_POINT_ID YES

IDX_AP_ADD_TYP_ID ADDRESS_TYPE_ID NO

IDX_AP_BLD_ID BUILDING_ID NO

IDX_AP_BLD_ID_ADD_TP_ID BUILDING_ID, ADDRESS_TYPE_ID NO

IDX_AP_PCODE EIRCODE NO

Page 56: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 54

Entity 'dbo.ADDRESS_TYPE'

Caption ADDRESS_TYPE

Entity Properties Filegroup PRIMARY

Primary Key 'PK_ADDRESS_TYPE' Attribute Name type Parent Entity

ADDRESS_TYPE_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK ADDRESS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_GROUP_ADDRESS_POINT

Non-identifying dbo.ADDRESS_TYPE

dbo.ADDRESS_POINT

1:N

FK_BUILDING_GROUP_ADRTYPE Non-identifying dbo.ADDRESS_TYPE

dbo.BUILDING_GROUP

1:N

FK_SUB_ADDRESS_POINT_ADDRESS_TYPE_ID

Non-identifying dbo.ADDRESS_TYPE

dbo.SUB_ADDRESS_POINT

1:N

Page 57: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 55

Entity 'dbo.ADMINISTRATIVE_INFO'

Caption ADMINISTRATIVE_INFO

Entity Properties Filegroup PRIMARY

Primary Key 'PK_ADMINISTRATIVE_INFO' Attribute Name type Parent Entity

ECAD_ID PFK dbo.BUILDING

Attributes Key Attribute Name Data Type Comments

PFK ECAD_ID Int

LA_ID Int

DED_ID Int

SMALL_AREA_ID Int

TOWNLAND_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_ADMINISTRATIVE_INFO_BUILDING

Identifying dbo.BUILDING dbo.ADMINISTRATIVE_INFO

1:N

Page 58: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 56

Entity 'dbo.ALIAS_TYPE'

Caption ALIAS_TYPE

Entity Properties Filegroup PRIMARY

Attributes Key Attribute Name Data Type Comments

PK ALIAS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Entity 'dbo.BUILDING'

Caption BUILDING

Entity Properties Filegroup PRIMARY

Primary Key 'PK_BUILDING' Attribute Name type Parent Entity

BUILDING_ID PK -----

Page 59: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 57

Attributes Key Attribute Name Data Type Comments

PK BUILDING_ID Int

ADDRESS_TYPE_ID Int

NAME Nvarchar(60)

NAME_IRISH Nvarchar(60)

IRISH_VERIFICATION_ID Int

BUILDING_NAME_REQUIRED Varchar(1)

NUMBER Nvarchar(40)

BUILDING_NUMBER_REQUIRED Varchar(1)

FK BUILDING_GROUP_ID Int

BUILDING_GROUP_REQUIRED Varchar(1)

FK PRIMARY_THOROUGHFARE_ID Int

PRIMARY_THOROUGHFARE_REQUIRED Varchar(1)

FK SECONDARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_REQUIRED Varchar(1)

FK PRIMARY_LOCALITY_ID Int

PRIMARY_LOCALITY_REQUIRED Varchar(1)

FK SECONDARY_LOCALITY_ID Int

SECONDARY_LOCALITY_REQUIRED Varchar(1)

FK POST_TOWN_ID Int

POST_TOWN_REQUIRED Varchar(1)

POST_TOWN_COMMON_USE Varchar(1)

POST_COUNTY_ID Int

POST_COUNTY_REQUIRED Varchar(1)

COUNTY_ID Int

ROUTING_KEY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 60: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 58

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_ADDRESS_POINT_BUILDING

Non-identifying dbo.BUILDING dbo.ADDRESS_POINT 1:N

FK_BUILDING_BUILDING_GROUP

Non-identifying dbo.BUILDING_GROUP

dbo.BUILDING 1:N

FK_BUILDING_LOCALITY Non-identifying dbo.LOCALITY dbo.BUILDING 1:N

FK_BUILDING_LOCALITY1 Non-identifying dbo.LOCALITY dbo.BUILDING 1:N

FK_BUILDING_PO_PT_ID Non-identifying dbo.POST_TOWN dbo.BUILDING 1:N

FK_BUILDING_POST_TOWN Non-identifying dbo.POST_TOWN dbo.BUILDING 1:N

FK_BUILDING_THOROUGHFARE_2nd

Non-identifying dbo.THOROUGHFARE

dbo.BUILDING 1:N

FK_BUILDING_THOROUGHFARE_Primary

Non-identifying dbo.THOROUGHFARE

dbo.BUILDING 1:N

FK_BUILDING_INFO_BUILDING

Identifying dbo.BUILDING dbo.BUILDING_INFO 1:N

FK_ADMINISTRATIVE_INFO_BUILDING

Identifying dbo.BUILDING dbo.ADMINISTRATIVE_INFO

1:N

FK_SPATIAL_INFO_BUILDING Identifying dbo.BUILDING dbo.SPATIAL_INFO 1:N

Indexes Index Name Attributes Unique

IDX_BUILDP_BG BUILDING_GROUP_ID NO

IDX_BUILDP_BID BUILDING_ID NO

IDX_BUILDP_COUNTY COUNTY_ID NO

IDX_BUILDP_LOC PRIMARY_LOCALITY_ID NO

IDX_BUILDP_LOC2 SECONDARY_LOCALITY_ID NO

IDX_BUILDP_THOR PRIMARY_THOROUGHFARE_ID NO

IDX_BUILDP_THOR2 SECONDARY_THOROUGHFARE_ID NO

IDX_BUILDP_TOWN POST_TOWN_ID NO

Page 61: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 59

Entity 'dbo.BUILDING_GROUP'

Caption BUILDING_GROUP

Entity Properties Filegroup PRIMARY

Primary Key 'PK_BUILDING_GROUP' Attribute Name type Parent Entity

BUILDING_GROUP_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK BUILDING_GROUP_ID Int

FK ADDRESS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

FK QUALIFIER_ID Int

FK DESCRIPTOR_ID Int

FK GEOGRAPHIC_ID Int

BUILDING_GROUP_NAME Nvarchar(80)

BUILDING_GROUP_NAME_IRISH Nvarchar(80)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationshi

p Type Parent Entity Child Entity Card

.

FK_BUILDING_BUILDING_GROUP Non-identifying

dbo.BUILDING_GROUP

dbo.BUILDING 1:N

FK_BUILDING_GROUP_ADRTYPE Non-identifying

dbo.ADDRESS_TYPE dbo.BUILDING_GROUP

1:N

FK_BUILDING_GROUP_DESCRIPTOR

Non-identifying

dbo.DESCRIPTOR dbo.BUILDING_GROUP

1:N

FK_BUILDING_GROUP_GEOG Non-identifying

dbo.GEOGRAPHIC dbo.BUILDING_GROUP

1:N

FK_BUILDING_GROUP_QUALIFIER Non-identifying

dbo.QUALIFIER dbo.BUILDING_GROUP

1:N

Page 62: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 60

Entity 'dbo.BUILDING_INFO'

Caption BUILDING_INFO

Entity Properties Filegroup PRIMARY

Primary Key 'PK_BUILDING_INFO' Attribute Name type Parent Entity

BUILDING_ID PFK dbo.BUILDING

Attributes Key Attribute Name Data Type Comments

PFK BUILDING_ID Int

BUILDING_TYPE_ID Int

HOLIDAY_HOME Nvarchar(1)

UNDER_CONSTRUCTION Nvarchar(1)

BUILDING_USE Nvarchar(1)

VACANT Nvarchar(1)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_INFO_BUILDING Identifying dbo.BUILDING dbo.BUILDING_INFO 1:N

Page 63: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 61

Entity 'dbo.COUNTY'

Caption COUNTY

Entity Properties Filegroup PRIMARY

Primary Key 'PK_COUNTY' Attribute Name type Parent Entity

COUNTY_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK COUNTY_ID Int

ADDRESS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 64: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 62

Entity 'dbo.DESCRIPTOR'

Caption DESCRIPTOR

Entity Properties Filegroup PRIMARY

Primary Key 'PK_DESCRIPTOR' Attribute Name type Parent Entity

DESCRIPTOR_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK DESCRIPTOR_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_GROUP_DESCRIPTOR Non-identifying

dbo.DESCRIPTOR dbo.BUILDING_GROUP 1:N

Page 65: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 63

Entity 'dbo.POSTAL_ADDRESS'

Caption POSTAL_ADDRESS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_POSTAL_ADDRESS' Attribute Name type Parent Entity

ECAD_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK ECAD_ID Int

ORGANISATION_ID Int

ADDRESS_POINT_ID Int

BUILDING_ID Int

BUILDING_GROUP_ID Int

PRIMARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

EIRCODE Varchar(7)

NUA Varchar(1)

ADDR_LINE_1 Nvarchar(200)

ADDR_LINE_2 Nvarchar(200)

ADDR_LINE_3 Nvarchar(200)

ADDR_LINE_4 Nvarchar(200)

ADDR_LINE_5 Nvarchar(200)

ADDR_LINE_6 Nvarchar(200)

ADDR_LINE_7 Nvarchar(200)

ADDR_LINE_8 Nvarchar(200)

ADDR_LINE_9 Nvarchar(200)

IRISH_ADDR_LINE_1 Nvarchar(200)

Page 66: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 64

Key Attribute Name Data Type Comments

IRISH_ADDR_LINE_2 Nvarchar(200)

IRISH_ADDR_LINE_3 Nvarchar(200)

IRISH_ADDR_LINE_4 Nvarchar(200)

IRISH_ADDR_LINE_5 Nvarchar(200)

IRISH_ADDR_LINE_6 Nvarchar(200)

IRISH_ADDR_LINE_7 Nvarchar(200)

IRISH_ADDR_LINE_8 Nvarchar(200)

IRISH_ADDR_LINE_9 Nvarchar(200)

ADDRESS_REFERENCE Varchar(16)

Page 67: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 65

Entity 'dbo.GEODIRECTORY_LOOKUP'

Caption GEODIRECTORY_LOOKUP

Entity Properties Filegroup PRIMARY

Attributes Key Attribute Name Data Type Comments

PK ECAD_ID Int

GEO_ID Int

ECAD_TABLE Nvarchar(50)

GEO_TABLE Nvarchar(50)

Page 68: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 66

Entity 'dbo.GEOGRAPHIC'

Caption GEOGRAPHIC

Entity Properties Filegroup PRIMARY

Primary Key 'PK_GEOGRAPHIC' Attribute Name type Parent Entity

GEOGRAPHIC_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK GEOGRAPHIC_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_GROUP_GEOG

Non-identifying dbo.GEOGRAPHIC dbo.BUILDING_GROUP

1:N

Page 69: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 67

Entity 'dbo.IRISH_VERIFICATION'

Caption IRISH_VERIFICATION

Entity Properties Filegroup PRIMARY

Primary Key 'PK_IRISH_VERIFICATION' Attribute Name type Parent Entity

IRISH_VERIFICATION_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK IRISH_VERIFICATION_ID Int

VALIDATION_LIFECYCLE Nvarchar(50)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 70: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 68

Entity 'dbo.LOCALITY'

Caption LOCALITY

Entity Properties Filegroup PRIMARY

Primary Key 'PK_LOCALITY' Attribute Name type Parent Entity

LOCALITY_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK LOCALITY_ID Int

ADDRESS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

LOCALITY_NAME Nvarchar(80)

LOCALITY_NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

QUALIFIER_ID Int

GEOGRAPHIC_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_LOCALITY Non-identifying dbo.LOCALITY dbo.BUILDING 1:N

FK_BUILDING_LOCALITY1 Non-identifying dbo.LOCALITY dbo.BUILDING 1:N

Page 71: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 69

Entity 'dbo.ORGANISATION'

Caption ORGANISATION

Entity Properties Filegroup PRIMARY

Primary Key 'PK_ORGANISATION' Attribute Name type Parent Entity

ORGANISATION_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK ORGANISATION_ID Int

FK ADDRESS_POINT_ID Int

ADDRESS_TYPE_ID Int

NAME Nvarchar(500)

NAME_IRISH Nvarchar(500)

SUB_ADDRESS_NAME Nvarchar(500)

SUB_ADDRESS_NAME_IRISH Nvarchar(500)

DEPARTMENT Nvarchar(500)

DEPARTMENT_IRISH Nvarchar(500)

IRISH_VERIFICATION_ID Int

FULL_ADDRESS_LINE Varchar(1)

ORGANISATION_NAME_REQUIRED Varchar(1)

BUILDING_GROUP_REQUIRED Varchar(1)

BUILDING_NAME_REQUIRED Varchar(1)

DEPARTMENT_REQUIRED Varchar(1)

SUB_BUILDING_NAME_REQUIRED Varchar(1)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card

.

FK_ORGANISATION_ADDRESS_POINT

Non-identifying

dbo.ADDRESS_POINT dbo.ORGANISATION 1:N

FK_ORGANISATION_INFO_ORG

Identifying dbo.ORGANISATION dbo.ORGANISATION_INFO

1:N

Page 72: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 70

Entity 'dbo.ORGANISATION_INFO'

Caption ORGANISATION_INFO

Entity Properties Filegroup PRIMARY

Primary Key 'PK_ORGANISATION_INFO' Attribute Name type Parent Entity

ORGANISATION_ID PFK dbo.ORGANISATION

Attributes Key Attribute Name Data Type Comments

PFK ORGANISATION_ID Int

NACE_CODE Nvarchar(20)

NACE_CATEGORY Nvarchar(100)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_ORGANISATION_INFO_ORG Identifying dbo.ORGANISATION dbo.ORGANISATION_INFO 1:N

Page 73: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 71

Entity 'dbo.POST_TOWN'

Caption POST_TOWN

Entity Properties Filegroup PRIMARY

Primary Key 'PK_POST_TOWN' Attribute Name type Parent Entity

POST_TOWN_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK POST_TOWN_ID Int

ADDRESS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_PO_PT_ID Non-identifying dbo.POST_TOWN dbo.BUILDING 1:N

FK_BUILDING_POST_TOWN Non-identifying dbo.POST_TOWN dbo.BUILDING 1:N

Page 74: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 72

Entity 'dbo.QUALIFIER'

Caption QUALIFIER

Entity Properties Filegroup PRIMARY

Primary Key 'PK_QUALIFIER' Attribute Name type Parent Entity

QUALIFIER_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK QUALIFIER_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_GROUP_QUALIFIER Non-identifying

dbo.QUALIFIER dbo.BUILDING_GROUP 1:N

Page 75: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 73

Entity 'dbo.ROUTING_KEY'

Caption ROUTING_KEY

Entity Properties Filegroup PRIMARY

Primary Key 'PK_ROUTING_KEY' Attribute Name type Parent Entity

ROUTING_KEY_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK ROUTING_KEY_ID Int

ROUTING_KEY_NAME Nvarchar(50)

Page 76: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 74

Entity 'dbo.SPATIAL_INFO'

Caption SPATIAL_INFO

Entity Properties Filegroup PRIMARY

Primary Key 'PK_SPATIAL_INFO' Attribute Name type Parent Entity

ECAD_ID PFK dbo.BUILDING

Attributes Key Attribute Name Data Type Comments

PFK ECAD_ID Int

ING_EAST Float

ING_NORTH Float

ITM_EAST Float

ITM_NORTH Float

ETRS89_LAT Float

ETRS89_LONG Float

ING_MIN_EAST Float

ING_MIN_NORTH Float

ING_MAX_EAST Float

ING_MAX_NORTH Float

ITM_MIN_EAST Float

ITM_MIN_NORTH Float

ITM_MAX_EAST Float

ITM_MAX_NORTH Float

ETRS89_MIN_LAT Float

ETRS89_MIN_LONG Float

ETRS89_MAX_LAT Float

ETRS89_MAX_LONG Float

SPATIAL_ACCURACY Nvarchar(1)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 77: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 75

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_SPATIAL_INFO_BUILDING Identifying dbo.BUILDING dbo.SPATIAL_INFO 1:N

Page 78: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 76

Entity 'dbo.SUB_ADDRESS_POINT'

Caption SUB_ADDRESS_POINT

Entity Properties Filegroup PRIMARY

Primary Key 'PK_SUB_ADDRESS_POINT' Attribute Name type Parent Entity

SUB_ADDRESS_POINT_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK SUB_ADDRESS_POINT_ID Int

FK ADDRESS_TYPE_ID Int

FK ADDRESS_POINT_ID Int

NAME Nvarchar(50)

NAME_IRISH Nvarchar(50)

IRISH_VERIFICATION_ID Int

FULL_ADDRESS_LINE Varchar(1)

SUB_BUILDING_NAME_REQUIRED Varchar(1)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationsh

ip Type Parent Entity Child Entity Car

d.

FK_SUB_ADDRESS_POINT_ADDRESS_POINT

Non-identifying

dbo.ADDRESS_POINT

dbo.SUB_ADDRESS_POINT

1:N

FK_SUB_ADDRESS_POINT_ADDRESS_TYPE_ID

Non-identifying

dbo.ADDRESS_TYPE

dbo.SUB_ADDRESS_POINT

1:N

Page 79: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 77

Entity 'dbo.THOROUGHFARE'

Caption THOROUGHFARE

Entity Properties Filegroup PRIMARY

Primary Key 'PK_THOROUGHFARE' Attribute Name type Parent Entity

THOROUGHFARE_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK THOROUGHFARE_ID Int

ADDRESS_TYPE_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

THOROUGHFARE_NAME Nvarchar(80)

THOROUGHFARE_NAME_IRISH Nvarchar(80)

IRISH_VERIFICATION_ID Int

QUALIFIER_ID Int

GEOGRAPHIC_ID Int

DESCRIPTOR_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Relationships Relationship Name Relationship

Type Parent Entity Child Entity Card.

FK_BUILDING_THOROUGHFARE_2nd Non-identifying

dbo.THOROUGHFARE dbo.BUILDING 1:N

FK_BUILDING_THOROUGHFARE_Primary Non-identifying

dbo.THOROUGHFARE dbo.BUILDING 1:N

Page 80: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 78

Entity 'dbo.ADDRESS_POINT_ALIAS'

Caption ADDRESS_POINT_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_ADDRESS_POINT_ALIAS' Attribute Name type Parent Entity

ADDRESS_POINT_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK ADDRESS_POINT_ALIAS_ID Int

ALIAS_TYPE_ID Int

ADDRESS_POINT_ID Int

BUILDING_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

BUILDING_GROUP_ID Int

PRIMARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 81: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 79

Entity 'dbo.SUB_ADDRESS_POINT_ALIAS'

Caption SUB_ADDRESS_POINT_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_SUB_ADDRESS_POINT_ALIAS' Attribute Name type Parent Entity

SUB_ADDRESS_POINT_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK SUB_ADDRESS_POINT_ALIAS_ID Int

ALIAS_TYPE_ID Int

SUB_ADDRESS_POINT_ID Int

ADDRESS_POINT_ID Int

BUILDING_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

BUILDING_GROUP_ID Int

PRIMARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 82: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 80

Entity 'dbo.ORGANISATION_ALIAS'

Caption SUB_ORGANISATION_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_SUB_ADDRESS_POINT_ALIAS' Attribute Name type Parent Entity

ORGANISATION_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK ORGANISATION_ALIAS_ID Int

ALIAS_TYPE_ID Int

ORGANISATION_ID Int

ADDRESS_POINT_ID Int

BUILDING_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

BUILDING_GROUP_ID Int

PRIMARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 83: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 81

Entity 'dbo.BUILDING_ALIAS'

Caption BUILDING_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_BUILDING_ALIAS' Attribute Name type Parent Entity

BUILDING_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK BUILDING_ALIAS_ID Int

ALIAS_TYPE_ID Int

BUILDING_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

NUMBER Nvarchar(80)

BUILDING_GROUP_ID Int

PRIMARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 84: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 82

Entity 'dbo.BUILDING_GROUP_ALIAS'

Caption BUILDING_GROUP_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_BUILDING_GROUP_ALIAS' Attribute Name type Parent Entity

BUILDING_GROUP_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK BUILDING_GROUP_ALIAS_ID Int

ALIAS_TYPE_ID Int

BUILDING_GROUP_ID Int

NAME Nvarchar(80)

NAME_IRISH Nvarchar(80)

PRIMARY_THOROUGHFARE_ID Int

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 85: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 83

Entity 'dbo.COUNTY_ALIAS'

Caption COUNTY_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_COUNTY_ALIAS' Attribute Name type Parent Entity

COUNTY_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK COUNTY_ALIAS_ID Int

ALIAS_TYPE_ID Int

COUNTY_ID Int

NAME Nvarchar(50)

NAME_IRISH Nvarchar(50)

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 86: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 84

Entity 'dbo.LOCALITY_ALIAS'

Caption LOCALITY_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_LOCALITY_ALIAS' Attribute Name type Parent Entity

LOCALITY_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK LOCALITY_ALIAS_ID Int

ALIAS_TYPE_ID Int

LOCALITY_ID Int

NAME Nvarchar(50)

NAME_IRISH Nvarchar(50)

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 87: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 85

Entity 'dbo.POST_TOWN_ALIAS'

Caption POST_TOWN_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_POST_TOWN_ALIAS' Attribute Name type Parent Entity

POST_TOWN_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK POST_TOWN_ALIAS_ID Int

ALIAS_TYPE_ID Int

POST_TOWN_ID Int

NAME Nvarchar(50)

NAME_IRISH Nvarchar(50)

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 88: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 86

Entity 'dbo.THOROUGHFARE_ALIAS'

Caption THOROUGHFARE_ALIAS

Entity Properties Filegroup PRIMARY

Primary Key 'PK_THOROUGHFARE_ALIAS' Attribute Name type Parent Entity

THOROUGHFARE_ALIAS_ID PK -----

Attributes Key Attribute Name Data Type Comments

PK THOROUGHFARE_ALIAS_ID Int

ALIAS_TYPE_ID Int

THOROUGHFARE_ID Int

NAME Nvarchar(50)

NAME_IRISH Nvarchar(50)

SECONDARY_THOROUGHFARE_ID Int

PRIMARY_LOCALITY_ID Int

SECONDARY_LOCALITY_ID Int

POST_TOWN_ID Int

POST_COUNTY_ID Int

CREATED_DATE Datetime

LAST_UPDATED Datetime

Page 89: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 87

4.2 Appendix 2 – Lookup Tables

4.2.1 ADDRESS_TYPE Table

ADDRESS_TYPE_ID NAME

1200 APARTMENT COMPLEX

1520 BUNGALOW

1220 BUSINESS PARK

1390 COLLEGE

1260 COURT

1210 EDUCATIONAL CAMPUS

1470 FACTORY COMPLEX

1280 FLAT COMPLEX

1410 GROUP OF DETACHED HOUSES

1270 HALTING SITE

1460 HERITAGE AND HISTORICAL

1430 HOLIDAY HOMES

1230 HOSPITAL

1450 HOTEL COMPLEX

1290 HOUSING ESTATE

1080 INDUSTRIAL ESTATE

1330 MOBILE HOME PARK

1440 MIXED DEVELOPMENT

1240 NURSING HOME

1400 POWER GENERATION PLANT

1370 PRIVATE ESTATE

1380 RELIGIOUS ORGANISATION

1090 RESIDENTIAL ESTATE

1310 SCHOOL

1130 SECONDARY LOCALITY

1300 SHELTERED HOUSING

1190 SHOPPING CENTRE

1340 SPORTS COMPLEX

1530 TEMPORARY DWELLING

1180 TERRACE

1360 TOWNHOUSES

Page 90: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 88

ADDRESS_TYPE_ID NAME

1250 VOCATIONAL TRAINING & EMPLOYMENT

2000 ORGANISATION

2050 SUB ADDRESS POINT

2100 NON-RESIDENTIAL ADDRESS POINT

2150 RESIDENTIAL ADDRESS POINT

2180 MIXED ADDRESS POINT

2200 SINGLE OCCUPANCY RESIDENTIAL BUILDING

2210 MULTI OCCUPANCY RESIDENTIAL BUILDING

2220 SINGLE OCCUPANCY NON-RESIDENTIAL BUILDING

2230 MULTI OCCUPANCY NON-RESIDENTIAL BUILDING

2240 MULTI OCCUPANCY MIXED BUILDING

2300 RESIDENTIAL BUILDING GROUP

2310 NON-RESIDENTIAL BUILDING GROUP

2320 MIXED BUILDING GROUP

3100 THOROUGHFARE

3200 URBAN AREA

3350 SUBURBAN LOCALITY

3400 RURAL LOCALITY

3600 VILLAGE

3700 TOWN

3750 POSTAL DISTRICT

3800 CITY

3900 COUNTY

Page 91: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 89

4.2.2 DESCRIPTOR Table

DESCRIPTOR_ID NAME

50 ABBEY

51 ACRE

52 ALLEY

53 APARTMENTS

54 ARCADE

55 ARCH

56 AVENUE

57 BANK

58 BANKS

59 BARN

60 BARRACK

61 BAY

62 BIRCHES

63 BOREEN

64 BOULEVARD

65 BOW

66 BRIDGE

67 BROOK

68 BUILDINGS

69 BUNGALOWS

70 BUSH

71 BUSINESS

72 BUSINESS CENTRE

73 BUSINESS PARK

74 BY-PASS

75 CASTLE

76 CELL

77 CENTRE

78 CHURCH

79 CIRCLE

80 CLOSE

81 COLLEGE

Page 92: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 90

DESCRIPTOR_ID NAME

82 COMPLEX

83 COPSE

84 CORNER

85 COTTAGE

86 COTTAGES

87 COURT

88 COVE

89 CRESCENT

90 CREST

91 CROFT

92 CROSS

93 CROSSING

94 DALE

95 DELL

96 DEMESNE

97 DOCK

98 DOWNS

99 DRIVE

100 DWELLINGS

101 EDGE

102 ELMS

103 END

104 ENTERPRISE CENTRE

105 ENTERPRISE PARK

106 ESPLANADE

107 ESTATE

108 FARM

109 FIELD

110 FIELDS

111 FLATS

112 FOLLY

113 FOREST

114 FORT

Page 93: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 91

DESCRIPTOR_ID NAME

115 GARDEN

116 GARDENS

117 GARTH

118 GATE

119 GLADE

120 GLEN

121 GRANGE

122 GREEN

123 GROUND

124 GROVE

125 HALL

126 HALTING SITE

127 HAMLET

128 HARBOUR

129 HAVEN

130 HEATH

131 HEIGHTS

132 HILL

133 HILLS

134 HOME

135 HOSPITAL

136 HOUSE

137 HURST

138 INDUSTRIAL COMPLEX

139 INDUSTRIAL ESTATE

140 INDUSTRIAL PARK

141 ISLAND

142 LANDS

143 LANE

144 LAURELS

145 LAWN

146 LAWNS

147 LOCK

Page 94: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 92

DESCRIPTOR_ID NAME

148 LODGE

149 LODGES

150 MALL

151 MANOR

152 MANSIONS

153 MARKET

154 MEAD

155 MEADOW

156 MEADOWS

157 MEWS

158 MILL

159 MOUNT

160 NORTH

161 NUMBER

162 OAKS

163 OPENING

164 ORCHARD

165 PARADE

166 PARK

167 PARKS

168 PASSAGE

169 PATH

170 PIER

171 PINES

172 PLACE

173 POINT

174 PORT

175 PROMENADE

176 QUAY

177 RIDGE

178 RING

179 RISE

180 ROAD

Page 95: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 93

DESCRIPTOR_ID NAME

181 ROCK

182 ROUND

183 ROW

184 SCHOOL

185 SHOPPING CENTRE

186 SIDE

187 SLOPES

188 SPINNEY

189 SPRINGS

190 SQUARE

191 STATION

192 STEPS

193 STRAND

194 STREET

195 TERRACE

196 THICKET

197 TOWER

198 TRACK

199 TURN

200 VALE

201 VALLEY

202 VIEW

203 VILLA

204 VILLAGE

205 VILLAS

206 VILLE

207 WALK

208 WAY

209 WELL

210 WHARF

211 WOOD

212 WOODS

213 YARD

Page 96: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 94

4.3 Appendix 3 – Postal Address View

4.3.1 Postal Address View

This view combines a view of the address data (v_ecad_model) with the corresponding address

line columns 1 to 9, which are constructed using a user-defined function (f_get_address_cols):

create view dbo.v_postal_address_view as SELECT

[ECAD_ID], [ORGANISATION_ID], [ADDRESS_POINT_ID] ,[BUILDING_GROUP_ID],[PRIMARY_THOROUGHFARE_ID],[SECONDARY_THOROUGHFARE_ID] ,[PRIMARY_LOCALITY_ID],[SECONDARY_LOCALITY_ID] ,[POST_TOWN_ID], [POST_COUNTY_ID] ,[EIRCODE], [EIRCODE_DISPLAY] ,cols.ADDR_LINE_1, cols.ADDR_LINE_2, cols.ADDR_LINE_3, cols.ADDR_LINE_4 ,cols.ADDR_LINE_5, cols.ADDR_LINE_6, cols.ADDR_LINE_7, cols.ADDR_LINE_8 ,cols.ADDR_LINE_9 ,irish_cols.ADDR_LINE_1 as IRISH_ADDR_LINE_1 ,irish_cols.ADDR_LINE_2 as IRISH_ADDR_LINE_2 ,irish_cols.ADDR_LINE_3 as IRISH_ADDR_LINE_3 ,irish_cols.ADDR_LINE_4 as IRISH_ADDR_LINE_4 ,irish_cols.ADDR_LINE_5 as IRISH_ADDR_LINE_5 ,irish_cols.ADDR_LINE_6 as IRISH_ADDR_LINE_6 ,irish_cols.ADDR_LINE_7 as IRISH_ADDR_LINE_7 ,irish_cols.ADDR_LINE_8 as IRISH_ADDR_LINE_8 ,irish_cols.ADDR_LINE_8 as IRISH_ADDR_LINE_9

from dbo.v_ecad_model em -- append 9 address columns cols.ADDR_LINE_1 to cols.ADDR_LINE_9

cross apply dbo.f_get_address_cols(

EM.ECAD_ID ,EM.DEPARTMENT ,EM.DEPARTMENT_REQUIRED ,EM.ORGANISATION_NAME ,EM.ORGANISATION_NAME_REQUIRED ,EM.SUB_BUILDING_NAME ,EM.SUB_BUILDING_NAME_FULL_ADDRESS_LINE ,EM.SUB_BUILDING_NAME_REQUIRED ,EM.BUILDING_NAME ,EM.BUILDING_NAME_REQUIRED ,EM.BUILDING_NUMBER ,EM.BUILDING_NUMBER_REQUIRED ,EM.BUILDING_GROUP_NAME ,EM.BUILDING_GROUP_REQUIRED ,EM.PRIMARY_THOROUGHFARE ,EM.PRIMARY_THOROUGHFARE_REQUIRED ,EM.SECONDARY_THOROUGHFARE ,EM.SECONDARY_THOROUGHFARE_REQUIRED ,EM.PRIMARY_LOCALITY ,EM.PRIMARY_LOCALITY_REQUIRED ,EM.SECONDARY_LOCALITY ,EM.SECONDARY_LOCALITY_REQUIRED ,EM.POST_TOWN ,EM.POST_TOWN_REQUIRED ,EM.POST_COUNTY ,EM.POST_COUNTY_REQUIRED ,EM.EIRCODE_DISPLAY ) cols

Page 97: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 95

-- append 9 Irish address columns cols.ADDR_LINE_1 to cols.ADDR_LINE_9

cross apply dbo.f_get_address_cols ( EM.ECAD_ID ,EM.DEPARTMENT_IRISH ,EM.DEPARTMENT_REQUIRED ,EM.ORGANISATION_NAME_IRISH ,EM.ORGANISATION_NAME_REQUIRED ,EM.SUB_BUILDING_NAME_IRISH ,EM.SUB_BUILDING_NAME_FULL_ADDRESS_LINE ,EM.SUB_BUILDING_NAME_REQUIRED ,EM.BUILDING_NAME_IRISH ,EM.BUILDING_NAME_REQUIRED ,EM.BUILDING_NUMBER ,EM.BUILDING_NUMBER_REQUIRED ,EM.BUILDING_GROUP_NAME_IRISH ,EM.BUILDING_GROUP_REQUIRED ,EM.PRIMARY_THOROUGHFARE_IRISH ,EM.PRIMARY_THOROUGHFARE_REQUIRED ,EM.SECONDARY_THOROUGHFARE_IRISH ,EM.SECONDARY_THOROUGHFARE_REQUIRED ,EM.PRIMARY_LOCALITY_IRISH ,EM.PRIMARY_LOCALITY_REQUIRED ,EM.SECONDARY_LOCALITY_IRISH ,EM.SECONDARY_LOCALITY_REQUIRED ,EM.POST_TOWN_IRISH ,EM.POST_TOWN_REQUIRED ,EM.POST_COUNTY_IRISH ,EM.POST_COUNTY_REQUIRED ,EM.EIRCODE_DISPLAY ) irish_cols

Page 98: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 96

4.3.2 Postal Address Model View

A model view is produced by joining together those ECAD model tables which are required to construct addresses. This query encapsulates the rules of the model:

CREATE VIEW dbo.v_ecad_model

as

select b.routing_key_id, rk.routing_key_name routing_key, IIF(NOT sap.SUB_ADDRESS_POINT_ID IS NULL, sap.SUB_ADDRESS_POINT_ID,

IIF(NOT org.ORGANISATION_ID IS NULL, org.ORGANISATION_ID, ap.address_point_id)

) as ECAD_ID -- The ECAD_ID identifies an ‘A’ddress Point, ‘S’ub-Address Point or ‘O’rganisation , IIF(NOT sap.SUB_ADDRESS_POINT_ID IS NULL, 'S'

,IIF(NOT org.ORGANISATION_ID IS NULL, 'O', 'A') ) as ECAD_ID_IS_FROM , b.BUILDING_ID , ap.ADDRESS_POINT_ID , org.ORGANISATION_ID , sap.SUB_ADDRESS_POINT_ID , org.NAME as ORGANISATION_NAME , org.DEPARTMENT , org.NAME_IRISH as ORGANISATION_NAME_IRISH , org.DEPARTMENT_IRISH -- Determine SUB_BUILDING_NAME depending on single/multiple occupancy and whether residential -- or commercial , IIF(NOT sap.SUB_ADDRESS_POINT_ID IS NULL, sap.NAME,

IIF(NOT org.ORGANISATION_ID IS NULL AND NOT org.SUB_ADDRESS_NAME IS NULL, org.SUB_ADDRESS_NAME, ap.NAME ) ) as SUB_BUILDING_NAME

, IIF(NOT sap.SUB_ADDRESS_POINT_ID IS NULL, sap.NAME_IRISH, IIF(NOT org.ORGANISATION_ID IS NULL AND

NOT org.SUB_ADDRESS_NAME_IRISH IS NULL, org.SUB_ADDRESS_NAME_IRISH, ap.NAME_IRISH )

) as SUB_BUILDING_NAME_IRISH -- Does the SUB_BUILDING_NAME appear on a line by itself or does it prefix the next address element ? , IIF(NOT sap.SUB_ADDRESS_POINT_ID IS NULL, sap.FULL_ADDRESS_LINE, IIF(NOT org.ORGANISATION_ID IS NULL, org.FULL_ADDRESS_LINE, ap.FULL_ADDRESS_LINE)

) as SUB_BUILDING_NAME_FULL_ADDRESS_LINE , b.name as BUILDING_NAME , b.name_irish as BUILDING_NAME_IRISH , b.number as BUILDING_NUMBER , bg.name as BUILDING_GROUP_NAME , bg.name_irish as BUILDING_GROUP_NAME_IRISH , th1.name as PRIMARY_THOROUGHFARE , th1.name_irish as PRIMARY_THOROUGHFARE_IRISH , th2.name as SECONDARY_THOROUGHFARE , th2.name_irish as SECONDARY_THOROUGHFARE_IRISH , l1.name as PRIMARY_LOCALITY , l1.name_irish as PRIMARY_LOCALITY_IRISH , l2.name as SECONDARY_LOCALITY , l2.name_irish as SECONDARY_LOCALITY_IRISH , pt.name as POST_TOWN , pt.name_irish as POST_TOWN_IRISH , c.name as POST_COUNTY , c.name_irish as POST_COUNTY_IRISH , ap.EIRCODE

Page 99: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 97

-- The Eircode has 8 digits, 3 for routing key, a space, then the 4-digit unique identifier , substring(ap.EIRCODE,1,3) +' '+ substring(ap.EIRCODE,4,4) as EIRCODE_DISPLAY -- flags determine if building address elements are required for individual address points , org.ORGANISATION_NAME_REQUIRED , IIF(NOT org.ORGANISATION_ID IS NULL, org.BUILDING_GROUP_REQUIRED, b.BUILDING_GROUP_REQUIRED) as BUILDING_GROUP_REQUIRED , IIF(NOT org.ORGANISATION_ID IS NULL, org.BUILDING_NAME_REQUIRED,

b.BUILDING_NAME_REQUIRED) as BUILDING_NAME_REQUIRED , b.PRIMARY_THOROUGHFARE_REQUIRED , b.SECONDARY_THOROUGHFARE_REQUIRED , b.PRIMARY_LOCALITY_REQUIRED , b.SECONDARY_LOCALITY_REQUIRED , b.POST_TOWN_REQUIRED , b.POST_COUNTY_REQUIRED , org.DEPARTMENT_REQUIRED , IIF(NOT sap.SUB_ADDRESS_POINT_ID IS NULL, sap.SUB_BUILDING_NAME_REQUIRED,

IIF(NOT org.ORGANISATION_ID IS NULL, org.SUB_BUILDING_NAME_REQUIRED, ap.SUB_BUILDING_NAME_REQUIRED)

) SUB_BUILDING_NAME_REQUIRED , b.BUILDING_NUMBER_REQUIRED , b.ADDRESS_TYPE_ID building_address_type_id , b.BUILDING_GROUP_ID , b.PRIMARY_THOROUGHFARE_ID , b.SECONDARY_THOROUGHFARE_ID , b.PRIMARY_LOCALITY_ID , b.SECONDARY_LOCALITY_ID , b.POST_TOWN_ID , b.POST_COUNTY_ID , ap.address_type_id ap_address_type_id , ap.building_id ap_building_id , ap.name ap_name , org.address_type_id org_address_type_id from dbo.ADDRESS_POINT ap

inner join dbo.BUILDING b on b.building_id = ap.building_id

inner join dbo.ROUTING_KEY rk on rk.routing_key_id = b.routing_key_id

left outer join dbo.ORGANISATION org on org.ADDRESS_POINT_ID = ap.ADDRESS_POINT_ID

left outer join dbo.SUB_ADDRESS_POINT sap on sap.ADDRESS_POINT_ID = ap.ADDRESS_POINT_ID

left outer join dbo.BUILDING_GROUP bg on bg.BUILDING_GROUP_ID = b.BUILDING_GROUP_ID

left outer join dbo.THOROUGHFARE th1 on th1.THOROUGHFARE_ID = b.PRIMARY_THOROUGHFARE_ID

left outer join dbo.THOROUGHFARE th2 on th2.THOROUGHFARE_ID = b.SECONDARY_THOROUGHFARE_ID

left outer join dbo.LOCALITY l1 on l1.LOCALITY_ID = b.PRIMARY_LOCALITY_ID

left outer join dbo.LOCALITY l2 on l2.LOCALITY_ID = b.SECONDARY_LOCALITY_ID

left outer join dbo.POST_TOWN pt on pt.POST_TOWN_ID = b.POST_TOWN_ID

left outer join dbo.COUNTY c on c.COUNTY_ID = b.POST_COUNTY_ID

where not ap.EIRCODE is null

Page 100: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 98

4.1.3 SQL Functions to get Address Lines 1 to 9

4.1.3.1 f_get_address_lines

The following is an implementation of the f_get_address_lines function for SQL Server:

CREATE FUNCTION dbo.f_get_address_lines (

@ecad_id bigint ,@department nvarchar(500) ,@DEPARTMENT_REQUIRED varchar(1) ,@organisation_name nvarchar(500) ,@ORGANISATION_NAME_REQUIRED nvarchar(1) ,@SUB_BUILDING_NAME nvarchar(500) ,@SUB_BUILDING_NAME_FULL_ADDRESS_LINE varchar(1) ,@SUB_BUILDING_NAME_REQUIRED nvarchar(1) ,@building_name nvarchar(60) ,@BUILDING_NAME_REQUIRED nvarchar(1) ,@building_number nvarchar(40) ,@BUILDING_NUMBER_REQUIRED nvarchar(1) ,@BUILDING_GROUP_NAME nvarchar(80) ,@BUILDING_GROUP_REQUIRED nvarchar(1) ,@PRIMARY_THOROUGHFARE nvarchar(80) ,@PRIMARY_THOROUGHFARE_REQUIRED varchar(1) ,@SECONDARY_THOROUGHFARE nvarchar(80) ,@SECONDARY_THOROUGHFARE_REQUIRED varchar(1) ,@PRIMARY_LOCALITY nvarchar(80) ,@PRIMARY_LOCALITY_REQUIRED varchar(1) ,@SECONDARY_LOCALITY nvarchar(80) ,@SECONDARY_LOCALITY_REQUIRED varchar(1) ,@POST_TOWN nvarchar(80) ,@POST_TOWN_REQUIRED varchar(1) ,@COUNTY nvarchar(80) ,@COUNTY_REQUIRED varchar(1) ,@EIRCODE_DISPLAY varchar(8)

) RETURNS @returntable TABLE ( addr_ecad_id bigint ,addr_line_num INT IDENTITY(1,1) ,address_line nvarchar(200) ) AS BEGIN

declare @prefix nvarchar(500) = '';

if (@DEPARTMENT_REQUIRED = 'Y') INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @department; if (@ORGANISATION_NAME_REQUIRED = 'Y') INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @organisation_name; if (@SUB_BUILDING_NAME_REQUIRED = 'Y') begin if(@SUB_BUILDING_NAME_FULL_ADDRESS_LINE = 'Y') INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @SUB_BUILDING_NAME + ' '; else select @prefix = @SUB_BUILDING_NAME + ' ';

Page 101: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 99

end; if (@BUILDING_NAME_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix+@BUILDING_NAME; set @prefix = ''; end;

if (@BUILDING_NUMBER_REQUIRED = 'Y') begin set @prefix = @building_number + ' '; end if (@BUILDING_GROUP_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + @BUILDING_GROUP_NAME; set @prefix = ''; end; if (@PRIMARY_THOROUGHFARE_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + @PRIMARY_THOROUGHFARE; set @prefix = '';

end; if (@SECONDARY_THOROUGHFARE_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + @SECONDARY_THOROUGHFARE; set @prefix = ''; end; if (@PRIMARY_LOCALITY_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + @PRIMARY_LOCALITY; set @prefix = ''; end; if (@SECONDARY_LOCALITY_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + @SECONDARY_LOCALITY; set @prefix = ''; end; if (@POST_TOWN_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + @POST_TOWN; set @prefix = ''; end; if (@COUNTY_REQUIRED = 'Y') begin INSERT @returntable (addr_ecad_id, address_line)

SELECT @ecad_id, @prefix + 'CO. ' + @COUNTY; set @prefix = ''; end;

INSERT @returntable (addr_ecad_id, address_line)

Page 102: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 100

SELECT @ecad_id, @EIRCODE_DISPLAY; RETURN

END

Note that this function is invoked by the next function below f_get_address_cols which

converts the address lines to columns.

4.1.3.2 f_get_address_cols

The following is an implementation of the f_get_address_cols function for SQL Server :

CREATE FUNCTION dbo.f_get_address_cols( @ecad_id bigint

,@department nvarchar(500) ,@DEPARTMENT_REQUIRED varchar(1) ,@organisation_name nvarchar(500) ,@ORGANISATION_NAME_REQUIRED nvarchar(1) ,@SUB_BUILDING_NAME nvarchar(500) ,@SUB_BUILDING_NAME_FULL_ADDRESS_LINE varchar(1) ,@SUB_BUILDING_NAME_REQUIRED nvarchar(1) ,@building_name nvarchar(60) ,@BUILDING_NAME_REQUIRED nvarchar(1) ,@building_number nvarchar(40) ,@BUILDING_NUMBER_REQUIRED nvarchar(1) ,@BUILDING_GROUP_NAME nvarchar(80) ,@BUILDING_GROUP_REQUIRED nvarchar(1) ,@PRIMARY_THOROUGHFARE nvarchar(80) ,@PRIMARY_THOROUGHFARE_REQUIRED varchar(1) ,@SECONDARY_THOROUGHFARE nvarchar(80) ,@SECONDARY_THOROUGHFARE_REQUIRED varchar(1) ,@PRIMARY_LOCALITY nvarchar(80) ,@PRIMARY_LOCALITY_REQUIRED varchar(1) ,@SECONDARY_LOCALITY nvarchar(80) ,@SECONDARY_LOCALITY_REQUIRED varchar(1) ,@POST_TOWN nvarchar(80) ,@POST_TOWN_REQUIRED varchar(1) ,@COUNTY nvarchar(80) ,@COUNTY_REQUIRED varchar(1) ,@POSTCODE_DISPLAY varchar(8) ) RETURNS TABLE AS RETURN ( select @ecad_id addr_ecad_id, pivot_lines.* from ( select 'addr_line_'+cast(addr_line_num as varchar(2)) as col

, address_line from dbo.f_get_address_lines( @ecad_id ,@department ,@DEPARTMENT_REQUIRED ,@organisation_name ,@ORGANISATION_NAME_REQUIRED ,@SUB_BUILDING_NAME

Page 103: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 101

,@SUB_BUILDING_NAME_FULL_ADDRESS_LINE ,@SUB_BUILDING_NAME_REQUIRED ,@building_name ,@BUILDING_NAME_REQUIRED ,@building_number ,@BUILDING_NUMBER_REQUIRED ,@BUILDING_GROUP_NAME ,@BUILDING_GROUP_REQUIRED ,@PRIMARY_THOROUGHFARE ,@PRIMARY_THOROUGHFARE_REQUIRED ,@SECONDARY_THOROUGHFARE ,@SECONDARY_THOROUGHFARE_REQUIRED ,@PRIMARY_LOCALITY ,@PRIMARY_LOCALITY_REQUIRED ,@SECONDARY_LOCALITY ,@SECONDARY_LOCALITY_REQUIRED ,@POST_TOWN ,@POST_TOWN_REQUIRED ,@COUNTY ,@COUNTY_REQUIRED ,@POSTCODE_DISPLAY ) ) lines pivot (max(address_line) for col in ( addr_line_1, addr_line_2, addr_line_3, addr_line_4, addr_line_5, addr_line_6, addr_line_7, addr_line_8, addr_line_9 ) ) as pivot_lines )

Note that this function invokes the function f_get_address_lines before converting the address lines to columns.

Page 104: ECAD PRODUCT GUIDE - Ossian Smyth

EIRCODE ADDRESS DATABASE PRODUCT GUIDE EDITION 1, VERSION 7 102

Contact Information

Contact our Customer Account Management team if you would like more information on the products offered by Eircode, email [email protected]

Your Comments On This Guide

If you have any comments on this Eircode Address Database Product Guide Edition 1, Version 7 we would be pleased to hear from you. Email your feedback to [email protected] and type ‘ECAD Product Guide enquiry’ in the subject line.

Disclaimer

Eircode is a trademark/brand of the Postcode Management Licence Holder (PMLH) operated by

Capita Business Support Services (Ireland) Limited. This guide and the information contained in

it are provided ‘as is’. Eircode, PMLH or Capita Business Support Services(Ireland) does not

represent or warrant that this guide will be error-free or will meet any particular criteria of

performance or quality.

Except as expressly set out in this document no representations, warranties or conditions are

given or assumed by Eircode, PMLH or Capita Business Support Services(Ireland) or any other

person in respect of any information or assistance which they provide or have provided, directly

or indirectly to you. And any such representations, warranties or conditions are excluded to the

fullest extent permitted by applicable law

Eircode, PMLH or Capita Business Support Services(Ireland) excludes all liability for any loss

rising out of or relating to the use of this guide or the information in it, whether direct, indirect,

consequential or special or howsoever arising.

Use of the Eircode Address Database and documentation is subject to a separate Licence

Agreement and as such must be used in accordance with its terms and conditions.

The reader must be aware of their own data protection obligations when using Eircode in

conjunction with customer data. When using Eircode the user must ensure they are fully

compliant with the relevant legislations regarding data protection both in their direct use and

any use via 3rd parties.