The rules were in the link I sent out, but I'll condense and recap here:<br><br>0. Start with the empty set. For each code point cp from 0 to 0x10FFFF:<br>1. If generalCategory(cp) is in {Ll, Lu, Lo, Lm, Mn, Mc, Nd}, add cp
<br>2. If NFKC(cp) != cp, remove cp<br>3. If casefold(cp) != cp, remove cp<br>4. If defaultIgnorableCodePoint(cp), remove cp<br>5. If script(cp) in {Xsux, Ugar, Xpeo, Goth, Ital, Cprt, Linb, Phnx, Khar, Phag, Glag, Shaw, Dsrt, Runr}, remove cp
<br>6. If block(cp) in {Combining_Diacritical_Marks_for_Symbols, Musical_Symbols, Ancient_Greek_Musical_Notation}, remove cp<br>N. If cp is in [-A-Z0-9], add cp<br><br>Mark<br><br><div><span class="gmail_quote">On 12/14/06, 
<b class="gmail_sendername">Patrik Fältström</b> &lt;<a href="mailto:patrik@frobbit.se">patrik@frobbit.se</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 14 dec 2006, at 03.21, Kenneth Whistler wrote:<br><br>&gt; Mark suggested:<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;- We've been forgetting to remove default-ignorable-code-points,<br>&gt; so I<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;added an exclusion. It only affects variation selectors.
<br>&gt;<br>&gt; I concur with that. It was going to be my next suggestion to pare<br>&gt; away. I had neglected to spot them right away because I had<br>&gt; already omitted printing out anything from Plane 14.<br><br>Can one of Ken and Mark please post the new algorithm based on these
<br>latest additions? Based on either Marks or my rules?<br><br>&nbsp;&nbsp;&nbsp;&nbsp;Patrik<br><br>_______________________________________________<br>Idna-update mailing list<br><a href="mailto:Idna-update@alvestrand.no">Idna-update@alvestrand.no
</a><br><a href="http://www.alvestrand.no/mailman/listinfo/idna-update">http://www.alvestrand.no/mailman/listinfo/idna-update</a><br></blockquote></div><br><br clear="all"><br>-- <br>Mark