@@ -83,37 +83,45 @@ extra_characters = | " " | "-" ;
83
83
numbers = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ;
84
84
extended_letters = letters | extra_characters ;
85
85
extended_numbers = numbers | extra_characters ;
86
- prefix = extended_letters
87
- prefix_spaced = prefix, space
88
- level_number = extended_numbers | extended_numbers ;
86
+ extended_letters_and_numbers = extended_letters | extended_numbers
87
+
88
+ geographical_object_name = extended_letters_and_numbers
89
+ level_number = extended_numbers ;
89
90
level = "Level" space level_number
90
- unit_number = extended_numbers
91
- unit = "Unit" space unit_number
92
- street_number = extended_numbers
93
- street_name = extended_letters
91
+ unit_indicator = "Unit" space
92
+ subaddress_number_prefix = extended_letters
93
+ subaddress_number_number = extended_numbers
94
+ subaddress_number_suffix = extended_letters
95
+ street_number_prefix = extended_letters
96
+ street_number_number = extended_numbers
97
+ street_number_suffix = extended_letters
98
+ street_label = extended_letters_and_numbers
99
+
94
100
locality = extended_letters
95
101
state_or_territory = extended_letters
96
102
country = extended_letters
97
103
postcode = numbers
98
- suffix = extended_letters
99
- suffix_spaced = space, suffix
100
104
101
- address = [building_name NEWLINE]
102
- [property_name NEWLINE]
103
- [level space] [unit comma space] [street_number space] street_name NEWLINE
105
+ subaddress = level unit_indicator subaddress_number_prefix subaddress_number subaddress_number_suffix
106
+ street = street_number_prefix street_number street_number_suffix space street_label
107
+
108
+ address = geographical_object_name NEWLINE
109
+ subaddress NEWLINE
110
+ street NEWLINE
104
111
locality, space state_or_territory NEWLINE
105
- postcode space country
112
+ postcode country
106
113
----
107
114
108
- Part value for the example above, using these EBNF tokens are:
115
+ Part values for the example above, using these EBNF tokens are:
109
116
110
117
|===
111
118
| Token | Value
112
119
113
- | `building_name` | -
120
+ | `building_name` | "The Manse"
114
121
| `property_name` | -
115
122
| `level` | -
116
- | `unit` | "Unit 4B"
123
+ | `subaddress_number` | "4"
124
+ | `subaddress_number_suffix` | "B"
117
125
| `street_number` | "72"
118
126
| `street_name` | "Yundah Street"
119
127
| `locality` | "Shorncliffe"
@@ -125,7 +133,9 @@ Part value for the example above, using these EBNF tokens are:
125
133
The template would result in this the same "print out" value as per the example in the section above:
126
134
127
135
----
128
- Unit 4B, 72 Yundah Street
136
+ The Manse
137
+ Unit 4B
138
+ 72 Yundah Street
129
139
Shorncliffe, Queensland
130
140
4017 Australia
131
141
----
@@ -160,6 +170,7 @@ This template will also see out short form templates implemented for referenced
160
170
Given these changes, the example above would print out like this:
161
171
162
172
----
173
+ The Manse
163
174
4B/72 Yundah St
164
175
Shorncliffe, QLD
165
176
4017 Aust.
0 commit comments