CNPostalAddress...Key not capitalized

I'm trying to extract some of the information in a MKPlacemark returned by the CLGeoCoder.reverseGeoCode method. When using the Contacts constants as specified in the documentation it fails, because they do not match the keys in the MKPlacemark addressDictionary. For example, here I've printed the values for three of the constants:


CNPostalAddressStreetKey: street

CNPostalAddressCityKey: city

CNPostalAddressStateKey: state


And here are the dicitonary's keys:


LazyMapCollection<Dictionary<AnyHashable, Any>, AnyHashable>(_base: [AnyHashable("City"): Cupertino, AnyHashable("Name"): 10901–10913 N Stelling Rd, AnyHashable("State"): CA, AnyHashable("SubAdministrativeArea"): Santa Clara, AnyHashable("CountryCode"): US, AnyHashable("ZIP"): 95014, AnyHashable("SubThoroughfare"): 10901–10913, AnyHashable("FormattedAddressLines"): <__NSArrayM 0x81c710b0>(

10901–10913 N Stelling Rd,

Sunnyvale, CA 95014,

United States


As you can see, the keys in the dictionary are capitalized, whereas the constants we're told to use are lowercase. To work around this I'm using the .capitalized method on the constants, but I'm wondering if there isn't a more sanctioned way to do this that I'm missing.