On 6/27/07, Jiri Hajek <[EMAIL PROTECTED]> wrote:

I tried to think about this in as many details as possible and I'd say
that the original problem that I'd like to solve here (i.e. collation
of Unicode character sets) doesn't require any special complex
handling in SQLite. We really should just define how will individual
collations be named, so that Unicode SQLite databases become portable.

The only argument against this was that individual implementations of
Unicode standard (i.e. mainly internal Windows methods or ICU library)
could differ. However, is it really a problem? I'd say that it isn't.
Unicode specifies exactly how characters should be sorted and so _if_
there really are any differences between Windows and ICU
implementations, they should be considered as a bug and be solved
there. I.e. it isn't anything SQLite should be responsible for.

No, it doesn't.  See _The Unicode Standard 5.0_ chapter 5 section 16
(http://www.unicode.org/versions/Unicode5.0.0/ch05.pdf).  Unicode
Technical Standard #10 (http://www.unicode.org/reports/tr10/)
specifies how collections work, and provides a default table, but note
carefully that the table is versioned and contains incompatible
changes between versions -- see the Modifications section at the end.
It does not deal with locale-specific collation at all.

I'll also refer you to the blog of Michael Kaplan, someone involved in
both the Unicode Consortium and the NLS group at Microsoft:
http://blogs.msdn.com/michkap/search.aspx?q=collation

On platform compatibility:
http://blogs.msdn.com/michkap/archive/2004/11/28/271121.aspx
http://blogs.msdn.com/michkap/archive/2005/05/04/414520.aspx

What Microsoft does with their own SQL Server:
http://blogs.msdn.com/michkap/archive/2005/03/11/394359.aspx

The same issues apply to anything you try to do with SQLite.

Unicode is nowhere near as simple as people would like it to be, which
is why everyone picks a specific platform with a known state and
sticks to it like glue.  There be dragons here.

-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to