summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlararennie@google.com <lararennie@google.com@ee073f10-1060-11df-b6a4-87a95322a99c>2013-09-20 15:28:08 +0000
committerlararennie@google.com <lararennie@google.com@ee073f10-1060-11df-b6a4-87a95322a99c>2013-09-20 15:28:08 +0000
commitd2c6d23aef81e43d8ad01823aa4aa36e4a189cb6 (patch)
tree65b5ffa0c1f342de28d32c18b3eca29041533785
parent6462e4cda06257b4746f225cdd5088df4c670aa9 (diff)
downloadresources-d2c6d23aef81e43d8ad01823aa4aa36e4a189cb6.tar.gz
JAVA/CPP: Generating data as to whether a country allows mobile portability or not in the metadata.
git-svn-id: http://libphonenumber.googlecode.com/svn/trunk/resources@611 ee073f10-1060-11df-b6a4-87a95322a99c
-rw-r--r--PhoneNumberMetadata.xml199
-rw-r--r--phonemetadata.proto6
2 files changed, 128 insertions, 77 deletions
diff --git a/PhoneNumberMetadata.xml b/PhoneNumberMetadata.xml
index 5d68a8a..9ca1d5b 100644
--- a/PhoneNumberMetadata.xml
+++ b/PhoneNumberMetadata.xml
@@ -80,6 +80,7 @@
<!ATTLIST territory nationalPrefixOptionalWhenFormatting (true) #IMPLIED>
<!ATTLIST territory leadingZeroPossible (true) #IMPLIED>
<!ATTLIST territory carrierCodeFormattingRule CDATA #IMPLIED>
+ <!ATTLIST territory mobileNumberPortableRegion (true) #IMPLIED>
<!ATTLIST numberFormat nationalPrefixFormattingRule CDATA #IMPLIED>
<!ATTLIST numberFormat nationalPrefixOptionalWhenFormatting (true) #IMPLIED>
<!ATTLIST numberFormat carrierCodeFormattingRule CDATA #IMPLIED>
@@ -413,7 +414,8 @@
<!-- Albania -->
<!-- http://www.itu.int/oth/T0202000002/en -->
<territory id="AL" countryCode="355" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Formats mostly follow http://tirana.usembassy.gov/list_of_doctors.html -->
<numberFormat pattern="(4)(\d{3})(\d{4})">
@@ -737,7 +739,8 @@
)
)15
)?"
- nationalPrefixTransformRule="9$1" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefixTransformRule="9$1" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([68]\d{2})(\d{3})(\d{4})">
<leadingDigits>[68]</leadingDigits>
@@ -1158,7 +1161,8 @@
<!-- Austria -->
<!-- http://www.rtr.at/en/tk/E129 -->
<territory id="AT" countryCode="43" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(1)(\d{3,12})">
<leadingDigits>1</leadingDigits>
@@ -1352,7 +1356,8 @@
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Australia -->
<territory id="AU" countryCode="61" mainCountryForCode="true"
internationalPrefix="(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"
- preferredInternationalPrefix="0011" nationalPrefix="0" >
+ preferredInternationalPrefix="0011" nationalPrefix="0"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="($NP$FG)"
pattern="([2378])(\d{4})(\d{4})">
@@ -1675,7 +1680,7 @@
<!-- Azerbaijan -->
<!-- http://www.itu.int/oth/T020200000F/en -->
<territory id="AZ" countryCode="994" internationalPrefix="00" nationalPrefix="0"
- nationalPrefixFormattingRule="($NP$FG)">
+ nationalPrefixFormattingRule="($NP$FG)" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
<leadingDigits>
@@ -1753,7 +1758,8 @@
http://www.cra.ba/en/telecom/numbering/) -->
<!-- http://en.wikipedia.org/wiki/+387 -->
<territory id="BA" countryCode="387" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{3})(\d{3})">
<leadingDigits>[3-5]</leadingDigits>
@@ -2280,7 +2286,8 @@
<!-- http://www.bipt.be/en/161/ShowContent/502/Database/Databases.aspx -->
<!-- http://www.telefoonzones.be/ -->
<territory id="BE" countryCode="32" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(4[6-9]\d)(\d{2})(\d{2})(\d{2})">
<leadingDigits>4[6-9]</leadingDigits>
@@ -2429,7 +2436,8 @@
<!-- Bulgaria -->
<!-- http://www.itu.int/oth/T0202000020/en -->
<territory id="BG" countryCode="359" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Formatting rules follow the conventions seen in web-search results. A space has been
used to separate the area code from the rest of the number, based on sites like
@@ -2549,7 +2557,7 @@
<!-- http://www.tra.org.bh/en/pdf/National_Numbering_Plan_2.pdf -->
<!-- http://www.tra.org.bh/en/marketNumbering.aspx -->
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Bahrain -->
- <territory id="BH" countryCode="973" internationalPrefix="00" >
+ <territory id="BH" countryCode="973" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{4})(\d{4})">
<format>$1 $2</format>
@@ -2979,7 +2987,7 @@
internationalPrefix="00(?:1[45]|2[135]|[34]1|43)"
nationalPrefix="0"
nationalPrefixForParsing="0(?:(1[245]|2[135]|[34]1)(\d{10,11}))?"
- nationalPrefixTransformRule="$2" >
+ nationalPrefixTransformRule="$2" mobileNumberPortableRegion="true">
<!-- The national prefix for parsing here also contains a capturing group for the main number,
since the carrier codes here may also be area codes, so we want to check the length of
the number after capturing. We also need a nationalTransformRule to repopulate with the
@@ -3351,7 +3359,7 @@
<!-- Information on national prefix provided by a Belarussian person. -->
<territory id="BY" countryCode="375" preferredInternationalPrefix="8~10"
internationalPrefix="810" nationalPrefixForParsing="8?0?"
- nationalPrefix="8" >
+ nationalPrefix="8" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="$NP 0$FG"
pattern="([1-4]\d)(\d{3})(\d{4})">
@@ -3517,7 +3525,8 @@
<!-- Canada -->
<!-- http://www.cnac.ca/canadian_dial_plan/canadian_dial_plan.htm -->
- <territory id="CA" countryCode="1" internationalPrefix="011" nationalPrefix="1">
+ <territory id="CA" countryCode="1" internationalPrefix="011" nationalPrefix="1"
+ mobileNumberPortableRegion="true">
<generalDesc>
<!-- NANPA country - uses US formatting rules -->
<nationalNumberPattern>
@@ -3841,7 +3850,8 @@
<!-- http://www.bakom.admin.ch/themen/telekom/00479/00604/index.html?lang=en
under Technical prescriptions: Numbering plan for international carriers -->
<territory id="CH" countryCode="41" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([2-9]\d)(\d{3})(\d{2})(\d{2})">
<leadingDigits>
@@ -4017,7 +4027,7 @@
internationalPrefix="(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0"
nationalPrefix="0"
nationalPrefixForParsing="0|(1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))"
- nationalPrefixFormattingRule="$NP$FG" >
+ nationalPrefixFormattingRule="$NP$FG" mobileNumberPortableRegion="true">
<!-- When dialling mobile numbers from landlines, or vice versa, you need a prefix of 0, which
we strip here. National destinations may be dialled with a carrier if they are not local so
we extract these carrier codes as well. -->
@@ -4636,7 +4646,8 @@
<!-- http://www.itu.int/oth/T020200002C/en -->
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Colombia -->
<territory id="CO" countryCode="57" internationalPrefix="00[579]|#555|#999"
- nationalPrefix="0" nationalPrefixForParsing="0([3579]|4(?:44|56))?">
+ nationalPrefix="0" nationalPrefixForParsing="0([3579]|4(?:44|56))?"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d)(\d{7})" carrierCodeFormattingRule="$NP$CC $FG"
nationalPrefixFormattingRule="($FG)">
@@ -5027,7 +5038,7 @@
<!-- Cyprus -->
<!-- http://www.itu.int/oth/T0202000034/en -->
- <territory id="CY" countryCode="357" internationalPrefix="00" >
+ <territory id="CY" countryCode="357" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<!-- Format from http://www.cyprusyellowpages.com/-->
<numberFormat pattern="(\d{2})(\d{6})">
@@ -5078,7 +5089,7 @@
<!-- Czech Rep. -->
<!-- http://www.itu.int/oth/T0202000035/en -->
<!-- http://en.wikipedia.org/wiki/%2B420 -->
- <territory id="CZ" countryCode="420" internationalPrefix="00" >
+ <territory id="CZ" countryCode="420" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([2-9]\d{2})(\d{3})(\d{3})">
<leadingDigits>
@@ -5181,7 +5192,8 @@
<!-- http://www.itu.int/oth/T0202000051/en -->
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_germany -->
<territory id="DE" countryCode="49" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Mobile number formatting rules. We follow the ITU document here for guidance on how
these should best be formatted, even though actual usage varies. -->
@@ -5528,7 +5540,7 @@
<!-- Denmark -->
<!-- http://www.dba.erhvervsstyrelsen.dk/numbering-lists -->
- <territory id="DK" countryCode="45" internationalPrefix="00" >
+ <territory id="DK" countryCode="45" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
<format>$1 $2 $3 $4</format>
@@ -5645,7 +5657,7 @@
<!-- Dominican Rep. -->
<!-- http://www.itu.int/oth/T020200003C/en -->
<territory id="DO" countryCode="1" leadingDigits="8[024]9" nationalPrefix="1"
- internationalPrefix="011" >
+ internationalPrefix="011" mobileNumberPortableRegion="true">
<generalDesc>
<!-- NANPA country - uses US formatting rules -->
<nationalNumberPattern>[589]\d{9}</nationalNumberPattern>
@@ -5833,7 +5845,8 @@
-->
<!-- http://www.itu.int/oth/T020200003D/en -->
<territory id="EC" countryCode="593" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+ nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d)(\d{3})(\d{4})">
<leadingDigits>
@@ -5894,7 +5907,7 @@
<!-- Estonia -->
<!-- http://www.itu.int/oth/T0202000043/en -->
<!-- http://www.tja.ee/public/Legislation_side/Numbering_/Estonian_NP_eng.htm -->
- <territory id="EE" countryCode="372" internationalPrefix="00" >
+ <territory id="EE" countryCode="372" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([3-79]\d{2})(\d{4})">
<leadingDigits>
@@ -6054,7 +6067,8 @@
<!-- Egypt -->
<!-- http://www.itu.int/oth/T020200003E/en -->
<territory id="EG" countryCode="20" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Note that no explicit formatting rule is here for 5-digit numbers starting with a 16
or 19. These are formatted without national prefix, as a block, so do not need to be
@@ -6244,7 +6258,7 @@
<!-- Spain -->
<!-- http://www.mityc.es/telecomunicaciones/es-ES/Servicios/Numeracion/Paginas/Plan.aspx -->
- <territory id="ES" countryCode="34" internationalPrefix="00" >
+ <territory id="ES" countryCode="34" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([5-9]\d{2})(\d{2})(\d{2})(\d{2})">
<leadingDigits>
@@ -6491,7 +6505,8 @@
<!-- Metadata shared with Ă…land (AX) -->
<!-- http://www.ficora.fi/en/index/palvelut/palvelutaiheittain/numerointi/numerotyypitjaalueet.html -->
<territory id="FI" countryCode="358" internationalPrefix="00|99[049]" nationalPrefix="0"
- nationalPrefixFormattingRule="$NP$FG" mainCountryForCode="true">
+ nationalPrefixFormattingRule="$NP$FG" mainCountryForCode="true"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{3})(\d{3,7})">
<leadingDigits>
@@ -6785,7 +6800,7 @@
<!-- http://www.arcep.fr/index.php?id=8146 -->
<!-- http://en.wikipedia.org/wiki/%2B33 -->
<territory id="FR" countryCode="33" internationalPrefix="00" nationalPrefix="0"
- nationalPrefixFormattingRule="$NP$FG" >
+ nationalPrefixFormattingRule="$NP$FG" mobileNumberPortableRegion="true">
<!-- Short numbers will be formatted as a block without a national prefix. -->
<availableFormats>
<numberFormat pattern="([1-79])(\d{2})(\d{2})(\d{2})(\d{2})">
@@ -6879,7 +6894,7 @@
validation, although the formatting rules are shared. -->
<territory id="GB" countryCode="44" internationalPrefix="00"
nationalPrefix="0" preferredExtnPrefix=" x" nationalPrefixFormattingRule="$NP$FG"
- mainCountryForCode="true" >
+ mainCountryForCode="true" mobileNumberPortableRegion="true">
<availableFormats>
<!-- 2d, 55, 56, 70 and 76 pager numbers (excludes 7624) with 10 digits. -->
<numberFormat pattern="(\d{2})(\d{4})(\d{4})">
@@ -7549,7 +7564,8 @@
<!-- Georgia -->
<!-- http://www.itu.int/oth/T0202000050/en -->
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Georgia. -->
- <territory id="GE" countryCode="995" internationalPrefix="00" nationalPrefix="0">
+ <territory id="GE" countryCode="995" internationalPrefix="00" nationalPrefix="0"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Format isn't very strictly defined - the yellow pages omits area code and does 2 2 2,
the communications commission uses 2 3 3. Wikipedia says 3 2 3. Some use 2 6. -->
@@ -7789,7 +7805,8 @@
<!-- http://www.itu.int/oth/T0202000052/en -->
<!-- http://www.nca.org.gh/index.php?option=com_content&view=article&id=90&Itemid=65 -->
<territory id="GH" countryCode="233" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{3})(\d{4})">
<leadingDigits>[235]</leadingDigits>
@@ -8154,7 +8171,7 @@
<!-- Greece -->
<!-- http://www.itu.int/oth/T0202000055/en -->
<!-- http://en.wikipedia.org/wiki/%2B30 -->
- <territory id="GR" countryCode="30" internationalPrefix="00" >
+ <territory id="GR" countryCode="30" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([27]\d)(\d{4})(\d{4})">
<leadingDigits>
@@ -8559,7 +8576,7 @@
<!-- Hong Kong -->
<!-- http://www.ofca.gov.hk/en/industry_focus/telecommunications/portability/index.html -->
- <territory id="HK" countryCode="852" internationalPrefix="00" >
+ <territory id="HK" countryCode="852" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{4})(\d{4})">
<leadingDigits>
@@ -8716,7 +8733,8 @@
<!-- http://www.itu.int/oth/T0202000032/en -->
<!-- http://en.wikipedia.org/wiki/%2B385 -->
<territory id="HR" countryCode="385" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- The plan says 1 XXX XXXX but the government and local telecom websites are formatted 1
XXXX XXX, so we prefer that formatting here. These same sources prefer XXX XXX to XX
@@ -8883,7 +8901,8 @@
<!-- Hungary -->
<!-- http://www.itu.int/oth/T0202000061/en -->
<territory id="HU" countryCode="36" internationalPrefix="00"
- nationalPrefix="06" nationalPrefixFormattingRule="($FG)">
+ nationalPrefix="06" nationalPrefixFormattingRule="($FG)"
+ mobileNumberPortableRegion="true">
<!-- Although the national prefix is necessary for dialling, the preferred format (confirmed
by a Hungarian person and following the yellow pages) is to omit this when formatting.
Yellow pages: www.aranyoldalak.hu -->
@@ -9179,7 +9198,8 @@
<!-- http://www.comreg.ie/licensing_and_services/numbering_plan_for_ireland.552.440.html -->
<!-- http://www.comreg.ie/_fileupload/publications/ComReg1119.pdf -->
<territory id="IE" countryCode="353" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+ nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(1)(\d{3,4})(\d{4})">
<leadingDigits>1</leadingDigits>
@@ -9356,7 +9376,8 @@
(in Hebrew) -->
<!-- Formatting practice following wikipedia, and government sites. -->
<territory id="IL" countryCode="972" internationalPrefix="0(?:0|1[2-9])"
- nationalPrefix="0" nationalPrefixFormattingRule="$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="$NP$FG"
pattern="([2-489])(\d{3})(\d{4})">
@@ -9501,7 +9522,7 @@
<exampleNumber>771234567</exampleNumber>
</voip>
<uan>
- <!-- 4-digit star numbers 1-599 numbers. The latter are actually labelled "interactive
+ <!-- 4-digit star numbers and 1-599 numbers. The latter are actually labelled "interactive
voicemail" in the ITU document, but according to reports from businesses in Israel and
the Hebrew version of the wikipedia page, these are actually a router for business
calls, and incur a normal call cost on account of the caller. -->
@@ -9613,7 +9634,8 @@
- fixed line changes are notified on the www.bsnl.co.in website. Area codes can be verified
here at http://dq.ndc.bsnl.co.in/bsnl-web/stdSearch.seam. -->
<territory id="IN" countryCode="91" internationalPrefix="00" nationalPrefix="0"
- nationalPrefixFormattingRule="$NP$FG" nationalPrefixOptionalWhenFormatting="true">
+ nationalPrefixFormattingRule="$NP$FG" nationalPrefixOptionalWhenFormatting="true"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Mobile numbers. -->
<numberFormat pattern="(\d{2})(\d{2})(\d{6})">
@@ -10488,7 +10510,7 @@
<!-- Iceland -->
<!-- http://www.pta.is/default.aspx?cat_id=85 -->
<!-- http://www.pfs.is/default.aspx?cat_id=14&module_id=210&element_id=4 -->
- <territory id="IS" countryCode="354" internationalPrefix="00" >
+ <territory id="IS" countryCode="354" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{3})(\d{4})">
<leadingDigits>[4-9]</leadingDigits>
@@ -10600,7 +10622,8 @@
<!-- Italy -->
<!-- http://en.wikipedia.org/wiki/%2B39 -->
- <territory id="IT" countryCode="39" internationalPrefix="00" leadingZeroPossible="true">
+ <territory id="IT" countryCode="39" internationalPrefix="00" leadingZeroPossible="true"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- The leading zero for fixed numbers will be prepended before the matching of these
regular expressions. -->
@@ -11125,7 +11148,8 @@
<!-- http://www.itu.int/oth/T020200006E/en -->
<!-- http://en.wikipedia.org/wiki/%2B962 -->
<territory id="JO" countryCode="962" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="($NP$FG)"
pattern="(\d)(\d{3})(\d{4})">
@@ -11285,7 +11309,8 @@
<!-- http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/tel_number/number_shitei.html -->
<!-- http://www.numberingplans.com/?page=dialling&sub=areacodes&ac=JP -->
<territory id="JP" countryCode="81" internationalPrefix="010" nationalPrefix="0"
- nationalPrefixFormattingRule="$NP$FG" leadingZeroPossible="true">
+ nationalPrefixFormattingRule="$NP$FG" leadingZeroPossible="true"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Toll-free, premium-rate and UAN numbers -->
<numberFormat pattern="(\d{3})(\d{3})(\d{3})">
@@ -12259,7 +12284,8 @@
<!-- http://www.cck.go.ke/licensing/numbering/plan.html -->
<!-- http://en.wikipedia.org/wiki/+254 -->
<territory id="KE" countryCode="254" internationalPrefix="000"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{4,7})">
<leadingDigits>[24-6]</leadingDigits>
@@ -12766,7 +12792,8 @@
1[4-6]XX-YYYY - Country-wide common number services, display as it is without hyphens -->
<territory id="KR" countryCode="82" internationalPrefix="00(?:[124-68]|[37]\d{2})"
nationalPrefix="0" nationalPrefixForParsing="0(8[1-46-8]|85\d{2})?"
- nationalPrefixFormattingRule="$NP$FG" carrierCodeFormattingRule="$NP$CC-$FG">
+ nationalPrefixFormattingRule="$NP$FG" carrierCodeFormattingRule="$NP$CC-$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{4})(\d{4})">
<leadingDigits>
@@ -12969,7 +12996,7 @@
<!-- Kuwait -->
<!-- http://www.itu.int/oth/T0202000073/en -->
- <territory id="KW" countryCode="965" internationalPrefix="00" >
+ <territory id="KW" countryCode="965" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<!-- Format is from ITU. -->
<numberFormat pattern="(\d{4})(\d{3,4})">
@@ -13808,7 +13835,7 @@
<territory id="LT" countryCode="370" internationalPrefix="00"
nationalPrefix="8" nationalPrefixForParsing="[08]"
nationalPrefixFormattingRule="($NP-$FG)"
- nationalPrefixOptionalWhenFormatting="true" >
+ nationalPrefixOptionalWhenFormatting="true" mobileNumberPortableRegion="true">
<!-- National Prefix formatting rule from www.yellowpages.lt -->
<availableFormats>
<!-- Two-digit area codes -->
@@ -13897,7 +13924,7 @@
-->
<territory id="LU" countryCode="352" internationalPrefix="00"
nationalPrefixForParsing="(15(?:0[06]|1[12]|35|4[04]|55|6[26]|77|88|99)\d)"
- carrierCodeFormattingRule="$CC $FG" >
+ carrierCodeFormattingRule="$CC $FG" mobileNumberPortableRegion="true">
<availableFormats>
<!-- Patterns overlap because of variable number length. -->
<numberFormat pattern="(\d{2})(\d{3})">
@@ -14095,7 +14122,7 @@
<!-- Latvia -->
<!-- http://www.itu.int/oth/T0202000076/en -->
<!-- http://en.wikipedia.org/wiki/+371 -->
- <territory id="LV" countryCode="371" internationalPrefix="00" >
+ <territory id="LV" countryCode="371" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([2689]\d)(\d{3})(\d{3})">
<format>$1 $2 $3</format>
@@ -14170,7 +14197,8 @@
<!-- http://www.itu.int/oth/T0202000090/en -->
<!-- http://en.wikipedia.org/wiki/+212 -->
<territory id="MA" countryCode="212" internationalPrefix="00" nationalPrefix="0"
- nationalPrefixFormattingRule="$NP$FG" mainCountryForCode="true">
+ nationalPrefixFormattingRule="$NP$FG" mainCountryForCode="true"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([56]\d{2})(\d{6})">
<leadingDigits>
@@ -14352,7 +14380,8 @@
<!-- http://www.itu.int/oth/T020200008C/en -->
<!-- http://en.anrceti.md -->
<territory id="MD" countryCode="373" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{3})(\d{3})">
<leadingDigits>
@@ -14692,7 +14721,8 @@
<!-- Macedonia, Former Yugoslav Rep. of -->
<!-- http://www.itu.int/oth/T02020000CE/en -->
<territory id="MK" countryCode="389" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Formats follow wikipedia. -->
<numberFormat pattern="(2)(\d{3})(\d{4})">
@@ -15382,7 +15412,7 @@
<!-- Malta -->
<!-- www.itu.int/oth/T0202000084/en -->
<!-- www.mca.org.mt (Numbering link in the LHS menu - has more up-to-date allocations) -->
- <territory id="MT" countryCode="356" internationalPrefix="00" >
+ <territory id="MT" countryCode="356" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{4})(\d{4})">
<format>$1 $2</format>
@@ -15697,7 +15727,7 @@
nationalPrefixTransformRule="1$1"
nationalPrefixFormattingRule="$NP $FG"
nationalPrefixOptionalWhenFormatting="true"
- leadingZeroPossible="true" >
+ leadingZeroPossible="true" mobileNumberPortableRegion="true">
<!-- When a number starts with 01 or 02, we remove the prefixes; when a number starts with 044
or 045 followed by 10 digits, we replace the prefixes with 1. This way all the mobile
numbers, regardless of whether they are written in international format (leading 1) or
@@ -15911,7 +15941,7 @@
<!-- http://en.wikipedia.org/wiki/%2B60 -->
<!-- http://www.skmm.gov.my -->
<territory id="MY" countryCode="60" internationalPrefix="00"
- nationalPrefix="0" >
+ nationalPrefix="0" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="$NP$FG"
pattern="([4-79])(\d{3})(\d{4})">
@@ -16354,7 +16384,8 @@
<!-- Nigeria -->
<!-- http://www.itu.int/oth/T020200009C/en -->
<territory id="NG" countryCode="234" internationalPrefix="009"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([129])(\d{3})(\d{3,4})">
<leadingDigits>[129]</leadingDigits>
@@ -16565,7 +16596,8 @@
<!-- http://en.wikipedia.org/wiki/%2B31 -->
<!-- http://www.opta.nl/en/numbers/search-for-numbers -->
<territory id="NL" countryCode="31" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([1-578]\d)(\d{3})(\d{4})">
<leadingDigits>
@@ -16698,7 +16730,7 @@
<!-- Metadata (excluding fixed-line) shared with Svalbard. -->
<!-- http://www.npt.no/npt/numsys/E.164.pdf -->
<territory id="NO" countryCode="47" internationalPrefix="00" leadingZeroPossible="true"
- mainCountryForCode="true" >
+ mainCountryForCode="true" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([489]\d{2})(\d{2})(\d{3})">
<leadingDigits>[489]</leadingDigits>
@@ -16925,7 +16957,7 @@
numbers and 050 "Nation-Wide Service". -->
<territory id="NZ" countryCode="64" internationalPrefix="0(?:0|161)"
preferredInternationalPrefix="00" nationalPrefix="0"
- nationalPrefixFormattingRule="$NP$FG" >
+ nationalPrefixFormattingRule="$NP$FG" mobileNumberPortableRegion="true">
<availableFormats>
<!-- Pattern for fixed-line formats. -->
<numberFormat pattern="([34679])(\d{3})(\d{4})">
@@ -17045,7 +17077,7 @@
<!-- Oman -->
<!-- http://www.itu.int/oth/T020200009F/en -->
- <territory id="OM" countryCode="968" internationalPrefix="00" >
+ <territory id="OM" countryCode="968" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(2\d)(\d{6})">
<leadingDigits>2</leadingDigits>
@@ -17102,7 +17134,7 @@
<!-- http://www.asep.gob.pa/telecom/pnn/default.asp - last read Jan 17th 2013. -->
<!-- http://en.wikipedia.org/wiki/%2B507 - although it omits the fact that mobile phones are 8
digits long. -->
- <territory id="PA" countryCode="507" internationalPrefix="00" >
+ <territory id="PA" countryCode="507" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{3})(\d{4})">
<leadingDigits>[1-57-9]</leadingDigits>
@@ -17253,7 +17285,7 @@
<!-- http://www.assistbook.com/South%20America/Peru/widecodes -->
<territory id="PE" countryCode="51" internationalPrefix="19(?:1[124]|77|90)00"
nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)"
- preferredExtnPrefix=" Anexo " >
+ preferredExtnPrefix=" Anexo " mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(1)(\d{7})">
<leadingDigits>1</leadingDigits>
@@ -17623,7 +17655,8 @@
<!-- http://www.itu.int/oth/T02020000A1/en -->
<!-- http://en.wikipedia.org/wiki/%2B92 -->
<territory id="PK" countryCode="92" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+ nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Universal Access Numbers (UAN) number format patterns first, so that these numbers are
formatted nicely by the AYTF. -->
@@ -17923,7 +17956,7 @@
<!--
http://www.uke.gov.pl/uke/index.jsp?place=Lead24&news_cat_id=277&news_id=3791&layout=9&page=text
(in Polish) -->
- <territory id="PL" countryCode="48" internationalPrefix="00" >
+ <territory id="PL" countryCode="48" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
<leadingDigits>
@@ -18202,7 +18235,7 @@
<!-- Portugal -->
<!-- http://www.anacom.pt/render.jsp?categoryId=279098 -->
- <territory id="PT" countryCode="351" internationalPrefix="00" >
+ <territory id="PT" countryCode="351" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<!-- Note: the wikipedia page suggests that mobile numbers may also be formatted with only
two digits in the first group; however, this doesn't seem to be majority usage based on
@@ -18348,7 +18381,8 @@
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Paraguay -->
<!-- http://www.itu.int/oth/T02020000A5/en -->
<!-- http://www.copaco.com.py/portal/index.php/component/content/article/8-empresa/74-codigos-de-area.html -->
- <territory id="PY" countryCode="595" internationalPrefix="00" nationalPrefix="0">
+ <territory id="PY" countryCode="595" internationalPrefix="00" nationalPrefix="0"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- CONATEL plan. -->
<numberFormat pattern="(\d{2})(\d{5,7})" nationalPrefixFormattingRule="($FG)">
@@ -18468,7 +18502,7 @@
<!-- Qatar -->
<!-- http://www.itu.int/oth/T02020000AB/en -->
<!-- http://wtng.info/wtng-qq.html -->
- <territory id="QA" countryCode="974" internationalPrefix="00" >
+ <territory id="QA" countryCode="974" internationalPrefix="00" mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([28]\d{2})(\d{4})">
<leadingDigits>[28]</leadingDigits>
@@ -18568,7 +18602,7 @@
<!-- Extension prefix found online, confirmed by a Romanian. -->
<territory id="RO" countryCode="40" internationalPrefix="00"
nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
- preferredExtnPrefix=" int " >
+ preferredExtnPrefix=" int " mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([237]\d)(\d{3})(\d{4})">
<leadingDigits>[23]1</leadingDigits>
@@ -18672,7 +18706,8 @@
<!-- http://www.itu.int/oth/T02020000B9/en -->
<!-- http://registar.ratel.rs/en/reg202 -->
<territory id="RS" countryCode="381" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([23]\d{2})(\d{4,9})">
<leadingDigits>
@@ -18929,7 +18964,8 @@
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Saudi_Arabia -->
<!-- http://www.itu.int/oth/T02020000B7/en -->
<territory id="SA" countryCode="966" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([1-467])(\d{3})(\d{4})">
<leadingDigits>[1-467]</leadingDigits>
@@ -19161,7 +19197,8 @@
<!-- http://www.pts.se/upload/Ovrigt/Tele/Nummerfragor/Sv_nrplan_telefoni_enl_TU-T_rek_E.164.pdf -->
<!-- http://www.pts.se/upload/Ovrigt/Tele/Nummerfragor/Nrplansammanst%C3%A4llning-2013-07-05.pdf -->
<territory id="SE" countryCode="46" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Formatting patterns are from the numbering plan and from the Swedish yellow pages
http://gulasidorna.eniro.se -->
@@ -19449,7 +19486,8 @@
<!-- Singapore -->
<!-- http://www.ida.gov.sg/Policies-and-Regulations/Industry-and-Licensees/Numbering/National-Numbering-Plan-and-Allocation-Process.aspx -->
- <territory id="SG" countryCode="65" internationalPrefix="0[0-3]\d">
+ <territory id="SG" countryCode="65" internationalPrefix="0[0-3]\d"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([3689]\d{3})(\d{4})">
<leadingDigits>
@@ -19563,7 +19601,8 @@
<!-- Slovenia -->
<!-- http://www.itu.int/oth/T02020000BE/en -->
<territory id="SI" countryCode="386" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="($NP$FG)"
pattern="(\d)(\d{3})(\d{2})(\d{2})">
@@ -19741,7 +19780,8 @@
<!-- Slovakia -->
<!-- http://www.itu.int/oth/T02020000BD/en -->
<territory id="SK" countryCode="421" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(2)(\d{3})(\d{3})(\d{2})">
<leadingDigits>2</leadingDigits>
@@ -20590,7 +20630,8 @@
<!-- http://www.itu.int/oth/T02020000CD/en -->
<!-- http://www.barascientific.com/bscnews/variety/emergency/Tel-4Digi.pdf -->
<territory id="TH" countryCode="66" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<!-- Formatting patterns from wikipedia and the document itself -
http://en.wikipedia.org/wiki/%2B66 -->
@@ -21006,7 +21047,8 @@
<!-- Turkey -->
<!-- http://en.wikipedia.org/wiki/%2B90 -->
<!-- http://www.itu.int/oth/T02020000D6/en -->
- <territory id="TR" countryCode="90" internationalPrefix="00" nationalPrefix="0">
+ <territory id="TR" countryCode="90" internationalPrefix="00" nationalPrefix="0"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat nationalPrefixFormattingRule="($NP$FG)" pattern="(\d{3})(\d{3})(\d{4})"
nationalPrefixOptionalWhenFormatting="true">
@@ -21227,7 +21269,8 @@
<!-- Extension symbols found on the internet so far have been #, X and Ext - so # has been
chosen as the preferred extension prefix. -->
<territory id="TW" countryCode="886" internationalPrefix="0(?:0[25679]|19)"
- nationalPrefix="0" preferredExtnPrefix="#" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" preferredExtnPrefix="#" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="([2-8])(\d{3,4})(\d{4})">
<leadingDigits>
@@ -21620,7 +21663,8 @@
when formatting, but is set here so that users who are calling formatByPattern can specify
NationalPrefixFormattingRule if they want to. -->
<territory id="US" countryCode="1" internationalPrefix="011" mainCountryForCode="true"
- nationalPrefix="1" nationalPrefixOptionalWhenFormatting="true">
+ nationalPrefix="1" nationalPrefixOptionalWhenFormatting="true"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(\d{3})(\d{4})">
<format>$1-$2</format>
@@ -22992,7 +23036,8 @@
<!-- http://www.itu.int/dms_pub/itu-t/oth/02/02/T02020000C10001PDFE.pdf -->
<!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_South_Africa -->
<territory id="ZA" countryCode="27" internationalPrefix="00"
- nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"
+ mobileNumberPortableRegion="true">
<availableFormats>
<numberFormat pattern="(860)(\d{3})(\d{3})">
<leadingDigits>860</leadingDigits>
diff --git a/phonemetadata.proto b/phonemetadata.proto
index cebe5c6..2246a92 100644
--- a/phonemetadata.proto
+++ b/phonemetadata.proto
@@ -269,6 +269,12 @@ message PhoneMetadata {
// and all regions associated with that calling code will use the same
// setting.
optional bool leading_zero_possible = 26 [default=false];
+
+ // This field is set when this country has implemented mobile number
+ // portability. This means that transferring mobile numbers between carriers
+ // is allowed. A consequence of this is that phone prefix to carrier mapping
+ // is less reliable.
+ optional bool mobile_number_portable_region = 32 [default=false];
}
message PhoneMetadataCollection {