A Canadian address ends with a single line carrying three things: the municipality, the two-letter province or territory code, and the postal code. The convention is capitals throughout with two spaces before the postal code — OTTAWA ON K1A 0B1 — which is a formatting rule most international forms cannot express because they model city, region and postcode as three separate lines.
The postal code alternates letter and digit in a strict ANA NAN pattern. The first three characters are the forward sortation area, whose opening letter identifies a province or a region within one, and the last three are the local delivery unit. Several letters are excluded from parts of the code because they are too easily confused with digits by sorting equipment, so a pattern that accepts any letter in any position will accept codes that cannot exist.
Canada also shares the North American Numbering Plan with the United States, which means a Canadian phone number looks American and is not. A validator that infers country from a leading +1 will file every Canadian record as US, and every province-based rule downstream of that will then be wrong — this is a more common defect than the address format, because it hides in the phone field rather than the address one.
As in the United Kingdom, the generator emits the real geographic half of the postal code and generates the rest: an address is pinned to one of 15 real Canadian cities with a genuine forward sortation area for it, and the local delivery unit is invented. The area code is drawn from the province's own NANP codes rather than a national list, so the phone number does not contradict the address.