NIEM Examples - Commercial Vehicle Information (ACQ/ACR/AVQ/AVR/DQ/DR/KQ/KR)
Commercial Vehicle Information NIEM Specifications
This section provides Native format specifications and examples for Nlets user access to the Commercial Vehicle Information System (CVIS).
This system provides Nlets users with access to safety information on motor carriers and the vehicles that are assigned to those motor carriers. Nlets users can access the CVIS Target File through a Nlets Carrier Status Query (ACQ) or a Nlets Vehicle Status Query (AVQ).
A second purpose of the Nlets/AAMVAnet connection is to permit state CVIS registration users to utilize the Nlets vehicle registration transactions (RQ/RR) directly from their AAMVAnet terminals.
An agency may request carrier information by sending the Carrier Status Request (ACQ) to the CVIS Central Site Target File where the information is stored. When AAMVAnet responds with an ACR:
- Up to five ACR messages may be received.
- When multiple ACR messages are received, each message will have a notation at the bottom of the message "PAGE n of n PAGES" so that the recipient will know how many messages to expect.
- If more than five carrier records exist on the CVIS Target File, a special notation will be placed at the bottom of each message "MATCH LIMIT EXCEEDED, NOTIFY PRISM HELP DESK".
- If this message is received, recipients are asked to contact the CVIS Help Desk at AAMVAnet (888) 226-8280(AAMVA80) and report this incident.
An agency may request vehicle information by sending the NLETS Vehicle Status Request (AVQ) to the CVIS Central Site Target File. When AAMVAnet responds with an AVR, there is the possibility that multiple Vehicle Status responses (AVR) messages will be received in response to the Vehicle Status inquiry (AVQ).
- Although more than 1 registration for a vehicle is unusual, the CVIS Target File may have up to 10 registrations for a single vehicle. The last two lines which contain registration related data may be repeated up to 10 times.
- A maximum of 10 AVR messages may be received.
- If multiple AVR messages are sent the following notation will be at the end of each message, "PAGE n of n PAGES".
- If more than 10 vehicle records have been found on the CVIS Target File with the same VIN or License Plate Number/State, the following notation will be found at the end of each message, "MATCH LIMIT EXCEEDED, NOTIFY CVIS HELP DESK". When this notation is received, the recipient is asked to contact the CVIS Help Desk at AAMVAnet (888) 222-8280(AAMVA80) and report the incident.
All Nlets NIEM messages must be based on the Nlets NIEM Message Structure and include the standard Nlets XML Header as detailed in Message Structure. The NIEM header and hierarchy of the elements in this section have been omitted to avoid redundancy. The associated schemas and instances should be consulted to determine the correct XPaths of the elements.
Element Dictionary
Transaction types detailed below include: Query by DOT Number (ACQ), Query by License Plate, Type, Year (AVQ), Query by VIN (AVQ), Response to Carrier Status Query (ACR) Response to Vehicle Status Query (AVR), Driver's License Query (DQ), Driver's License Response in Free Text (DR), Drivers History Query (KQ) & Drivers History Response in Free Text (KR).
Query Formats
Query by DOT Number (ACQ)
n2:NLETSInquiryData
This element will contain all elements specific to this transaction.
nc:CommercialVehicle
A class of vehicle that includes motor vehicles with a gross vehicle weight rating of 26,001 pounds or more.
This element will contain data about a commercial vehicle.
nc:VehicleMotorCarrierIdentification
US DOT Number
nc:IdentificationID
A value that identifies something.
This element will contain the DOT number being queried.
nc:IdentificationSourceText
A person, organization, or locale which issues an identification.
The value "DOT" should be contained in this element to indicate that this federal ID is the DOT number.
Query by License Plate, Year, Type (AVQ)
n2:NLETSInquiryData
This element will contain all elements specific to this transaction.
nc:Vehicle
A motor-driven conveyance designed to carry its operator, and optionally passengers and cargo, over land.
nc:ConveyanceRegistrationPlateIdentification
An identification on a metal plate fixed to a conveyance.
nc:IdentificationID
A value that identifies something.
This element will contain the license plate number to be queried.
nc:IdentificationSourceText
A person, organization, or locale which issues an identification.
This element's value should be the issuing state of the license plate.
Query by VIN (AVQ)
n2:NLETSInquiryData
This element will contain all elements specific to this transaction.
nc:Vehicle
A motor-driven conveyance designed to carry its operator, and optionally passengers and cargo, over land.
nc:VehicleIdentification
An identification on a metal plate fixed to a conveyance.
nc:IdentificationID
A value that identifies something.
This element will contain the license plate number to be queried.
Response Formats
Response to carrier status query (ACR)
n2:NLETSResponseData
n2:ResponseText
This element will contain the free text response. Nlets recommends the use of
tags to ensure that the
response does not contain any characters illegal in XML.
Response to vehicle status query (AVR)
n2:NLETSResponseData
n2:ResponseText
This element will contain the free text response. Nlets recommends the use of
tags to ensure that the
response does not contain any characters illegal in XML.
Commercial Vehicle Information NIEM Examples
Example 1: Carrier Status query by DOT Number.
<n2:NLETS xmlns:nh2="http://www.nlets.org/niem/nlets-hdr/1.0" n2:version="4.00" xmlns:nc="http://niem.gov/niem/niem-core/2.0" xmlns:n2="http://www.nlets.org/niem/1.0">
<n2:NLETSMessageHeader>
<nh2:MessageKeyCodeText>ACQ</nh2:MessageKeyCodeText>
<nh2:OriginatingORIID>AZNLETS20</nh2:OriginatingORIID>
<nh2:DestinationORIID>FM</nh2:DestinationORIID>
<nh2:DocumentControlFieldText>
<![CDATA[1234567890]]>
</nh2:DocumentControlFieldText>
</n2:NLETSMessageHeader>
<n2:NLETSInquiryData n2:key="ACQ">
<nc:CommercialVehicle>
<nc:VehicleMotorCarrierIdentification>
<nc:IdentificationID>1234567</nc:IdentificationID>
</nc:VehicleMotorCarrierIdentification>
</nc:CommercialVehicle>
</n2:NLETSInquiryData>
</n2:NLETS>
Example 2: Carrier Status response by DOT Number (SaferSys)
<n2:NLETS xmlns:nh2="http://www.nlets.org/niem/nlets-hdr/1.0" n2:version="4.00" xmlns:nc="http://niem.gov/niem/niem-core/2.0" xmlns:n2="http://www.nlets.org/niem/1.0">
<n2:NLETSMessageHeader>
<nh2:MessageKeyCodeText>ACR</nh2:MessageKeyCodeText>
<nh2:OriginatingORIID>FM0000000</nh2:OriginatingORIID>
<nh2:DestinationORIID>AZNLETS47</nh2:DestinationORIID>
<nh2:DocumentControlFieldText><![CDATA[ACQTESTMB1]]></nh2:DocumentControlFieldText>
<nh2:MessageReceiveDate>05/04/2020</nh2:MessageReceiveDate>
<nh2:MessageReceiveTime>09:16</nh2:MessageReceiveTime>
<nh2:MessageSendDate>05/04/2020</nh2:MessageSendDate>
<nh2:MessageSendTime>09:16</nh2:MessageSendTime>
<nh2:ReceiveMessageNumeric>13589</nh2:ReceiveMessageNumeric>
<nh2:SendMessageNumeric>00451</nh2:SendMessageNumeric>
</n2:NLETSMessageHeader>
<n2:NLETSInquiryData n2:key="ACQ">
<nc:CommercialVehicle>
<nc:VehicleMotorCarrierIdentification>
<nc:IdentificationID>999999</nc:IdentificationID>
<nc:IdentificationSourceText>DOT</nc:IdentificationSourceText>
</nc:VehicleMotorCarrierIdentification>
</nc:CommercialVehicle>
</n2:NLETSInquiryData>
<n2:NLETSResponseData n2:key="ACR">
<n2:ResponseText>DOT: 999999 LEGAL NAME: FAKE TRUCKING INC
DBA:
PHYSICAL ADR: 123 FAKE LN
CTY: SUGAR LAND STATE: TX ZIP: 77478
MAILING ADR: 123 FAKE LN
CTY: SUGAR LAND STATE: TX ZIP: 77478
TEL: FAX:
EMAIL:
ENTITY TYPE: C
ALLOWED TO OPERATE: YES
PASSENGER CARRIER : NO
INTERSTATE CARRIER : N
ISS INDICATOR : N
IIS SCORE : N DATE : 4/24/2020
VEHICLE HHG : N NATIONAL AVERAGE RATE : 4.5
MCMIS STATUS : A
MCS150 DATE : 2007-04-06
MCSIP LEVEL : 0 DATE :
LAST UPDATED: 2012-10-19
DOCKET #: 415757 REF: 0 PREFIX: MC
--------------------------------------------
-- INSURANCE --
--------------------------------------------
INSURANCE REQD: Y ON FILE: 0 AMT REQD: 750
CARGO INS REQD: Y ON FILE: N
BOND INS REQD : N ON FILE: N
*Values in 1000s
--------------------------------------------
-- SAFETY INFO --
--------------------------------------------
SAFETY RATING: DATE:
REVIEW TYPE : DATE:
--------------------------------------------
-- INSPECTIONS --
--------------------------------------------
DRIVER INSPECTIONS : 11 OOS: 0
VEHICLE INSPECTIONS: 11 OOS: 3
--------------------------------------------
-- HAZMAT INSPECTIONS --
--------------------------------------------
HAZMAT INSPECTIONS : 2 OOS: 0
HAZMAT OUT OF SVC : 0.00
--------------------------------------------
-- OUT OF SERVICE INFO --
--------------------------------------------
DRIVER OOS RATE : 0.00 NATL AVG: 5.51
VEHICLE OOS RATE: 27.27 NATL AVG: 20.72
--------------------------------------------
-- CARRIER CLASS INFO --
--------------------------------------------
CLASS CODE: 1 DESCRIPTION: AUTHORIZED FOR HIRE
--------------------------------------------
-- TAX INFO --
--------------------------------------------
TAX NUMBER: 481303134 TYPE: E
--------------------------------------------
-- LICENSING INSURANCE INFO --
---------------------------------------------
INSURANCE ENTITY NAME: FAKE TRUCKING INC
COMMON AUTHORIZATION STATUS: I
CONTRACT AUTHORIZATION STATUS: I
DATA EFFECTIVE DATE: 2011-12-02
DOCKET NUMBER: 415757
MEXICAN TERRITORY: 0
BROKER AUTHORIZATION STATUS: N
-------BOND TRUST FUND---(REQUIRED:N)--------
STATUS: 1 SUMMERY: N/A
-------CARGO INSURANCE---(REQUIRED:Y)-------
STATUS: 0 SUMMERY: OK
-----LIABILITY INSURANCE---(REQUIRED:Y)-----
AMOUNT: 750000 STATUS: 0 SUMMERY: OK
------CARRIER LICENCE DETAIL-----------------
INSURER: CANAL INSURANCE CO.
INSURANCE TYPE: 1 EFFECTIVE DATE: 2011-12-02
POLICY NUMBER: 386875 EFFECTIVE DATE: 2001-09-21
CONVERAGE: LOW AMOUNT - 0 HIGH AMOUNT - 750000
---------CAVEAT: CARRIER INFO IS REALTIME--------
---------E N D O F R E C O R D--------
</n2:ResponseText>
</n2:NLETSResponseData>
</n2:NLETS>
Example 3: Carrier Status response.
<n2:NLETS xmlns:nh2="http://www.nlets.org/niem/nlets-hdr/1.0" n2:version="4.00" xmlns:nc="http://niem.gov/niem/niem-core/2.0" xmlns:n2="http://www.nlets.org/niem/1.0">
<n2:NLETSMessageHeader>
<nh2:MessageKeyCodeText>ACR</nh2:MessageKeyCodeText>
<nh2:OriginatingORIID>FMLIC0000</nh2:OriginatingORIID>
<nh2:DestinationORIID>AZNLETS20</nh2:DestinationORIID>
<nh2:DocumentControlFieldText>
<![CDATA[1234567890]]>
</nh2:DocumentControlFieldText>
<nh2:MessageReceiveDate>12/01/2019</nh2:MessageReceiveDate>
<nh2:MessageReceiveTime>00:52</nh2:MessageReceiveTime>
<nh2:MessageSendDate>12/01/2019</nh2:MessageSendDate>
<nh2:MessageSendTime>00:52</nh2:MessageSendTime>
<nh2:ReceiveMessageNumeric>00000</nh2:ReceiveMessageNumeric>
<nh2:SendMessageNumeric>00015</nh2:SendMessageNumeric>
</n2:NLETSMessageHeader>
<n2:NLETSResponseData n2:key="ACR">
<n2:ResponseText>
CARRIER IS TARGETED FOR INSPECTION.
DOT/0111111.
NAM/ACME INC.
DBA/ .
ADR/1234 ANY STREET.
CITY/PHOENIX.ST/AZ.ZIP/85000
CAR TARG-IND/T.MCSIP STEP/11.MCSIP
DATE/20000101.
PAGE/01 OF/01
</n2:ResponseText>
</n2:NLETSResponseData>
</n2:NLETS>
Example 4: Vehicle Status query by License Plate and License State (LIS).
<n2:NLETS xmlns:nh2="http://www.nlets.org/niem/nlets-hdr/1.0" n2:version="4.00" xmlns:nc="http://niem.gov/niem/niem-core/2.0" xmlns:n2="http://www.nlets.org/niem/1.0">
<n2:NLETSMessageHeader>
<nh2:MessageKeyCodeText>AVQ</nh2:MessageKeyCodeText>
<nh2:OriginatingORIID>AZNLETS20</nh2:OriginatingORIID>
<nh2:DestinationORIID>FM</nh2:DestinationORIID>
<nh2:DocumentControlFieldText>
<![CDATA[0123456789]]>
</nh2:DocumentControlFieldText>
</n2:NLETSMessageHeader>
<n2:NLETSInquiryData n2:key="AVQ">
<nc:Vehicle>
<nc:ConveyanceRegistrationPlateIdentification>
<nc:IdentificationID>AAA1111</nc:IdentificationID>
<nc:IdentificationSourceText>AZ</nc:IdentificationSourceText>
</nc:ConveyanceRegistrationPlateIdentification>
</nc:Vehicle>
</n2:NLETSInquiryData>
</n2:NLETS>
Example 5: Vehicle Status query by VIN.
<n2:NLETS xmlns:nh2="http://www.nlets.org/niem/nlets-hdr/1.0" n2:version="4.00" xmlns:nc="http://niem.gov/niem/niem-core/2.0" xmlns:n2="http://www.nlets.org/niem/1.0">
<n2:NLETSMessageHeader>
<nh2:MessageKeyCodeText>AVQ</nh2:MessageKeyCodeText>
<nh2:OriginatingORIID>AZNLETS20</nh2:OriginatingORIID>
<nh2:DestinationORIID>FM</nh2:DestinationORIID>
<nh2:DocumentControlFieldText>
<![CDATA[0123456789]]>
</nh2:DocumentControlFieldText>
</n2:NLETSMessageHeader>
<n2:NLETSInquiryData n2:key="AVQ">
<nc:Vehicle>
<nc:VehicleIdentification>
<nc:IdentificationID>1AAAA11A11A111111</nc:IdentificationID>
</nc:VehicleIdentification>
</nc:Vehicle>
</n2:NLETSInquiryData>
</n2:NLETS>
Example 6: Vehicle Status response.
<n2:NLETS xmlns:nh2="http://www.nlets.org/niem/nlets-hdr/1.0" n2:version="4.00" xmlns:nc="http://niem.gov/niem/niem-core/2.0" xmlns:n2="http://www.nlets.org/niem/1.0">
<n2:NLETSMessageHeader>
<nh2:MessageKeyCodeText>AVR</nh2:MessageKeyCodeText>
<nh2:OriginatingORIID>FMLIC0000</nh2:OriginatingORIID>
<nh2:DestinationORIID>AZNLETS20</nh2:DestinationORIID>
<nh2:DocumentControlFieldText>
<![CDATA[1234567890]]>
</nh2:DocumentControlFieldText>
<nh2:MessageReceiveDate>12/01/2019</nh2:MessageReceiveDate>
<nh2:MessageReceiveTime>01:04</nh2:MessageReceiveTime>
<nh2:MessageSendDate>12/01/2019</nh2:MessageSendDate>
<nh2:MessageSendTime>01:04</nh2:MessageSendTime>
<nh2:ReceiveMessageNumeric>00000</nh2:ReceiveMessageNumeric>
<nh2:SendMessageNumeric>00018</nh2:SendMessageNumeric>
</n2:NLETSMessageHeader>
<n2:NLETSResponseData n2:key="AVR">
<n2:ResponseText>
CARRIER IS TARGETED FOR INSPECTION.
DOT/0111111.
NAM/TRUCKING INC.
DBA/ .
ADR/1234 ANY STREET.
CITY/PHOENIX.ST/AZ.ZIP/85000
CAR TARG-IND/T.MCSIP STEP/11.MCSIP DATE/20000101.
VMA/ KEN.VYR/1990.VIN/1XXXX1X1XX111111.
LIC/AAA1111.LIS/AZ.REG EFF DATE/20010101.REG EXP DATE/20120101.
VEH TARG-HIST IND/T.
PAGE/01 OF/01
</n2:ResponseText>
</n2:NLETSResponseData>
</n2:NLETS>