ACORD XML In Depth
4-Day In-House Class
The insurance industry is currently undergoing cataclysmic change as a result of XML standardization. Companies that don't adapt to it will get run over. Fortunately, help is at hand. This class will teach you everything you need to know to get started on your own development projects, design your own software, understand what vendors are saying. It is intended for developers, architects, and their managers. Business analysts will also benefit.
1. Introduction to ACORD XML
Lecture: Problem of inter-application communication in a heterogeneous environment, example from air traffic control. Need for a generic, self-describing, machine independent wire protocol, XML as fulfillment of that need. Quick review of XML itself, elements, attributes, and well-formed documents. Basic architecture of ACORD XML, description of different flavors. Need for agreement on problem domain vocabulary within XML.
Lab: Use the XML tool of your choice to create a well-formed XML document describing a pet animal for use in a veterinary office. Each student to work individually.
2. Schemas and ACORD XML
Lecture: Quick examination of XML models of pet animals from last lab, observation of many divergences. Need for standardization of XML problem domain vocabulary. Concept of a valid document, need for description of problem domain vocabularies. Shortcomings of DTD’s, schemas as a solution to these problems. Structure of an XML schema. Examination of ACORD XML schemas for life, P&C, or both.
Lab: Students combine into groups to standardize a set of tags for the pet example from the previous lab. Groups then negotiate with each other to provide a class-wide standard. Students write a schema defining that standard.
3. ACORD Life, P&C, or Reinsurance Standard
Lecture: Background and history of the standard. Demonstration of where to find current specs, developer notes, schemas and DTDs. Examination of the current schema. Discussion of element hierarchy and references of elements to each other, with emphasis on required elements. Explanation of fixed value code lists. Step-by-step walkthrough of agency scenario demonstrating use of objects within the insurance data model. One size never fits all: examination of the various ways of extending the data model.
Lab: Write a valid document describing an insurance event using ACORD XMLife or ACORD XML for P & C standard schema.
4. Writing Programs for ACORD XML
Lecture: Need for programs (as opposed to humans) to access XML documents. Different strategies used by parsers to make parsed XML documents available to programs. Examination of the Document-Object Model (DOM). Concept of a node, different types of nodes, methods and properties of a node. Simple API for XML (SAX) as DOM's anti-particle. Concept of programming to receive events fired by parser during the parsing process. Examination of sample program that uses SAX. Advantages and disadvantages of DOM and SAX. Need for application-specific wrapper. Examination of sample application-specific wrappers generated by .NET and Java environments..
Lab: Use DOM or SAX to write a simple program in your choice of language that opens an XML document and displays portions of it to the user. Alternatively, write a simple wrapper DOM or SAX that presents the pet document in an application-specific wrapper. Or use wrapper class generators to access a document.
5. Using XSLT Style Sheets with ACORD XML
Lecture: Need for data-driven transformation of XML documents into other XML documents or into HTML. Concept of a style sheet, definition of XSLT. Applying a style sheet to an XML document. Syntax of an XSL style sheet. Examples of using stylesheets with ACORD XML messages.
Lab: Write your own XSLT style sheet, or modify the provided sample, to produce good HTML for display. Alternatively, write an XSLT style sheet that transforms an XML document from one schema to another.
6. XML Namespaces, and Using Databases with ACORD XML
Lecture1: Inescapability of tag name conflicts. Quick and easy solution attempts, inadequacy of all of them. Namespace architecture of XML. Creating a unique namespace string, explanation of why they all look like URLs when they aren't. Declaring namespaces in an XML document, assigning a prefix. Determining prefix and full namespace name from DOM and SAX programs.
Lecture 2: XML as a higher level of abstraction for accessing databases. XML support in SQL server. Configuring IIS to allow XML access to SQL server. Performing a query through a URL. Performing a query through a template file. Performing a query through an HTML form. Formatting the results with XSL. Inserting records via XML. Examination of working samples.
Lab choice 1: Write a sample app that examines that namespace of various tags, and does different things for the same tag name in a different namespace.
Lab choice 2: Perform basic SQL queries via URL, template, and form in a browser. Alternatively, write a simple program that performs SQL queries. Insert records into SQL through XML.
7. Plug-And-Play with ACORD XML
Lecture: Design goals of universal "Plug-and-Play" operation. Design problems needing to be solved to obtain P&P. Examples of various solution attempts from other industries, and from commercial products. Need for extensive self description by publishers and subscribers, examination of ACORD Service Provider Extensions (SPX). Demonstration of rudimentary self-configuring client and server program. Discussion of future evolution of P&P.
Lab: Work with self-configuring sample application.
8. ACORD eMerge
Lecture: What is it? Where's it going? Why do you care? Examination of eMerge's goals and design process. Mapping of UML onto XML. Examination of eMerge messages. Discussion of future directions for eMerge.
Lab: None.