ID Parsing Library for .NET
DL/ID Parsing Library
DL/ID cards are widely used for storing personal information such as first name, last name, birth date, address, etc. They also contain special information related to driving activity including DL number, class and restrictions. Because of the utility of this data, there is a high demand for systems that can scan and process DL/ID information.
As a solution, IDScan.net developed a DL/ID Parsing library for multiple development environments. The whole list can be found on our download page. We collected 10+ years of ID formats from the US, Canada, and many other countries and tested each one to ensure every DL/ID card is parsed with precision.
Implementation Instructions Using Microsoft Visual Studio
for .NET languages
- Download dlplib from the link below and extract files.
- With your project open, go to Project -> Add Reference and browse path to dlplib.dll.
Example projects can found below or on our SDK downloads here
.NET ID Parsing Library – Download
C# Example Project for SDK Lite (Hardware ID and Registration Key) – Download
VB.NET Example Project for SDK Lite (Hardware ID and Registration Key) – Download
.NET Library Properties, Methods, Events
DriverLicense Class
Object that enables access to parsed information from an ID.
Constructors
Name | Description |
---|---|
DriverLicense() | Initializes an instance of the DriverLicense class |
Fields
Field Name | Description |
---|---|
Address1 | First line of address of cardholder |
Address2 | Second line of address of cardholder |
Birthdate | Birth date of cardholder |
CardRevisionDate | DHS required field that indicates date of the most recent version change or modification to the visible format of the DL/ID (MMDDCCYY for U.S., CCYYMMDD for Canada) |
City | City of cardholder address |
ClassificationCode | Driver License classification code as defined by Federal Highway regulations and by AAMVA; others are defined by DL Classification Code Standards |
ComplianceType | DHS required field that indicates compliance:“M” = materially compliant; “F” = fully compliant; and, “N” = non-compliant. |
ComputerID | Hardware ID |
Country | Country of cardholder |
DocumentType | Can be a driver’s license or ID ID – Identity Card DL – Driver License CC – Bank Card HC – Health Card TD – Machine Readable Travel Document CAC – Department of Defense and Common Access Card |
Document Discriminator | Number must uniquely identify a particular document issued to that customer from others that may have been issued in the past. This number may serve multiple purposes of document discrimination, audit information number, and/or inventory control. |
EndorsementCodeDescription | Description of Endorsements Code |
EndorsementsCode | Any endorsements on a driver's license which authorize the operation of specified types of vehicles or the operation of vehicles carrying specified loads. Endorsements shall be specific to classification of a driver's license. |
ExpirationDate | Date on which the driving and identification privileges granted by the document are no longer valid (MMDDCCYY for U.S.) |
EyeColor | Color of cardholder’s eyes, as defined in ANSI D-20 codes |
FirstName | First name of cardholder |
FullName | Full name of cardholder |
Gender | Gender of cardholder |
HairColor | Hair color of cardholder. Brown, black, blonde, gray, red/auburn, sandy, white |
HAZMATExpDate | Date on which the hazardous material endorsement granted by the document is no longer valid. (MMDDCCYY for U.S., CCYYMMDD for Canada) |
Height | Height of cardholder, followed by “in” or “cm” |
IIN | Issuer Identification Number – the full 6-digit IIN should be encoded |
IssueDate | Issue date of DL/ID |
IssuedBy | Code of the country or a state where the document was issued |
JurisdictionCode | State of cardholder address |
LastName | Last name of cardholder |
LicenseNumber | License number of cardholder |
LimitedDurationDocument | DHS required field that indicates that the cardholder has temporary lawful status = “1” |
MiddleName | Middle Name of card holder |
NamePrefix | NamePrefix of cardholder |
NameSuffix | NameSuffix of cardholder |
OrganDonor | Organ Donor |
PostalCode | Postal code of cardholder address, if unknown, zeroes will be used |
Race | Race or ethnicity of cardholder as defined in ANSI D20 |
RealId | This document is real ID |
RestrictionCode | Jurisdiction-specific codes that represent restrictions to driving privileges (such as airbrakes, automatic transmission, daylight only,etc.) |
RestrictionCodeDescription | Description of RestrictionCode |
Specification | Standard of scanned document |
VehicleClassCode | Jurisdiction-specific vehicle class / group code, designating the type of vehicle the cardholder has privilege to drive. |
VehicleClassCodeDescription | Description of VehicleClassCode |
Veteran | Field that indicates that the cardholder is a veteran |
WeightKG | Physical weight or weight range in KG ex. 77 up to 31 32 – 45 46 – 59 |
WeightLBS | Physical weight or weight range in pounds ex. 138 up to 70 71 – 100 101 – 130 |
DriverLicenseEx Class
This class is similar to DriverLicense but also provides support for data types such as date, boolean, string, etc and does not contain an ExtractInfo() method.
Name | Description |
---|---|
DriverLicenseEx() | Initializes an instance of the DriverLicenseEx class |
Fields are the same as DriverLicense.
Methods
Method Name | Description | Return Value |
---|---|---|
ParseText(System.String) | Parses scanned text of ID. | Returns a DriverLicense object on success and null on error |
ParseText(System.String, [System.String = ""]) | Parses scanned text of ID. The first parameter is a string to parse. The second optional parameter is the folder where the license file is located | Returns a DriverLicense object on success and null on error |