Efficient collation element structure for handling large numbers of characters
First Claim
1. A method for facilitating use of a collation element that supports a large number of characters, comprising:
- receiving the collation element;
reading a primary weight value from a primary weight field within the collation element;
if the primary weight value falls within a reserved set of values, extending the primary weight field to include all bits within the collation element, wherein each different primary weight value in the extended primary weight value field identifies a different character, whereby the size of the extended primary weight field increases the number of characters that can be represented by the collation element; and
if the primary weight value is not within the reserved set of values, reading a secondary weight value from the secondary weight field within the collation element, and reading a tertiary weight value from the tertiary weight field within the collation element, wherein the collation element is four bytes in size, of which the primary weight field is two bytes, the secondary weight field is one byte and the tertiary weight field is one byte, unless a value in the primary weight field belongs to the reserved set of values, in which case the primary weight field takes up all four bytes of the collation element, wherein the reserved set of values for the primary weight value includes hexadecimal values XFFFO-OXFFFF, wherein the primary weight value identifies a character;
wherein the secondary weight value can specify an accent on the character; and
wherein the tertiary weight value can specify case information for the character.
2 Assignments
0 Petitions
Accused Products
Abstract
One embodiment of the present invention provides a system for facilitating use of a collation element that supports a large number of characters. The system operates by receiving the collation element and reading a primary weight value from a primary weight field within the collation element. If the primary weight value falls within a reserved set of values, the system reads an additional portion of the primary weight value from both a secondary weight field and a tertiary weight field within the collation element. On the other hand, if the primary weight value is not within the reserved set of values, the system reads a secondary weight value from the secondary weight field, and also reads a tertiary weight value from the tertiary weight field.
176 Citations
18 Claims
-
1. A method for facilitating use of a collation element that supports a large number of characters, comprising:
-
receiving the collation element;
reading a primary weight value from a primary weight field within the collation element;
if the primary weight value falls within a reserved set of values, extending the primary weight field to include all bits within the collation element, wherein each different primary weight value in the extended primary weight value field identifies a different character, whereby the size of the extended primary weight field increases the number of characters that can be represented by the collation element; and
if the primary weight value is not within the reserved set of values, reading a secondary weight value from the secondary weight field within the collation element, and reading a tertiary weight value from the tertiary weight field within the collation element, wherein the collation element is four bytes in size, of which the primary weight field is two bytes, the secondary weight field is one byte and the tertiary weight field is one byte, unless a value in the primary weight field belongs to the reserved set of values, in which case the primary weight field takes up all four bytes of the collation element, wherein the reserved set of values for the primary weight value includes hexadecimal values XFFFO-OXFFFF, wherein the primary weight value identifies a character;
wherein the secondary weight value can specify an accent on the character; and
wherein the tertiary weight value can specify case information for the character. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for facilitating use of a collation element that supports a large number of characters, the method comprising:
- receiving the collation element;
reading a primary weight value from a primary weight field within the collation element;
if the primary weight value falls within a reserved set of values, extending the primary weight field to include all bits within the collation element, wherein each different primary weight value in the extended primary weight value field identifies a different character, whereby the size of the extended primary weight field increases the number of characters that can be represented by the collation element; and
if the primary weight value is not within the reserved set of values, reading a secondary weight value from the secondary weight field within the collation element, and reading a tertiary weight value from the tertiary weight field within the collation element, wherein the collation element is four bytes in size, of which the primary weight field is two bytes, the secondary weight field is one byte and the tertiary weight field is one byte, unless a value in the primary weight field belongs to the reserved set of values, in which case the primary weight field takes up all four bytes of the collation element, wherein the reserved set of values for the primary weight value includes hexadecimal values OXFFFO-OXFFFF, wherein the primary weight value identifies a character;
wherein the secondary weight value can specify an accent on the character; and
wherein the tertiary weight value can specify case information for the character. - View Dependent Claims (8, 9, 10, 11, 12)
- receiving the collation element;
-
13. An apparatus that facilitates use of a collation element that supports a large number of characters, comprising:
-
an assignment mechanism that is configured to read a primary weight value from a primary weight field within the collation element;
wherein if the primary weight value falls within a reserved set of values, the assignment mechanism is configured to extend the primary weight field to include all bits within the collation element, wherein each different primary weight value in the extended primary weight value field identifies a different character, whereby the size of the extended primary weight field increases the number of characters that can be represented by the collation element; and
wherein if the primary weight value is not within the reserved set of values, the assignment mechanism is configured to, read a secondary weight value from the secondary weight field within the collation element, and to read a tertiary weight value from the tertiary weight field within the collation element, wherein the collation element is four bytes in size, of which the primary weight field is two bytes, the secondary weight field is one byte and the tertiary weight field is one byte, unless a value in the primary weight field belongs to the reserved set of values, in which case the primary weight field takes up all four bytes of the collation element, wherein the reserved set of values for the primary weight value includes hexadecimal values OXFFFO-OXFFFF. wherein the primary weight value identifies a character;
wherein the secondary weight value can specify an accent on the character; and
wherein the tertiary weight value can specify case information for the character. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification