29
ARCHITECTURAL GOVERNANCE & OVERSIGHT Driver History JXDD Model Validation September 4, 2003

Driver History JXDD Model Validation

  • Upload
    aurek

  • View
    34

  • Download
    0

Embed Size (px)

DESCRIPTION

Driver History JXDD Model Validation. September 4, 2003. The Pennsylvania JNET XML Vision. The original JNET Blueprint, published during late 1997, defined an XML based “electronic interchange of data” concept. - PowerPoint PPT Presentation

Citation preview

Page 1: Driver History JXDD Model Validation

ARCHITECTURAL GOVERNANCE & OVERSIGHT

Driver History JXDD Model Validation

September 4, 2003

Page 2: Driver History JXDD Model Validation

PA Driver History XML Model

Page 2

The original JNET Blueprint, published during late 1997, defined an XML based “electronic interchange of data” concept.

This JNET Blueprint established a requirement for the usage of “a standard criminal justice file format to support the electronic interchange of data”.

It further stated “XML provides information about the data itself and how it relates to other data. In essence, XML is emerging as a standard for web-based delivery of data in agreed-upon name-value pairs.”

The Pennsylvania JNET XML Vision

Page 3: Driver History JXDD Model Validation

PA Driver History XML Model

Page 3

The JNET blueprint established a strategic direction for sharing information among JNET participating organizations.

A globally accepted, criminal justice focused, XML data standard is essential to accomplishing the strategy.

JNET is, and has always been, in 100% support of “Facilitating information sharing and integrated justice by reducing impediments, such as standards, cost, and time.”

JNET is committed to being part of the enablement process to more effectively provide information sharing and communications among the many justice/public-safety agencies at the local, state, and federal levels.

The Pennsylvania JNET XML Vision

Page 4: Driver History JXDD Model Validation

PA Driver History XML Model

Page 4

Reliable Messaging Infrastructure

XML Syntax, DTD, JNET Messages

Justice XML Data Model and Schema

Service/Process Definition - ebXML

Justice RDF/OWL

Semantic Web

We are here

XML Technical Strategy

Page 5: Driver History JXDD Model Validation

PA Driver History XML Model

Page 5

Identify, Analyze Data Source and object modeling

Understand Justice Data Model

Map data source object model to Justice data model

Fill the gap:•Add extensions and restrictions•Add local elements

Define data mapping between data source and XML

Define transformation rules between XML and web presentations

Start

End

XML Design Approach

Page 6: Driver History JXDD Model Validation

PA Driver History XML Model

Page 6

Record Type

Record Description

Record Body Length

Total Record Length

CUS0001 Name 123 130

CUS0002 Address 123 130

CUS0003 Information 123 130

CUS0004 Non-Commercial

123 130

CUS0005 Commercial 123 130

CUS0006 Probationary 123 130

CUS0007 Occupational 123 130

VAC Action 61 65

VCD Conviction Date 61 65

VCI Court Info 61 65

VCT Space 61 65

VDS Description 61 65

VIL Violation 61 65

VLD Violation Date 61 65

VPD Process Date 61 65

VSP Space 61 65

Record Type

Record Description

Record Body Length

Total Record Length

ACC Accident Date 61 65

ATD Vehicle Type 61 65

ACL Accident Location 61 65

MAC Action 61 65

MCD Conviction Date 61 65

MCI Court Info 61 65

MDS Description 61 65

MIL Violation 61 65

MLD Violation Date 61 65

MPD Process Date 61 65

MSP Space 61 65

DCL ACT 143 Disclaimer

61 65

PLA PL Action 61 65

PLE End PL Action 61 65

OLA OL Action 61 65

OLE End OL Action 61 65

Data Source Structure

Object

Driver

Address

Driver

Authorization

Authorization

Authorization

Authorization

Violation

Violation

Violation

Violation

Violation

Violation

Violation

Object

Accident

Accident

Accident

Medical

Medical

Medical

Medical

Medical

Medical

Medical

Violation

Violation

Violation

Violation

Violation

Page 7: Driver History JXDD Model Validation

PA Driver History XML Model

Page 7

Object Model

Driver History

Driver

Address

Driver AccidentDriver Accident

Driver AccidentDriver Accident

Driver Authorization(DL)

Driver Authorization(CDL)

Driver Authorization(PL)

Driver Authorization(OLL)

Driver Incident (Medical)Driver Incident

(Medical)

1

1,*

1,*

0,1,*0,1,*

0,1,*

0,1,*

Driver Incident (Violation)Driver Incident

(Violation)

Page 8: Driver History JXDD Model Validation

PA Driver History XML Model

Page 8

Object Mapping

Object Name JNET Type JXDD Base Type JNET Extension

Driver DriverType jxdd3:PersonType DriverRecordTypeElement

Address jxdd3:AddressType

DLAuthorization, CDLAuthorization, PLAuthorization, OLLAuthorization

DriverAuthorizationType jxdd3:DriverAuthorizationType DriverLicenseClassCode, DriverOrignalAuthorizationIssueDate, DriverLicenseLearnerPermitClassCode, DriverLicenseStatusElement, DriverLicenseSchoolBusEndorsementDescriptionText

ViolationIncident, MedicalIncident

DriverIncidentType jxdd3:IncidentTypejxdd3:ConvictionTypejxdd3:ActivityTypejxdd3:CourtActivityType

Act143Disclaimer,Consequence (Action, PLAction, OLLAction, ResponseAction)ProcessDate

DriverAccident DriverAccidentType jxdd3:DriverIncedentType VehicleTypeDescriptionText

Page 9: Driver History JXDD Model Validation

PA Driver History XML Model

Page 9

Schema Diagram

Page 10: Driver History JXDD Model Validation

PA Driver History XML Model

Page 10

Message Structure

DriverHistory

Driver

jxdd3:PersonGivenNamejxdd3:PersonMiddleNamejxdd3:PersonSurNamejxdd3:PersonSuffixNamejxdd3:PersonBirthDate

jxdd3:PersonName

jxdd3:PersonAssignedIDDetails jxdd3:PersonDriverLicenseID

jxdd3:PersonPhysicalDetails jxdd3:PersonSexTextjxdd3:PersonSexCode

DriverRecordTypeElement

jxdd3:Address jxdd3:StreetFullTextjxdd3:AddressCityName

jxdd3:AddressStreet

jxdd3:AddressStateCodeusps:USStateCodeTypeElement

jxdd3:AddressPostalCodeID

DLAuthorizationCDLAuthorizationOLLAuthorizationPLAuthorization

jxdd3:DriverAuthorizationIssueDatejxdd3: DriverAuthorizationExpirationDatejxdd3: DriverAuthorizationEndorsementCode

DriverLicenseClassCode

jxdd3:DriverAuthorizationRestriction

jxdd3: DrivingRestrictionDescriptionText

DriverOriginalAuthorizationIssueDate

DriverLicenseLearnerPermitClassCode

DriverLicenseStatusElement

DriverLicenseSchoolBusEndorsementDescdriptionText

DriverAccident

jxdd3: ActivityDate

jxdd3: IncidentLocation

jxdd3: LocationDescriptionTextVehicleType

DriverLicenseStatusCodeDriverLicenseStatusDescriptionText

DriverRecordTypeCodeDriverRecordTypeDescriptionText

ViolationIncidentMedicalIncident

jxdd3: ActivityTypeText jxdd3: ActivityDescriptionTextjxdd3: ActivityDate

ActionPLActionOLLActionResponseAction

jxdd3: ActivityDate

jxdd3:Incident

jxdd3: ActivityCommentText

jxdd3: Conviction

jxdd3: CourtActivity

ProcessDate

Consequence

Act143Disclaimer

jxdd3: ActivityResultText

Page 11: Driver History JXDD Model Validation

PA Driver History XML Model

Page 11

Data Element MappingDL 2020 Element XML Sub Node XML Path Compliant

CUS001 DLNumber Driver DriverHistory/Driver/jxdd3:PersonAssignedIDDetails/jxdd3:PersonDriverLicenseID YLastName Driver DriverHistory/Driver/jxdd3:PersonName/jxdd3:PersonSurName YFirstName Driver DriverHistory/Driver/jxdd3:PersonName/jxdd3:PersonGivenName YMiddleName Driver DriverHistory/Driver/jxdd3:PersonName/jxdd3:PersonMiddleName YSuffix Driver DriverHistory/Driver/jxdd3:PersonName/jxdd3:PersonSuffixName Y

CUS002 AddressLine1 Address DriverHistory/jxdd3:Address/jxdd3:AddressStreet/jxdd3:/StreetFullText YAddressLine2 Address DriverHistory/jxdd3:Address/jxdd3:AddressStreet/jxdd3:/StreetFullText YCity Address DriverHistory/jxdd3:Address/jxdd3:AddressCityName YState Address DriverHistory/jxdd3:Address/jxdd3:AddressStateCode/usps:USStateCodeTypeElement YZipCode Address DriverHistory/jxdd3:Address/jxdd3:AddressPostalCodeID Y

CUS003 DateOfBirth Driver DriverHistory/pajnet:Driver/jxdd3:PersonBirthDate YSex Driver DriverHistory/pajnet:Driver/jxdd3:PersonPhysicalDetails/jxdd3:PersonSexText Y

DriverHistory/pajnet:Driver/jxdd3:PersonPhysicalDetails/jxdd3:PersonSexCodeRecordType Driver DriverHistory/Driver/DriverRecordTypeElement/DriverRecordTypeCode N

Driver DriverHistory/Driver/DriverRecordTypeElement/DriverRecordTypeDescriptionTextCUS004 DLLicenseClass DLAuthorization DriverHistory/DLAuthorization/DriverLicenseClassCode Y

DLIssueDate DLAuthorization DriverHistory/DLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationIssueDate YDLOrgIssueDate DLAuthorization DriverHistory/DLAuthorization/DriverOriginalAuthorizationIssueDate NDLExpireDate DLAuthorization DriverHistory/DriverAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationExpirationDate YDLMedRestrictions DLAuthorization

DriverHistory/DLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationRestriction/jxdd3:DrivingRestrictionDescriptionText Y

DLLearnerPermit DLAuthorization DriverHistory/DLAuthorization/DriverLicenseLearnerPermitClassCode YDLStatus DLAuthorization DriverHistory/DLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusCode N

DLAuthorization DriverHistory/DLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusDescriptionTextCUS005 CDLClass CDLAuthorization DriverHistory/CDLAuthorization/DriverLicenseClassCode Y

CDLIssueDate CDLAuthorization DriverHistory/CDLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationIssueDate YCDLExpireDate CDLAuthorization DriverHistory/CDLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationExpirationDate YCDLEndorsements CDLAuthorization DriverHistory/CDLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationEndorsementText YCDLRestricitons CDLAuthorization

DriverHistory/CDLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationRestriction/jxdd3:DrivingRestrictionDescriptionText Y

CDLLearnerPermit CDLAuthorization DriverHistory/CDLAuthorization/DriverLicenseLearnerPermitClassCode YCDLStatus CDLAuthorization DriverHistory/CDLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusCode N

CDLAuthorization DriverHistory/CDLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusDescriptionTextCDLSBEndorsements CDLAuthorization DriverHistory/CDLAuthorization/DriverLicenseSchoolBusEndorsementDescriptionText NCDLEndorsements2 CDLAuthorization

CUS006 PLLicenseClass PLAuthorization DriverHistory/PLAuthorization/DriverLicenseClassCode YPLIssueDate PLAuthorization DriverHistory/PLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationIssueDate YPLExpireDate PLAuthorization DriverHistory/PLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationExpirationDate YPLStatus PLAuthorization DriverHistory/PLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusCode N

PLAuthorization DriverHistory/PLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusDescriptionTextCUS007 OLLLicenseClass OLLAuthorization DriverHistory/OLLAuthorization/DriverLicenseClassCode Y

OLLIssueDate OLLAuthorization DriverHistory/OLLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationIssueDate YOLLExpireDate OLLAuthorization DriverHistory/OLLAuthorization/jxdd3:DriverAuthorization/jxdd3:DriverAuthorizationExpirationDate YOLLStatus OLLAuthorization DriverHistory/OLLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusCode N

OLLAuthorization DriverHistory/OLLAuthorization/DriverLicenseStatusElement/DriverLicenseStatusDescriptionTextVAC (Violation) ACTION ViolationIncident DriverHistory/ViolationIncident/Consequence/Action/jxdd3:ActivityResultText YVCD (Violation) CONVICTION DATE ViolationIncident DriverHistory/ViolationIncident/jxdd3:Conviction/jxdd3:ActivityDate YVCI (Violation) COURT INFO ViolationIncident DriverHistory/ViolationIncident/Consequence/jxdd3:CourtActivity/jxdd3:ActivityCommentText YVDS (Violation) DESCRIPTION ViolationIncident DriverHistory/ViolationIncident/jxdd3:Incident/jxdd3:ActivityDescriptionText YVIL (Violation) VIOLATION ViolationIncident DriverHistory/ViolationIncident/jxdd3:Incident/jxdd3:ActivityTypeText YVLD (Violation) VIOLATION DATE ViolationIncident DriverHistory/ViolationIncident/jxdd3:Incident/jxdd3:ActivityDate YVPD (Violation) PROCESS DATE ViolationIncident DriverHistory/ViolationIncident/ProcessDate NATD (Accident) VEHICLE TYPE DriverAccident DriverHistory/DriverAccident/VehicleTypeDescriptionText NACL (Accident) LOCATION DriverAccident DriverHistory/DriverAccident/jxdd3:IncidentLocation/jxdd3:LocationDescriptionText YMAC (Mdeical) ACTION MedicalIncident DriverHistory/MedicalIncident/Consequence/Action/jxdd3:ActivityResultText YMCD (Mdeical) CONVICTION DATE MedicalIncident DriverHistory/MedicalIncident/jxdd3:Conviction/jxdd3:ActivityDate YMCI (Mdeical) COURT INFO MedicalIncident DriverHistory/MedicalIncident/Consequence/jxdd3:CourtActivity/jxdd3:ActivityCommentText YMDS (Mdeical) DESCRIPTION MedicalIncident DriverHistory/MedicalIncident/jxdd3:Incident/jxdd3:ActivityDescriptionText YMIL (Mdeical) VIOLATION MedicalIncident DriverHistory/MedicalIncident/jxdd3:Incident/jxdd3:ActivityTypeText YMLD (Mdeical) VIOLATION DATE MedicalIncident DriverHistory/MedicalIncident/jxdd3:Incident/jxdd3:ActivityDate YPLA (Violation) PL ACTION ViolationIncident DriverHistory/ViolationIncident/Consequence/PLAction/jxdd3:ActivityResultText NOLA (Violation) OL ACTION ViolationIncident DriverHistory/ViolationIncident/Consequence/OLLAction/jxdd3:ActivityResultText N

Page 12: Driver History JXDD Model Validation

PA Driver History XML Model

Page 12

Table Name Entries ExampleSex Code 3 F, M, U

Driver Record Type Code 44 A2, A4, BP, B2, B4, PS, …, XX

Driver License Class Code (non-commercial, commercial, OLL, PL, Learner permit)

4 A, B, C, M

Driver License Medical Restriction Code 29 A, B, C, …, Z, 1, 2, …, 8

Driving Privilege Status Code (non-Commercial) 48 AC, AD, …, ZZ

Commercial Endorsement 7 H, N, O, P, S, T, X

Commercial License Restriction 5 B, C, E, I, L

Driving Privilege Status Code (Commercial) 42 AC, AD, …, ZZ

School Bus Endorsement 3 VAL, NOT, space

PL License Status 4 PP, RD, P3, CP

OLL License Status 2 PO, RO

Vehicle Type 9 01, 02, …, 09

Code Tables

Page 13: Driver History JXDD Model Validation

PA Driver History XML Model

Page 13

Technology, Platforms, and Tools

Technology Standards

Product Platforms

Development Tools

XML Schema v1.1XSLT v1.0J2EE v1.3 JDK v1.3 JMS v1.0.1 LDAP v3SSL v3x.509 v3

BEA Weblogic Server 6.1IBM WebsphereMQ 5.3Sun iPlanet Directory v4.xCustom message brokerMS NT4, W2K

XML Spy 5.0TogetherControlCenter v6Apache Xerces2 Java XML Parser

Page 14: Driver History JXDD Model Validation

PA Driver History XML Model

Page 14

Messaging Hub

JNET

SSL

SSLSSL

AOPC

PennDOT IMS

Web App

PSP IIMS

PennDOT Photo DB

JNET User Desktop

SSL

Wireless Middleware

Carrier Carrier Network(s)Network(s)

JNET User PDA

SSL/VPN

Police Troopers

Infrastructure for Driver Info

Page 15: Driver History JXDD Model Validation

PA Driver History XML Model

Page 15

Scale – Volume, Size, Speed, …

Daily Volume

Max 250~300

Min 40~50

Ave 125

Message Size

Max 55K

Min 1.5K

Ave 8.5K

Performance

Roundtrip ~1.26 sec

JNET ~0.65 sec

Mainframe ~0.61 sec

Usage

Authorized Users for DH 4774 (41% of total JNET users)

Active Users 744

Average request / per day 120~130

Average request /per day/per user 5

Page 16: Driver History JXDD Model Validation

PA Driver History XML Model

Page 16

Cost Estimation

Overall cost: $350K which includes:•JXDD research

•Understanding JXDD•Strategy, methodology

•Data source analyses•Understanding data•Object Modeling•Data mapping

•XML design work •Schema•Transformation (mainframe to XML)•Presentation style sheet

•Application development•Web app•Security•Application and system integration

•Testing and deployment

* Hardware and software costs are not covered.

Page 17: Driver History JXDD Model Validation

PA Driver History XML Model

Page 17

Benefits, Barriers, OptionsBenefits1. Wider domain coverage (LE, Courts, Corrections, Probations, Drivers/Vehicles, etc.)2. Object model (reusable, extendable, manageable objects)3. Flexible object structure (optional, multiple)4. Some standardized codesBarriers1. Lack of support to define accurate metadata (easy to extend but not easy to restrict)2. Validation performance suffers (may need performance oriented XML parser)3. More generalization and fewer specialization (a balance between wider and deeper)4. Lack of training/education program (CBT for basics and workshop for advanced)Development Options1. Consider JXDD as a Data Model, design application schemas using inheritance and

extensions based on JXDD This will have higher JXDD compliance, reusability and extendibility It will lose the ability to accurately define metadata such as multiplicity and optional element applicability Practically, it’s not for real time validation applications due to performance and metadata accuracy

2. Consider JXDD as a Reference Data Model, design application schemas as local schemas This will provide a thin and accurate schema to support validation/performance oriented application When JXDD changes/upgrades, there is no impact on local schema so that the local schema loses compliance When the schema grows, it eventually would hit performance problem

3. Future version of JXDD It’s the direction the technology is heading (from structure to semantic) It’s not prime time yet.

4. Others ?

Page 18: Driver History JXDD Model Validation

PA Driver History XML Model

Page 18

JNET Driver Information Query Demo

•Driver Photo Lookup

•Driver History Report

Demo

Page 19: Driver History JXDD Model Validation

PA Driver History XML Model

Page 19

Driver Photo Lookup

Page 20: Driver History JXDD Model Validation

PA Driver History XML Model

Page 20

Driver Photo Lookup (continue)

Page 21: Driver History JXDD Model Validation

PA Driver History XML Model

Page 21

Driver Photo Lookup (continue)

Page 22: Driver History JXDD Model Validation

PA Driver History XML Model

Page 22

Driver Photo Lookup (continue)

Page 23: Driver History JXDD Model Validation

PA Driver History XML Model

Page 23

Driver Photo Lookup (continue)

Page 24: Driver History JXDD Model Validation

PA Driver History XML Model

Page 24

Driver History

Page 25: Driver History JXDD Model Validation

PA Driver History XML Model

Page 25

Driver History (continue)

Page 26: Driver History JXDD Model Validation

PA Driver History XML Model

Page 26

Driver History (continue)

Page 27: Driver History JXDD Model Validation

PA Driver History XML Model

Page 27

Driver History (continue)

Page 28: Driver History JXDD Model Validation

PA Driver History XML Model

Page 28

Driver History (continue)