Appendix B – G-NAF Data Model ============================= .. raw:: latex \pagebreak .. graphviz:: digraph G { fontname="ROBOTO" fontsize="10pt" node [fontname="ROBOTO" fontsize="8pt"] edge [fontname="ROBOTO" fontsize="8pt"] overlap = false rankdir=LR address_detail [shape=plain label=<
ADDRESS_DETAIL
PK ADDRESS_DETAIL_PID: varchar (15)
DATE_CREATED: date
DATE_LAST_MODIFIED: date
DATE_RETIRED: date
BUILDING_NAME: varchar (200)
LOT_NUMBER_PREFIX: varchar (2)
LOT_NUMBER: varchar (5)
LOT_NUMBER_SUFFIX: varchar (2)
FK FLAT_TYPE_CODE: varchar (7)
FLAT_NUMBER_PREFIX: varchar (2)
FLAT_NUMBER: number (5)
FLAT_NUMBER_SUFFIX: varchar (2)
FK LEVEL_TYPE_CODE: varchar (4)
LEVEL_NUMBER_PREFIX: varchar (2)
LEVEL_NUMBER: number (3)
LEVEL_NUMBER_SUFFIX: varchar (2)
NUMBER_FIRST_PREFIX: varchar (3)
NUMBER_FIRST: number (6)
NUMBER_FIRST_SUFFIX: varchar (2)
NUMBER_LAST_PREFIX: varchar (2)
NUMBER_LAST: number (6)
NUMBER_LAST_SUFFIX: varchar (2)
FK STREET_LOCALITY_PID: varchar (15)
LOCATION_DESCRIPTION: varchar (2)
LOCALITY_PID: varchar (2)
ALIAS_PRINCIPAL: char (1)
POSTCODE: varchar (4)
PRIVATE_STREET: varchar (75)
LEGAL_PARCEL_ID: varchar (20)
CONFIDENCE: number (1)
ADDRESS_SITE_PID: varchar (15)
FK LEVEL_GEOCODED_CODE: number (2)
PROPERTY_PID: varchar (15)
GNAF_PROPERTY_PID: varchar (15)
PRIMARY_SECONDARY: varchar (1)
>]; address_type_aut [shape=plain label=<
ADDRESS_TYPE_AUT
PK CODE: varchar (8)
NAME: varchar (50)
DESCRIPTION: varchar (30)
>]; geocoded_level_type_aut [shape=plain label=<
GEOCODED_LEVEL_TYPE_AUT
PK CODE: varchar (2)
NAME: varchar (50)
DESCRIPTION: varchar (70)
>]; flat_type_aut [shape=plain label=<
FLAT_TYPE_AUT
PK CODE: varchar (7)
NAME: varchar (50)
DESCRIPTION: varchar (30)
>]; level_type_aut [shape=plain label=<
LEVEL_TYPE_AUT
PK CODE: varchar (4)
NAME: varchar (50)
DESCRIPTION: varchar (30)
>]; address_site [shape=plain label=<
ADDRESS_SITE
PK ADDRESS_SITE_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK ADDRESS_TYPE: varchar (8)
ADDRESS_ALIAS: varchar (200)
>]; address_alias [shape=plain label=<
ADDRESS_ALIAS
PK ADDRESS_ALIAS_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK PRINCIPAL_PID: varchar (15)
FK ALIAS_PID: varchar (15)
FK ALIAS_TYPE_CODE: varchar (10)
ALIAS_COMMENT: varchar (200)
>]; address_alias_type_aut [shape=plain label=<
ADDRESS_ALIAS_TYPE_AUT
PK CODE: varchar (10)
NAME: varchar (50)
DESCRIPTION: varchar (30)
>]; locality [shape=plain label=<
LOCALITY
PK LOCALITY_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK LOCALITY_NAME: varchar (100)
FK PRIMARY_POSTCODE: varchar (4)
LOCALITY_CLASS_CODE: char (1)
STATE_PID: varchar (15)
GNAF_LOCALITY_PID: varchar (15)
GNAF_RELIABILITY_CODE: varchar (1)
>]; locality_class_aut [shape=plain label=<
LOCALITY_CLASS_AUT
PK CODE: char (1)
NAME: varchar (50)
DESCRIPTION: varchar (200)
>]; street_locality [shape=plain label=<
STREET_LOCALITY
PK STREET_LOCALITY_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK STREET_CLASS_CODE: char (1)
STREET_NAME: varchar (100)
FK STREET_TYPE_CODE: varchar (15)
FK STREET_SUFFIX_CODE: varchar (15)
FK LOCALITY_PID: varchar (15)
GNAF_STREET_PID: varchar (15)
GNAF_STREET_CONFIDENCE: number (1)
FK GNAF_RELIABILITY_CODE: varchar (1)
>]; street_class_aut [shape=plain label=<
STREET_CLASS_AUT
PK CODE: char (1)
NAME: varchar (50)
DESCRIPTION: varchar (200)
>]; street_type_aut [shape=plain label=<
STREET_TYPE_AUT
PK CODE: char (1)
NAME: varchar (50)
DESCRIPTION: varchar (15)
>]; street_locality_alias [shape=plain label=<
STREET_LOCALITY_ALIAS
PK STREET_LOCALITY_ALIAS_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK STREET_LOCALITY_PID: varchar (15)
STREET_NAME: varchar (100)
FK STREET_TYPE_CODE: varchar (15)
FK STREET_SUFFIX_CODE: varchar (15)
FK ALIAS_TYPE_CODE: varchar (10)
>]; street_suffix_aut [shape=plain label=<
STREET_SUFFIX_AUT
PK CODE: varchar (15)
NAME: varchar (50)
DESCRIPTION: varchar (30)
>]; street_locality_alias_type_aut [shape=plain label=<
STREET_LOCALITY_ALIAS_TYPE_AUT
PK CODE: char (1)
NAME: varchar (50)
DESCRIPTION: varchar (200)
>]; street_locality_point [shape=plain label=<
STREET_LOCALITY_POINT
PK STREET_LOCALITY_POINT_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK STREET_LOCALITY_PID: varchar (15)
BOUNDARY_EXTENT: number (7)
PLAINIMETRIC_ACCURACY: number (12)
GEOMETRY: Point
LONGITUDE: varchar (10,8)
LATITUDE: number (10,8)
>]; locality_neighbour [shape=plain label=<
LOCALITY_NEIGHBOUR
PK LOCALITY_NEIGHBOUR_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK LOCALITY_PID: varchar (15)
FK NEIGHBOUR_LOCALITY_PID: varchar (15)
>]; state [shape=plain label=<
STATE
PK STATE_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK STATE_NAME: varchar (50)
FK STATE_ABBREVIATION: varchar (3)
>]; locality_alias [shape=plain label=<
LOCALITY_ALIAS
PK LOCALITY_ALIAS_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK LOCALITY_PID: varchar (15)
NAME: varchar (100)
POSTCODE: varchar (4)
ALIAS_TYPE_CODE: varchar (10)
FK STATE_PID: varchar (15)
>]; locality_alias_type_aut [shape=plain label=<
LOCALITY_ALIAS_TYPE_AUT
PK CODE: char (10)
NAME: varchar (50)
DESCRIPTION: varchar (100)
>]; locality_point [shape=plain label=<
LOCALITY_POINT
PK LOCALITY_POINT_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK LOCALITY_PID: varchar (15)
FK PLAINIMETRIC_ACCURACY: number (12)
FK GEOMETRY: Point
FK LONGITUDE: varchar (10,8)
LATITUDE: number (10,8)
>]; address_default_geocode [shape=plain label=<
ADDRESS_DEFAULT_GEOCODE
PK ADDRESS_DEFAULT_GEOCODE_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK ADDRESS_DETAIL_PID: varchar (15)
FK GEOCODE_TYPE_CODE: varchar (4)
FK GEOMETRY: Point
FK LONGITUDE: varchar (11,8)
LATITUDE: number (10,8)
>]; geocode_type_aut [shape=plain label=<
GEOCODE_TYPE_AUT
PK CODE: varchar (4)
NAME: varchar (50)
DESCRIPTION: varchar (250)
>]; address_site_geocode [shape=plain label=<
ADDRESS_SITE_GEOCODE
PK ADDRESS_SITE_GEOCODE_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK ADDRESS_SITE_PID: varchar (15)
GEOCODE_SITE_NAME: varchar (200)
GEOCODE_SITE_DESCRIPTION: varchar (45)
FK GEOCODE_TYPE_CODE: varchar (4)
FK RELIABILITY_CODE: varchar (1)
FK BOUNDARY_EXTENT: number (1)
FK PLAINIMETRIC_ACCURACY: number (12)
FK ELEVATION: number (7)
FK GEOMETRY: Point
FK LONGITUDE: varchar (11,8)
LATITUDE: number (10,8)
>]; mb_match_code_aut [shape=plain label=<
MB_MATCH_CODE_AUT
PK CODE: varchar (15)
NAME: varchar (100)
DESCRIPTION: varchar (250)
>]; address_mesh_block_2016 [shape=plain label=<
ADDRESS_MESH_BLOCK_2016
PK ADDRESS_MESH_BLOCK_2016_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK ADDRESS_DETAIL_PID: varchar (15)
FK MB_2016_PID: varchar (15)
FK MB_MATCH_CODE: varchar (15)
>]; address_mesh_block_2021 [shape=plain label=<
ADDRESS_MESH_BLOCK_2021
PK ADDRESS_MESH_BLOCK_2021_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK ADDRESS_DETAIL_PID: varchar (15)
FK MB_2021_PID: varchar (15)
FK MB_MATCH_CODE: varchar (15)
>]; mb_2016 [shape=plain label=<
MB_2016
PK MB_2016_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK MB_2016_CODE: varchar (15)
>]; mb_2021 [shape=plain label=<
MB_2021
PK MB_2021_PID: varchar (15)
DATE_CREATED: date
DATE_RETIRED: date
FK MB_2021_CODE: varchar (15)
>]; address_feature [shape=plain label=<
ADDRESS_FEATURE
PK ADDRESS_FEATURE_ID: varchar (16)
DATE_ADDRESS_DETAIL_CREATED: date
DATE_ADDRESS_DETAIL_RETIRED: date
FK ADDRESS_DETAIL_PID: varchar (15)
FK ADDRESS_CHANGE_TYPE: varchar (50)
FK ADDRESS_FEATURE_PID: varchar (16)
>]; address_change_type_aut [shape=plain label=<
ADDRESS_CHANGE_TYPE_AUT
PK CODE: varchar (50)
NAME: varchar (100)
DESCRIPTION: varchar (500)
>]; primary_secondary [shape=plain label=<
PRIMARY_SECONDARY
PK PRIMARY_SECONDARY_PID: varchar (16)
DATE_CREATED: date
DATE_RETIRED: date
FK PRIMARY_PID: varchar (15)
FK SECONDARY_PID: varchar (15)
FK PS_JOIN_TYPE_CODE: number (2)
PS_JOIN_TYPE_COMMENT: varchar (500)
>]; ps_join_type_aut [shape=plain label=<
PS_JOIN_TYPE_AUT
PK CODE: varchar (2)
NAME: varchar (50)
DESCRIPTION: varchar (500)
>]; address_detail -> flat_type_aut [constraint=none arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot] address_detail -> level_type_aut [constraint=none arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot] address_detail -> geocoded_level_type_aut [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot ] flat_type_aut -> address_detail [style=invis ] level_type_aut -> address_detail [style=invis] geocoded_level_type_aut -> address_detail [style=invis] address_detail -> address_site [ arrowhead=nonetee dir=both arrowtail=crownoneodot ] address_site -> address_type_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] address_detail -> address_alias [arrowhead=crownoneodot dir=both arrowtail=nonetee ] address_alias -> address_alias_type_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] address_detail -> locality [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot ] locality -> locality_class_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] address_detail -> street_locality [arrowhead=nonetee dir=both arrowtail=crownoneodot ] locality -> street_locality [arrowhead=crownoneodot dir=both arrowtail=nonetee ] street_locality -> street_class_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] street_locality -> street_type_aut [arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot ] street_locality_alias -> street_locality [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot] street_locality -> street_locality_alias [style=invis] street_locality_alias -> street_type_aut [arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot ] street_locality_alias -> street_suffix_aut [arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot ] street_locality -> street_suffix_aut [arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot ] street_locality_alias -> street_locality_alias_type_aut [arrowhead=noneteenoneodot dir=both arrowtail=crownoneodot ] street_locality -> street_locality_point [arrowhead=noneteenoneodot dir=both arrowtail=nonetee ] locality -> locality_neighbour[constraint=none arrowhead=noneteenoneodot dir=both arrowtail=nonetee ] locality_neighbour -> locality[style=invis] locality -> state [arrowhead=nonetee dir=both arrowtail=crownoneodot ] locality -> locality_alias [arrowhead=crownoneodot dir=both arrowtail=nonetee ] locality_alias -> state [arrowhead=nonetee dir=both arrowtail=crownoneodot ] locality_alias -> locality_alias_type_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] locality -> locality_point [arrowhead=noneteenoneodot dir=both arrowtail=nonetee ] address_detail -> address_default_geocode [arrowhead=nonetee dir=both arrowtail=nonetee ] address_default_geocode -> geocode_type_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] address_site_geocode -> geocode_type_aut [arrowhead=nonetee dir=both arrowtail=crownoneodot ] address_site -> address_site_geocode [arrowhead=none dir=both arrowtail=none ] address_detail -> address_mesh_block_2021 [constraint=none arrowhead=crownoneodot dir=both arrowtail=nonetee] address_mesh_block_2021 -> mb_2021 [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot] mb_2021 -> address_mesh_block_2021 [style=invis] address_mesh_block_2021 -> flat_type_aut [style=invis] address_mesh_block_2021 -> mb_match_code_aut [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot] address_detail -> address_mesh_block_2016 [constraint=none arrowhead=crownoneodot dir=both arrowtail=nonetee] address_mesh_block_2016 -> flat_type_aut [style=invis] address_mesh_block_2016 -> mb_2016 [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot] mb_2016 -> address_mesh_block_2016 [style=invis] address_mesh_block_2016 -> mb_match_code_aut[constraint=none] mb_2016 -> locality [style=invis] address_detail -> address_feature [constraint=none arrowhead=crownoneodot dir=both arrowtail=nonetee] address_feature -> address_change_type_aut [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot] address_detail -> primary_secondary [constraint=none arrowhead=crownoneodot dir=both arrowtail=nonetee] primary_secondary -> address_detail [style=invis] primary_secondary -> ps_join_type_aut [constraint=none arrowhead=nonetee dir=both arrowtail=crownoneodot] ps_join_type_aut -> primary_secondary [style=invis] locality -> address_detail [style=invis] {rank=same; address_mesh_block_2016; address_mesh_block_2021; mb_match_code_aut; flat_type_aut; level_type_aut; geocoded_level_type_aut; } mb_match_code_aut -> locality [style=invis] mb_2016 -> mb_match_code_aut [style=invis] mb_2021 -> mb_match_code_aut [style=invis] address_feature -> address_detail [style=invis] locality_neighbour -> locality[style=invis] {rank=same; locality_neighbour;locality;} {rank=same; address_detail ;locality;} subgraph cluster_legend { graph[style="" label="Legend" ] legend [shape=plain label=<
Spatial Attribute Table
Textual Attribute Table
Authority Code Table
>] key [shape=plain label=<
Zero or Many
One or Many
Zero or One
One
>] key2 [shape=plain label=<
>] key:i1 -> key2:i1 [arrowhead=crownoneodot] key:i2 -> key2:i2 [arrowhead=crownonetee] key:i3 -> key2:i3 [arrowhead=noneteenoneodot] key:i4 -> key2:i4 [arrowhead=nonetee] legend -> key[style=invis] } }