IP Library Granted Patent US 7,069,487
Granted Patent B2
US 7,069,487 · App. 10/361,247 · Granted Jun 27, 2006

Pattern matching to validate and classify computer variables to one or more name ranges

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,069,487
App. No.
10/361,247
Granted
Jun 27, 2006
Kind
B2
Abstract

A technique of logically processing bit maps and character maps describing the attributes and values of computer variable ranges and a variable being tested to determine if a match exists between the variable and one or more ranges. Bit maps define the attributes of each character position of variables and ranges; character maps define which character positions are constrained to a fixed character for each of the ranges. This quick and efficient method of logical processing of maps replaces the known method of examining each character position of a variable individually.

Claims (53)

1. In a computer system, a method of identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type for that character position, comprising

creating a bit map for the variable,

comparing the variable bit map with bit maps that characterize the ranges and comparing the variable with character maps to determine a variable range that matches the variable, wherein each range bit map contains logical representations of the attributes associated with the character types each character position of a variable can acquire, and each character map describes whether each character position of a variable is constrained to a fixed character.

2. In a computer system, a method of identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type value for that character position, comprising

generating a bit map for each defined range of variables, the bit map containing logical representations of the attributes associated with the character types each character position of a variable can acquire,

generating a character map for each defined range of variables, the character map containing a fixed character for each character position that is constrained to that fixed character, and otherwise containing a representation of all attributes,

creating a bit map for a variable,

logically ANDing the range bit maps with the variable bit map and the character maps with the variable to determine a variable range that matches the variable.

3. In a computer system, a method of identifying one or more defined variable name ranges to which a variable belongs, wherein the variable has P character positions and each character position is associated with an attribute that defines a type of value for that character position, comprising

creating a bit map to characterize the variable, wherein the bit map comprises a concatenation of Sub-bit maps, one Sub-bit map for each character position of the variable, and further wherein each Sub-bit map comprises a bit string that identifies a character group that represents the attribute of that character position, wherein each character group contains the smallest intersection of character attributes for that group,

logically ANDing the variable bit map with a group bit map that characterizes the attributes of each character position of a valid variable range,

Logically ANDing a character map with the variable, wherein the character Map is P positions long and each position contains a fixed character if the attribute of that position is constrained to that fixed character or otherwise is set equal to all attributes,

Classifying the variable as matching the variable range if the result of the bit map ANDing operation is equal to the bit map of the variable, and the result of the character map ANDing operation is equal to the variable.

4. In a computer system, apparatus for identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type for that character position, comprising

means for creating a bit map for the variable,

means for comparing the variable bit map with range bit maps and means for comparing the variable with character maps to determine a variable range that matches the variable, wherein each range bit map contains logical representations of the attributes associated with the types of values each character position of a variable can acquire, and each character map describes whether each character position of a variable is constrained to a fixed character.

5. In a computer system, apparatus for identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a type of value for that character position, comprising

means for generating a bit map for each defined range of variables, the bit map containing logical representations of the attributes associated with the types of values each character position of a variable can acquire,

means for generating a character map for each defined range of variables, the character map containing a fixed character for each character position that is constrained to that fixed character, and otherwise containing a representation of all attributes,

means for creating a bit map for a variable,

means for logically ANDing the range bit maps with the variable bit map and the character maps with the variable to determine a variable range that matches the variable.

6. In a computer system, apparatus for identifying one or more defined variable name ranges to which a variable belongs, wherein the variable has P character positions and each character position is associated with an attribute that defines a character type for that character position, comprising

means for creating a bit map to characterize the variable, wherein the bit map comprises a concatenation of Sub-bit maps, one Sub-bit map for each character position of the variable, and further wherein each Sub-bit map comprises a bit string that identifies a character group that represents the attribute of that character position, wherein each character group contains the smallest intersection of character attributes for that group,

means for logically ANDing the variable bit map with a group bit map that characterizes the attributes of each character position of a valid variable range,

means for logically ANDing a character map with the variable, wherein the character Map is P positions long and each position contains a fixed character if the attribute of that position is constrained to that fixed character or otherwise is set equal to all attributes,

means for classifying the variable as matching the variable range if the result of the bit map ANDing operation is equal to the bit map of the variable, and the result of the character map ANDing operation is equal to the variable.

7. A computer program product, comprising a storage media containing computer program instructions for controlling a computer to perform the method of identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type for that character position, wherein the method comprises

creating a bit map for the variable,

comparing the variable bit map with range bit maps and comparing the variable with character maps to determine a variable range that matches the variable, wherein each range bit map contains logical representations of the attributes associated with the character types each character position of a variable can acquire, and each character map describes whether each character position of a variable is constrained to a fixed character.

8. A computer program product, comprising a storage media containing computer program instructions for controlling a computer to perform the method of identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type for that character position, comprising

generating a bit map for each defined range of variables, the bit map containing logical representations of the attributes associated with the types of values each character position of a variable can acquire,

generating a character map for each defined range of variables, the character map containing a fixed character for each character position that is constrained to that fixed character, and otherwise containing a representation of all attributes,

creating a bit map for a variable,

logically ANDing the range bit maps with the variable bit map and the character maps with the variable to determine a variable range that matches the variable.

9. A computer program product, comprising a storage media containing computer program instructions for controlling a computer to perform the method of identifying one or more defined variable name ranges to which a variable belongs, wherein the variable has P character positions and each character position is associated with an attribute that defines a character type for that character position, comprising

creating a bit map to characterize the variable, wherein the bit map comprises a concatenation of Sub-bit maps, one Sub-bit map for each character position of the variable, and further wherein each Sub-bit map comprises a bit string that identifies a character group that represents the attribute of that character position, wherein each character group contains the smallest intersection of character attributes for that group,

logically ANDing the variable bit map with a group bit map that characterizes the attributes of each character position of a valid variable range,

Logically ANDing a character map with the variable, wherein the character Map is P positions long and each position contains a fixed character if the attribute of that position is constrained to that fixed character or otherwise is set equal to all attributes,

Classifying the variable as matching the variable range if the result of the bit map ANDing operation is equal to the bit map of the variable, and the result of the character map ANDing operation is equal to the variable.

10. A carrier wave containing computer program instructions for controlling a computer to perform the method of identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type for that character position, wherein the method comprises

creating a bit map for the variable,

comparing the variable bit map with range bit maps and comparing the variable with character maps to determine a variable range that matches the variable, wherein each range bit map contains logical representations of the attributes associated with the types of values each character position of a variable can acquire, and each character map describes whether each character position of a variable is constrained to a fixed character.

11. A carrier wave containing computer program instructions for controlling a computer to perform the method of identifying one or more defined variable name ranges to which a variable belongs, wherein each character position of the variable is associated with an attribute that defines a character type for that character position, comprising

generating a bit map for each defined range of variables, the bit map containing logical representations of the attributes associated with the types of values each character position of a variable can acquire,

generating a character map for each defined range of variables, the character map containing a fixed character for each character position that is constrained to that fixed character, and otherwise containing a representation of all attributes,

creating a bit map for a variable,

logically ANDing the range bit maps with the variable bit map and the character maps with the variable to determine a variable range that matches the variable.

12. A carrier wave containing computer program instructions for controlling a computer to perform the method of identifying one or more defined variable name ranges to which a variable belongs, wherein the variable has P character positions and each character position is associated with an attribute that defines a character type for that character position, comprising

creating a bit map to characterize the variable, wherein the bit map comprises a concatenation of Sub-bit maps, one Sub-bit map for each character position of the variable, and further wherein each Sub-bit map comprises a bit string that identifies a character group that represents the attribute of that character position,

wherein each character group contains the smallest intersection of character attributes for that group,

logically ANDing the variable bit map with a group bit map that characterizes the attributes of each character position of a valid variable range,

Logically ANDing a character map with the variable, wherein the character Map is P positions long and each position contains a fixed character if the attribute of that position is constrained to that fixed character or otherwise is set equal to all attributes,

Classifying the variable as matching the variable range if the result of the bit map ANDing operation is equal to the bit map of the variable, and the result of the character map ANDing operation is equal to the variable.

Assignments (3)
RELEASE Recorded Nov 16, 2004
From: SILICON VALLEY BANK
To: MAILBLOCKS INC.
Reel/Frame 016004/0602 →
SECURITY INTEREST Recorded May 5, 2004
From: MAIBLOCKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 015286/0349 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2003
From: TROTTMAN, DOUGLAS ALAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 013763/0264 →