Version 1.02 12/12/00 225
13Unicode Collation Protocol
This chapter defines the Unicode Collation protocol. This protocol is used to allow code running in
the boot services environment to perform lexical comparison functions on Unicode strings for given
languages.

13.1 UNICODE_COLLATION Protocol

Summary
Is used to perform case-insensitive comparisons of Unicode strings.
GUID
#define UNICODE_COLLATION_PROTOCOL \
{ 1d85cd7f-f43d-11d2-9a0c-0090273fc14d }
Protocol Interface Structure
typedef struct {
EFI_UNICODE_COLLATION_STRICOLL StriColl;
EFI_UNICODE_COLLATION_METAIMATCH MetaiMatch;
EFI_UNICODE_STRLWR StrLwr;
EFI_UNICODE_STRUPR StrUpr;
EFI_UNICODE_FATTOSTR FatToStr;
EFI_UNICODE_STRTOFAT StrToFat;
CHAR8 *SupportedLanguages;
} UNICODE_COLLATION_INTERFACE;
Parameters
StriColl Performs a case-insensitive comparison of two Null-terminated
Unicode strings. See Section 13.1.1.
MetaiMatch Performs a case-insensitive comparison between a Null-
terminated Unicode pattern string and a Null-terminated Unicode
string. The pattern string can use the ‘?’ wildcard to match any
character, and the ‘*’ wildcard to match any substring. See
Section 13.1.2.
StrLwr Converts all the Unicode characters in a Null-terminated
Unicode string to lower case Unicode characters. See
Section 13.1.3.