Skip to main content

ICANN Releases Beta-3 Version of TLD Verification Code

ICANN has issued today a new version of code intended to assist software developers and application providers whose work assists others in using the DNS.

The Domain Name System (DNS) helps users find their way around the Internet. Because IP addresses (which are strings of numbers) are hard to remember, the DNS allows a familiar string of letters (the "domain name") to be used instead. So rather than typing "," you can type "" The last portion of the domain name (in this case, .ORG) is the top-level domain (TLD).

Since 2001, the namespace of the public Internet has been continually expanding, with an increasing number of TLDs becoming part of the DNS: .AERO, .BIZ, .CAT, .COOP, .INFO, .JOBS, .MOBI, .MUSEUM, .NAME, .PRO, .TEL, .TRAVEL. Another new top-level domain, .ASIA, is expected to be added shortly. As the space has grown, users of the DNS have sometimes experienced decreased usability of e-commerce and other sites because developers and code writers have not taken account of these newer top-level domains, causing them to be rejected as invalid. These problems can easily be fixed, once they are brought to the attention of the provider.

The code that ICANN is releasing here eliminates the need for business or other providers to do additional programming when new top-level domains are established. The code can easily be inserted into existing programs or applications, and will automatically check the validity of an email address or URL entered against the authoritative DNS data, known as the "root-zone." No additional updates are necessary since any changes to the root-zone will automatically be noted by using the code.

The validation code is available in C#, Java, Perl, and Python at the links below and is released under an open source license:

The program is now in its third Beta version and will be further improved based on feedback from relevant users.

Comments or questions about the verification code may be submitted to Comments may be viewed at

ICANN will continue to raise awareness of TLD acceptance problems and their solutions via an education campaign directed to Internet Service Providers, website designers, software application developers and other parts of the Internet community affected by these issues. Further information on TLD acceptance topics is available at

More Announcements
Domain Name System
Internationalized Domain Name ,IDN,"IDNs are domain names that include characters used in the local representation of languages that are not written with the twenty-six letters of the basic Latin alphabet ""a-z"". An IDN can contain Latin letters with diacritical marks, as required by many European languages, or may consist of characters from non-Latin scripts such as Arabic or Chinese. Many languages also use other types of digits than the European ""0-9"". The basic Latin alphabet together with the European-Arabic digits are, for the purpose of domain names, termed ""ASCII characters"" (ASCII = American Standard Code for Information Interchange). These are also included in the broader range of ""Unicode characters"" that provides the basis for IDNs. The ""hostname rule"" requires that all domain names of the type under consideration here are stored in the DNS using only the ASCII characters listed above, with the one further addition of the hyphen ""-"". The Unicode form of an IDN therefore requires special encoding before it is entered into the DNS. The following terminology is used when distinguishing between these forms: A domain name consists of a series of ""labels"" (separated by ""dots""). The ASCII form of an IDN label is termed an ""A-label"". All operations defined in the DNS protocol use A-labels exclusively. The Unicode form, which a user expects to be displayed, is termed a ""U-label"". The difference may be illustrated with the Hindi word for ""test"" — परीका — appearing here as a U-label would (in the Devanagari script). A special form of ""ASCII compatible encoding"" (abbreviated ACE) is applied to this to produce the corresponding A-label: xn--11b5bs1di. A domain name that only includes ASCII letters, digits, and hyphens is termed an ""LDH label"". Although the definitions of A-labels and LDH-labels overlap, a name consisting exclusively of LDH labels, such as"""" is not an IDN."