GeoCode VN Design

Thiết kế cơ bản cho các địa chỉ (số nhà, khu/ấp/xóm/xã) VN.

Lẽ ra nên gọi là StreetAddress, nhưng sẽ hướng tới conversion StreetAddress chuyển qua lại  Geographic Coordinates (vĩ độ & kinh độ – LatitudeLongitude).

.

 Criteria

+ Simplicity is Key (KISS)

+ Easy for Geocoding

(ref: https://developers.google.com/maps/documentation/geocoding/best-practices)

+ Able to integrate with “DQ” samples/prototypes.

+ Compatible with US standards if possible (such as USPS).

.

Domain/Concepts

  • Quốc gia (Country): thật ra ko cần thiết ở đây chỉ tính VN, for later – YAGNI.
  • – Tên (Việt Nam)
  • – Tên ngắn (VN – thường theo chuẩn ISO-3166)
  • – Tên đầy đủ (CHXHCNVN) optional
  • – Tên miền (vn – thường theo ISO-3166 alpha-2) optional
  • – Ngôn ngữ ngắn (vi – thường theo ISO-639) optional
  • Thành phố (City): trực thuộc trung ương (Level1), province tương ứng State của US.
  • – Tên (Hồ Chí Minh)
  • – Tên ngắn (HCM)
  • – Tên đầy đủ (TpHCM – có tiền tố Thành Phố hoặc Tỉnh)
  • – Mã bưu chính (postal code) optional
  • – Mã vùng điện thoại (vn – thường theo ISO-3166 alpha-2) optional
  • – Viết tắt tàu (SG) optional 
  • – Biển số xe (50,51,52,53,54,55,56,57,58,59,41) optional

Lưu ý: có thể cần consolidate một số cách viết tắt khác nhau về 1 chính thức. Vì có 1 số trường hợp viết tắt gần giống (BT – Bến Tre vs BTh – Bình Thuận, HNA – Hà Nam vs HAN/HN: Hà Nội, tương tự Đồng Nai/Đà Nẵng/Đắk Nông, Quảng Nam/Quảng Ngãi/Quảng Ninh, …).

  • Quận/Huyện (District): hoặc ThịXã/Tp (Level2), trực thuộc LV1 ở trên (City/Province/State)
  • – Tên (Tân Bình)
  • – Tên ngắn (TB)
  • – Tên đầy đủ (Quận Tân Bình)
  • Phường/Xã (Ward): hoặc ThịTrấn (Level3), trực thuộc LV2 ở trên (District/Town)
  • – Tên (12)
  • – Tên ngắn (12)
  • – Tên đầy đủ (Phường 12)
  • Khu/Ấp/Tổ (Extra): hoặc Xóm/Bản/Buôn/Khóm , nếu có thì trực thuộc LV3 ở trên (Ward)
  • – Tên (10)
  • – Tên ngắn (10)
  • – Tên đầy đủ (Tổ 10)

Lưu ý: có thể có chia nhỏ 2, 3 cấp dưới level 3; nhưng vẫn đc xem là trước số nhà và tên đường.

  • Số nhà Đường (StreetAddress): thường là level cuối, sau các level < 3 .
  • – Tên đường (Nguyễn Huệ)
  • – Số nhà (51A/26)
  • – Tên đầy đủ (Đại lộ Nguyễn Huệ)
  • – Tên đường ngắn (NH) optional

 

.

Sample Code

 

.

Sample Data

Thường dùng web crawler/spider để harvest từ các website chính thức của nhà nước. (để 1 số mã được thống nhất, VD: Thành phố HN thường có mã số là 1).

 

(TBA)

./.

Advertisements

About DucQuoc.wordpress.com

A coder, husband and brother...
This entry was posted in Coding, Skill. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s