<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <span style="font-family:&quot;Candara&quot;,&quot;sans-serif&quot;">LGR
      list members,<br>
      <br>
      the requirement that the LGRs created by the Generation Panels
      must be submitted in the new XML Format For Representing Label
      Generation Rules &lt;link&gt; continues to be the cause of some
      apprehensions.<br>
      <br>
      My intent with this message is to start a discussion and perhaps
      help dispel some of these apprehensions.<br>
      <br>
      The MSR drafted by the integration panel contains an XML file,
      that lists the repertoire of the MSR in the XML format. If your
      Generation Panel does NOT support variants and does NOT support
      script-specific WLE rules, the simplest way to generate the
      required XML file might be to delete from the MSR all entries that
      are not included in your LGR.<br>
      <br>
      A more generic approach would be to use a plain text file in a
      private format to list the code points and variants to do all the
      editing. This file could be in one of the several existing format
      for IDN tables. <br>
      <br>
      Because <i>generating </i>XML is much easier than <i>editing </i>XML,
      the approach that we followed in creating the MSR is to do our
      editing in such a private format, and then to use a short Perl
      script to generate the XML from that. <br>
      <br>
      By doing this, we avoid introducing the kinds of XML errors that
      are the result of hand-editing an XML file.<br>
      <br>
      For those scripts that use variants on the second level today,
      existing IDN tables have ways to express variants, and these can
      be converted to the new format by a Perl script as well. The
      effort required is quite moderate. If I may, I'd like to refer to
      my own experience. For a different ICANN project, I managed to
      write a functioning reader in a full-fledged programming language
      (not a script language) in about a week, supporting not just one
      IDN table format, but as many formats as existed in the IANA
      registry. To write the method that outputs the same data in XML
      format took some additional time.<br>
      <br>
      I assume that most GPs already have draft repertoire lists that
      could be converted to the same format as the MSR, and a simple
      diff could be used to find out whether the draft repertoire
      accidentally contains code points not allowed in the MSR.
      Alternatively, there are many tools that read XML files and can
      translate them into columnar tables. MS- Excel can do that, for
      example. Once saved in .CSV format, such tables are simple to
      transform into whatever private format your GP has decided to use
      for editing.<br>
      <br>
      Either way, you will have your draft data in a format that you are
      familiar with while you are editing, and a format that is easily
      compared to both your starting collection (the one you derived
      from the MSR intersected by your script) and to later versions of
      your draft repertoire.<br>
      <br>
      Now, when it comes to creating whole label evaluation rules, no
      such shortcuts exist. What I would propose is that any Generation
      Panel that intends to define such rules, create a detailed
      description with regular expressions or pseudo code (as in RFC
      5892 for example). Those of us who are more familiar with the
      format would then be able to assist you in translating these rules
      into the XML format.<br>
      <br>
      The resulting XML for the rules can be appended by script to the
      part that is created from the plain text list of repertoire and
      variants. That way, your Generation Panel can continuously have an
      updated draft of its complete LGR in the XML format without doing
      any actual XML editing.<br>
      <br>
      Finally, there is the matter of validation and correctness of the
      XML specification. If your GP produces XML drafts according to
      these suggestions, it would be a simple matter to assist the GPs
      in making sure that the XML is valid and satisfies any other
      restrictions that are specific to the Root Zone LGR work. It's not
      clear whether those tools that Integration Panel members wrote for
      our own purposes on the panel can be shared, or whether ICANN
      staff at this time has a tool that is shareable, but I know this
      is being looked into.<br>
      <br>
      Until then, we can always run any early LGR drafts that are shared
      with us through our tools and report any issues. The main goal is
      to make sure that no LGR is rejected based on a simple typo or
      syntax error.<br>
      <br>
      A./<br>
      Asmus Freytag</span>
  </body>
</html>