Skip to main content
Resources

Label Generation Rules Tool

ICANN has released an application that will enable users to create, use and manage IDN tables in the formal, machine-readable format, called Label Generation Rules (LGR). The format allows for a more precise definition of label generation rules, making them easier to compare and reuse.

This application is open source. Parties interested in integrating this functionality into their own systems can find the source code on github: lgr-core, lgr-django, munidata.

If you have any questions or feedback about the tool, send an email to IDNprogram@icann.org.

Please take note of the Terms of Use provided with the tool, and below:

THIS SOFTWARE IS PROVIDED BY ICANN AND CONTRIBUTORS "AS IS"' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ICANN OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Background

ICANN conducted a series of studies on potential issues related to the definition and management of IDN variant TLDs, with the assistance of six case study teams representing the Arabic, Chinese, Cyrillic, Devanagari, Greek and Latin scripts. The Integrated Issues Report identified the need for the following:

  1. A formal specification for representing Label Generation Rules, which can be used to determine valid labels and their variants in different scripts
  2. A tool to process such LGRs

To that end, ICANN participated in the development of RFC7940 - Representing Label Generation Rulesets Using XML, an IETF specification that organizes and represents label generation rules in machine-readable (XML) format. ICANN then developed the LGR Tool to assist in the creation, use and management of label generation rules according to RFC7940.

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""icann.org"" is not an IDN."