Patent Document

RELATED APPLICATIONS 
       [0001]    This application is a continuation application of co-pending U.S. patent application Ser. No. 09/952,990 entitled REAL-TIME SINGLE ENTRY MULTIPLE CARRIER INTERFACE (SEMCI), filed Sep. 14, 2001, which application claims the benefit of U.S. Provisional Patent Application Ser. No. 60/232,711 filed on Sep. 15, 2000, the entire contents of both of which applications are hereby incorporated by reference herein for all purposes. 
     
    
     FIELD OF INVENTION 
       [0002]    This invention relates generally to the implementation of several standards developed by ACORD, an insurance industry standards organization; and particularly to a Web Transaction Interface, XML Insurance and Surety Service Specification, and the EDI standard AL3. 
       COMPUTER PROGRAM LISTING APPENDIX 
       [0003]    A Computer Program Listing Appendix, containing four (4) total files on a single compact disc, two (2) copies of which are submitted, is included with this application and incorporated by reference herein. The first file, named “listing1 (00007263).TXT”, is 8,192 bytes and was created on Sep. 23, 2009. The second file, named “Iisting2 (00007264).TXT”, is 28,672 bytes and was created on Sep. 23, 2009. The third file, named “listing3 (00007265).TXT”, is 16,384 bytes and was created on Sep. 23, 2009. The fourth file, named “listing4 (00007262).TXT”, is 14,336 bytes and was created on Sep. 23, 2009. 
       BACKGROUND OF THE INVENTION 
       [0004]    The present Single Entry Multiple Carrier Interface (SEMCI) evolved out of the need for independent insurance agents to submit information to multiple insurance carriers. Historically, agents were required to use forms and systems provided by each carrier. Information common to all carriers was re-entered for each carrier creating redundant work for agents. To reduce this redundant work, ACORD defined the EDI standard known as AL3 and SEMCI was adopted as an insurance industry approach. 
         [0005]    AL3 is focused on the communication between insurance carriers, their agents and other trading partners and has been in use since the 1980&#39;s. This EDI standard is a common set of rules that allow separate computer systems to talk to each other, to communicate policy data, accounting data, claims data, and application data for personal and commercial insurance, surety and specialty lines. SEMCI was implemented as a batch-oriented, store-and-forward “Electronic Data Interchange” (EDI) model using a private computer network. Agents and carriers submit EDI transactions over a private computer network to a clearinghouse. The clearinghouse places transactions in the “mail box” of the appropriate party and delivers the contents of each party&#39;s “mail box” to them on request. 
         [0006]    With the advent of the Internet and related Internet standards, secure business-to-business commerce over a public network is now a reality. The insurance industry seeks to exploit this capability and Real-Time SEMCI is an implementation of electronic business-to-business commerce for insurance. Real-Time SEMCI provides agents the ability to enter data once into their agency management system and transmit that data over the Internet to multiple insurance company systems. The receiving insurance carriers process the transactions and return replies to the agent. For example, agents can request and receive quotes or submit applications for insurance. The implementation of Real-Time SEMCI relies on ACORD&#39;s Web Transaction Interface standard and ACORD&#39;s XML Insurance And Surety Service Specification. The Web Transaction Interface standard prescribes the communication protocol for this business as HTTP and it specifies an HTML form tag name that will contain transactions. ACORD&#39;s XML Insurance And Surety Service Specification defines business transactions using the World Wide Web Consortium&#39;s (W3C) XML standard. 
         [0007]    As is well understood by those possessing an ordinary level of skill in the pertinent art, Hypertext Transfer Protocol, or HTTP, is a request/response application-level protocol for distributed, collaborative, hypermedia information systems. HTML is an authoring language used to create documents accessible via the World Wide Web (WWW) or (Web). HTML defines a structure and layout of a Web document by using a variety of tags and attributes. XML is a specification developed by the W3C especially for Web documents. XML allows designers to create their own customized tags, enabling the definition, transmission, validation and interpretation of data between applications and between organizations. Extensible Stylesheet Language (XSL) is a language for expressing stylesheets. It consists of a language for transforming XML documents, and an XML vocabulary for specifying formatting semantics. An XSL stylesheet specifies the presentation of a class of XML documents by describing how an instance of the class is transformed into an XML document that uses the formatting vocabulary. 
         [0008]    It is an object of the present invention to translate from ACORD&#39;s XML Insurance And Surety Service Specification format to ACORD&#39;s AL3 EDI file format, so that insurance information communicated over the Internet or by other means and can be processed in the ACORD AL3 EDI file format. 
         [0009]    It is a further object of the present invention to translate from ACORD&#39;s AL3 EDI file format to ACORD&#39;s XML Insurance And Surety Service Specification format so that insurance information processed in the AL3 format can be communicated over the Internet or by other means in ACORD&#39;s XML Insurance And Surety Service Specification format. 
         [0010]    It is a further object of the invention to reduce the time and the cost required to rate and quote insurance policies. 
       SUMMARY OF THE INVENTION 
       [0011]    A method and system for converting ACORD XML files to and from ACORD AL3 files in real-time. The method for converting from ACORD XML to ACORD AL3 format includes: applying a stylesheet to at least one ACORD XML file thereby generating at least one data record in an intermediate format and including information included in the at least one ACORD XML file; and, translating the at least one record in the intermediate format to ACORD AL3 format. The method for converting from ACORD AL3 files to ACORD XML files includes: translating at least one record including information stored in the ACORD AL3 file format to an intermediate format; and, applying a stylesheet to the at least one record in the intermediate format thereby generating at least one ACORD XML file being indicative of the information and suitable for transmission. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]    Various other objects, features and advantages of the invention will become more apparent by reading the following detailed description in conjunction with the drawings, which are shown by way of example only, wherein: 
           [0013]      FIG. 1  illustrates a system topology overview utilized according to a preferred form of the present invention; 
           [0014]      FIGS. 2   a  and  2   b  illustrate a data hierarchy for the AL3 file format; 
           [0015]      FIG. 3  illustrates an overview of XML file format to AL3 format translation and an AL3 file format to XML format translation according to a preferred form of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0016]    The present invention, referred to as “Real-Time SEMCI”, uses two emerging ACORD standards: the Web Transaction Interface (WTI) and the XML Insurance and Surety Service Specification. The WTI enables companies to conduct transactions with agents over the Web instead of via relatively expensive private networks. The XML Insurance and Surety Service Specification defines a set of industry-standard business transactions. 
         [0017]    In the explanation that follows, it is assumed that AL3 files originate with a carrier&#39;s system and XML files originate with a carrier&#39;s trading partner. The present invention operates to translate one into the other and vice versa. 
         [0018]    Referring now to the Figures, like references identify like elements of the invention. As set forth, AL3 is an insurance industry standard file format, a sample of which appears in text form in the Computer Program Listing Appendix, part of which is reproduced as LISTING  1  as follows: 
         [0000]    
       
         
               
             
               
             
           
               
                   
               
               
                 LISTING 1 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                 1MHG161 IBM203HIGT02 IBM203APPLIE 98695048 
               
               
                 2TRG201 60 3P CPKG FMGBN B  THE HARTFORD 
               
               
                 0001990924 9909013NBQ 
               
               
                 2TCG135 900409205052031503309331092210937205043251010 
               
               
                 5BIS172 1 B10001  CPat&#39;s Place 
               
               
                 ??????????????????????????????RTBOP- 1   IN 
               
               
                 9BIS168  B10001 
               
               
                 ??????????????????????????????????????????????????????????????????????? ??????????????? 
               
               
                 ????????????????????????????????????? 
               
               
                 5BPI240 3 F100015BISB10001 98SBAAC3043 ??????????19682 BOP 
               
               
                 ????9909010009011???????????????????00001254093+00001254093+??PAAG?E????????????? 
               
               
                 ???? ??????00001254093+?????????????????????????????????????????????????????????????? 
               
               
                 ????AAG 
               
               
                 5PAY101 2 F200015BPIF10001 
               
               
                 FL???????????????????????????????????????????????USFL 
               
               
                 6CP0173 5 F200015BPIF10001 
               
               
                 CTN?????????????????????????????????????????????????????????????????????????????????? 
               
               
                 ????????????????????? 59430000???RLSPC ?????????????????????????????????? 
               
               
                 5DSF058 F200015BPIF10001 01FRCOL?????F000100000?????? 
               
               
                 5DCV113 1 F200015BPIF10001 FRCOL 
               
               
                 5LAG199 1 F200015BPIF10001 000175 Main St 
               
               
                 ??????????????????????????????Hartford  CT06115 
               
               
                 ??????????????????????????????????????????????????????? 
               
               
                 5LAG199 1 F200025BPIF10001 0002250 Second St 
               
               
                 ??????????????????????????????Tampa  FL32004 ???????????????????9999 
               
               
                 ??????????????? ?????????????? 
               
               
                 5PIG152 1 G100015BPIF10001 BOPGL????00000000493+???19682 
               
               
                 990901???????????????????????????????????????????????????????????? 
               
               
                 5DCV113 1 G200025PIGG10001 EAOCC01000000 
               
               
                 5DCV113 1 G200035PIGG10001 GENAG02000000 
               
               
                 5DCV113 1 G200045PIGG10001 PRDC002000000 
               
               
                 5DCV113 1 G200055PIGG10001 PIADV01000000 
               
               
                 5DCV113 1 G200065PIGG10001 MEDEX00010000 
               
               
                 5DCV113 1 G200075PIGG10001 FIRDM00300000 
               
               
                 5LAG199 1 L100035PIGG10001 
               
               
                 0001??????????????????????????????????????????????????????????????????????????????? 
               
               
                 ????????????????????????????????????????????????????????????????? 
               
               
                 5SLC137 N100015LAGL10003 0175 Main St   Hartford  CT 
               
               
                 06115   ????? 
               
               
                   
               
             
          
         
       
     
         [0019]    Note that to improve readability of the hierarchy, line breaks have been added between data groups to visually set them off from each other and that the data group names and processing levels have been highlighted. Of course, highlighting and line breaks do not exist in the normal AL3 file format. The three digits that follow the data group name determine the actual length of each data group (e.g. 1 MHG data group is 161 characters long, 2TRG is 201, for example). Any reference to any LISTING throughout the specification herein signifies that the same result or effect occurs as when applied to the entire corresponding listing as appears in the Computer Program Listing Appendix. Listing  1  illustrates a text form of an AL3 file format. Listing  2  illustrates the data of the AL3 file format of Listing  1  organized according to a preferred form of the invention. Listing  3  illustrates a style sheet utilized according to a preferred form of the invention; and Listing  4  illustrates the data of Listing  1  in an XML file format organized according to a preferred form of the invention. 
         [0020]    Referring still to LISTING  1 , the formats are determined in advance based upon what kind of data the file will contain. Representative information contains data regarding by way of example, billing, new policy generation and inquiries regarding cancellation. The data format follows a hierarchy as indicated in  FIGS. 2   a  and  2   b , with a more detailed illustration of a hierarchy for a Business Owners Policy being provided in  FIG. 2   b . As is well understood by those possessing an ordinary skill in the pertinent art, the ACORD AL3 format is based on data elements, data groups and hierarchies. An ACORD data element is the smallest piece of data collected and stored. Data Groups are logical collections of data elements. Hierarchies are used to establish a logical relationship of data groups to one another. In the hierarchy labeled  220  in  FIG. 2   a , each level is associated with the level immediately preceding it. For example, a Location group  224  is associated with a Policy group  223 , a Risk group  225  is associated with a Location group and so on (e.g. coverage group  226 ). If needed, “Dummy” Groups are created to preserve the hierarchy. 
         [0021]    For sake of explanation the following discussion will follow a transaction which originates in a mainframe or other processing system such as that illustrated in  FIG. 1 . The text of LISTING  1  is a typical ACORD standard representation; in this instance for illustration an AL3 file delimited by the 1 MHG and 3MTG data groups  200 ,  230  as shown in  FIG. 2   a . Between delimiter data groups  200  and  230 , the transaction sequence begins with data group  210 , and transaction hierarchy  220 , and proceeds with the next transaction data group  210 ′ and next transaction hierarchy  220 ′. The AL3 file of LISTING  1  contains one transaction that begins with the 2TRG and 2TCG data groups  210  as shown in  FIG. 2   a . Still referring to LISTING  1 , the text thereof indicates that ACORD data group 5BIS (shown as  222  in  FIG. 2   a ) follows. This data identifies the basic insured information related to this specific policy and other data as is well understood by those possessing ordinary skill in the pertinent art. 
         [0022]    Referring now also to  FIG. 1 , the first step is to retrieve an AL3 file, such as that illustrated in LISTING  1  and discussed hereto, from the mainframe or other processing system computer  106  via a message server  105 . The next step is to translate the AL3 file retrieved data and organize it utilizing programming techniques well known by those skilled in the art of programming to translate and organize data, referred to herein as a Faux File Generator application running on the application server  103 , such as is illustrated in the Computer Program Listing Appendix part of which is reproduced as LISTING  2  as follows: 
         [0000]    
       
         
               
             
               
             
           
               
                   
               
               
                 LISTING 2 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                 &lt;?xml version= ″1.0″ standalone= ″no″?&gt; 
               
               
                 &lt;!DOCTYPE AL3 (View Source for full doctype...)&gt; 
               
               
                 =&lt;AL3&gt; 
               
               
                 =&lt;GroupName= ″1MHG ″Length= ″161″ LineOfBusiness= ″Common″&gt; 
               
               
                 &lt;Sequence Index =″ 0″ Length = ″10″&gt; 1MHG161 &lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″1″ Length = ″18″&gt; 1BM203HIGT02 &lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″2″ Length = ″18″&gt; 1BM203APPLIE &lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″3″ Length = ″10″&gt; 98695048 &lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″4″ Length = ″12″ /&gt; 
               
               
                 &lt;Sequence Index = ″5″ Length = ″6″ /&gt; 
               
               
                 &lt;Sequence Index = ″6″ Length = ″4″ /&gt; 
               
               
                 &lt;Sequence Index = ″7″ Length = ″6″ /&gt; 
               
               
                 &lt;Sequence Index = ″8″ Length = ″ 13″ /&gt; 
               
               
                 &lt;Sequence Index = ″9″ Length = ″1″ /&gt; 
               
               
                 &lt;Sequence Index = ″10″ Length = ″10″ /&gt; 
               
               
                 &lt;Sequence Index = ″11″ Length = ″2″ /&gt; 
               
               
                 &lt;Sequence Index = ″12″ Length = ″1″ /&gt; 
               
               
                 &lt;Sequence Index = ″13″ Length = ″4″ /&gt; 
               
               
                 &lt;Sequence Index = ″14″ Length = ″6″ /&gt; 
               
               
                 &lt;Sequence Index = ″15″ Length = ″20″ /&gt; 
               
               
                 &lt;Sequence Index = ″16″ Length = ″20″ /&gt; 
               
               
                 &lt;/Group&gt; 
               
               
                 &lt;GroupName =″2TR” Length= ″201″ LineOfBusiness= ″Common″&gt; 
               
               
                 &lt;Sequence Index = ″0″ Length = ″10″&gt;2TRG201&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″1″ Length = ″2″&gt; 60 &lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″2″ Length = ″8″/&gt; 
               
               
                 &lt;Sequence Index = ″3″ Length = ″1″/&gt; 
               
               
                 &lt;Sequence Index = ″4″ Length = ″1″&gt;3&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″5″ Length = ″2″&gt;P&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″6″ Length = ″1″&gt;C&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″7″ Length = ″5″&gt;PKG&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″8″ Length = ″3″&gt;FMG&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″9″ Length = ″1″&gt;B&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″10″ Length = ″1″&gt;N&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″11″ Length = ″1″/&gt; 
               
               
                 &lt;Sequence Index = ″12″ Length = ″1″&gt;B&lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″13″ Length = ″10″/&gt; 
               
               
                 &lt;Sequence Index = ″14″ Length = ″25″&gt; THE HARTFORD &lt;/Sequence&gt; 
               
               
                 &lt;Sequence Index = ″15″ Length = ″10″/&gt; 
               
               
                   
               
             
          
         
       
     
         [0023]    The Faux File generator application organizes or retranslates the ACORD file LISTING  1  into an intermediary file format such as that illustrated in the Computer Program Listing Appendix part of which is reproduced as LISTING  2  above (referred to as Faux file  3  herein for sake of explanation) that can be read by a function that converts it to XML format. 
         [0000]    
       
         
               
             
               
             
               
               
             
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
           
               
                   
               
               
                 LISTING 3 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                 &lt;?xml version=″ 1.0″?&gt; 
               
             
          
           
               
                   
                 =&lt;!- - 
               
               
                   
                 XSL style sheet to transform a BOP quote response from a ″faux″ AL3 stream to XML. 
               
               
                   
                 Copyright (c) The Hartford 
               
               
                   
                 All rights reserved. 
               
             
          
           
               
                 -- &gt; 
               
               
                 =&lt;xsl:stylesheet version=″1.0″ xmlns:xsl=″http://www.w3.org/1999/XSL/Transform″&gt; 
               
             
          
           
               
                   
                 =&lt;xsl:template match=”/”&gt; 
               
             
          
           
               
                   
                 =&lt;BOPPolicyQuoteInqRs&gt; 
               
             
          
           
               
                   
                 &lt;RqUID/&gt; 
               
             
          
           
               
                   
                 =&lt;Status&gt; 
               
             
          
           
               
                   
                 =&lt;xsl:choose&gt; 
               
             
          
           
               
                   
                 =&lt;xsl:when test=″//Group[@Name=′2TRG′]/Sequence[@index=′4′] = ′3′″&gt; 
               
               
                   
                 &lt;StatusCode&gt;1&lt;&lt;/StatusCode&gt; 
               
               
                   
                 &lt;Severity&gt;Info&lt;/Severity&gt; 
               
             
          
           
               
                   
                 =&lt;/xsl:when&gt; 
               
             
          
           
               
                   
                 =&lt;xsl:otherwise&gt; 
               
             
          
           
               
                   
                 &lt;StatusCode&gt;100&lt;/StatusCode&gt; 
               
               
                   
                 &lt;Severity&gt;Error&lt;/Severity&gt; 
               
             
          
           
               
                   
                 &lt;StatusDesc&gt;General Error&lt;StatusDesc&gt; 
               
             
          
           
               
                   
                 =&lt;xsl:otherwise&gt; 
               
             
          
           
               
                   
                 =&lt;xsl:choose&gt; 
               
             
          
           
               
                   
                 =&lt;Status&gt; 
               
             
          
           
               
                 =&lt;xsl:choose&gt; 
               
             
          
           
               
                   
                 =&lt;xsl: when test=″//Group [@Name=′2TRG′]/Sequence[@Index=′4′] =′3′″&gt; 
               
             
          
           
               
                   
                 =&lt;Producer&gt; 
               
             
          
           
               
                   
                 =&lt;ContractNumber&gt; 
               
             
          
           
               
                   
                 &lt;xsl:value-of 
               
             
          
           
               
                   
                 select=″//Group[@Name=′1MHG′]/Sequence[@Index=′3′]″ /&gt; 
               
             
          
           
               
                   
                  &lt;/ContractNumber&gt; 
               
               
                   
                 =&lt;ProducerSubCode&gt; 
               
             
          
           
               
                   
                 &lt;xsl:value-of 
               
             
          
           
               
                   
                 select=″//Group[@Name=′5BIS′]/Group[@Name=′5BPI′]/Sequ 
               
             
          
           
               
                   
                 ence[@Index=′8′] ″/&gt; 
               
             
          
           
               
                   
                 &lt;/ProducerSubCode&gt; 
               
             
          
           
               
                   
                 &lt;/Producer&gt; 
               
             
          
           
               
                   
                 =&lt;Customer&gt; 
               
             
          
           
               
                   
                 = &lt;CustomerName&gt; 
               
               
                   
                   
               
             
          
         
       
     
         [0024]    LISTING  2  illustrates the organization or ordering, e.g. parsing, of the AL3 file into a new kind of list which is referred to as a FAUX File  3 , as exemplified by LISTING  3  noting the references to 1MHG, 2TRG, 2TCG, and 5BIS. The data of the Faux file  3  as exemplified by LISTING  2  is then translated into an ACORD XML for Insurance And Surety Service or other suitable tagged language as is shown in Computer Program Listing Appendix, part of which is reproduced as LISTING  4  below. Preferably, the process looks at each AL3 transaction, which begins with a 2TRG header. 
         [0000]    
       
         
               
             
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
               
             
               
             
               
               
             
               
               
             
               
             
               
               
             
               
               
             
               
             
               
               
             
               
               
             
               
               
             
           
               
                   
               
               
                 LISTING 4 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                 &lt;?xml version =“1.0” encoding = “UTF-8”?&gt; 
               
             
          
           
               
                   
                 = &lt;BOPPolicy QuoteInqRs&gt; 
               
             
          
           
               
                   
                 &lt;RqUID/&gt; 
               
             
          
           
               
                   
                 = &lt;Status&gt; 
               
             
          
           
               
                   
                 &lt;Status Code&gt; 1 &lt;/Status Code&gt; 
               
               
                   
                 &lt;Severity&gt;Info&lt;Severity&gt; 
               
               
                   
                 &lt;/Status&gt; 
               
             
          
           
               
                   
                 =&lt;Producer&gt; 
               
             
          
           
               
                   
                 &lt;ContractNumber&gt;98695048&lt;/ContractNumber&gt; 
               
               
                   
                 &lt;ProducerSubCode&gt;?????????&lt;ProducerSubCode&gt; 
               
             
          
           
               
                   
                 &lt;/Producer&gt; 
               
             
          
           
               
                 =&lt;Customer&gt; 
               
             
          
           
               
                   
                 =&lt;CustomerName&gt; 
               
             
          
           
               
                   
                 &lt;NameType&gt;CORP&lt;/NameType&gt; 
               
             
          
           
               
                   
                 = &lt;CommercialName&gt; 
               
             
          
           
               
                   
                 &lt;Company Name/&gt; 
               
             
          
           
               
                   
                 &lt;/CommercialName&gt; 
               
               
                   
                 &lt;CustomerName&gt;Pat&#39;s Place&lt;/Customer Name&gt; 
               
             
          
           
               
                 = &lt;CustomerAddress&gt; 
               
             
          
           
               
                   
                 &lt;Addr1&gt;???????????????????????????????????????????????&lt;/Addr1&gt; 
               
               
                   
                 &lt;Addr2&gt;???????????????????????????????????????????????&lt;/Addr2&gt; 
               
               
                   
                 &lt;City&gt;????????????????????&lt;/City&gt; 
               
               
                   
                 &lt;StateProv&gt;??&lt;/StateProv&gt; 
               
               
                   
                 &lt;PostalCode&gt;?????????/PostalCode&gt; 
               
             
          
           
               
                   
                 &lt;/CustomerAddress&gt; 
               
             
          
           
               
                 = &lt;CustomerNumber&gt; 
               
             
          
           
               
                   
                 &lt;ItemIDType&gt;AgcyID&lt;/ItemIdType&gt; 
               
               
                   
                 &lt;ItemId&gt;RTBOP-1&lt;/ItemId&gt; 
               
             
          
           
               
                   
                 &lt;/CustomerNumber&gt; 
               
               
                   
                 &lt;/Customer&gt; 
               
             
          
           
               
                 = &lt;CommercialPolicy&gt; 
               
             
          
           
               
                   
                 &lt;PolicyNumber&gt;98SBAAC3043&lt;/PolicyNumber&gt; 
               
               
                   
                 &lt;LOBCode&gt;BOP&lt;/LOBCode&gt; 
               
               
                   
                 &lt;NAICCode&gt;19682&lt;/NAICCode&gt; 
               
               
                   
                 = &lt;EffectiveDate&gt; 
               
             
          
           
               
                   
                 &lt;Year /&gt; 
               
               
                   
                 &lt;Month /&gt; 
               
               
                   
                 &lt;Day /&gt; 
               
             
          
           
               
                   
                 &lt;/EffectiveDate&gt; 
               
               
                   
                   
               
             
          
         
       
     
         [0025]      FIGS. 2   a  and  2   b  show the hierarchical representation of the data in LISTING  1 . 
         [0026]    An XML stylesheet such as that illustrated in LISTING  3  above is preferably used to translate the Faux File as exemplified by LISTING  2  to the XML file as exemplified by LISTING  4  so that it contains the correct XML file format and accompanying data. There are preferably as many style sheets as there are “kinds of transactions” to translate. 
         [0027]    The XML file as exemplified by LISTING  4  is then passed to Web Server  102  (see  FIG. 1 ) and is transmitted over the Internet  107  and received remotely, presumably by an agency system  101  of an agent of the insurance company utilizing conventional methodology. 
         [0028]    The process is transitive or bi-directional in that an XML format file generated at an agency system  101  will be decoded or translated using a style sheet into a Faux file and then translated into the AL3 file format before being sent to the mainframe or other processing system computer  106 . 
         [0029]    Referring now also to  FIG. 3 , at the start of the process  310 , XML request transactions are received from computer  101  (e.g. agency system, application service provider, insurance portal) of  FIG. 1  and converted  320  to pseudo AL3 request transactions, or faux files, by applying a stylesheet, such as an XSL stylesheet. The data from the created faux file is then translated  330  into AL3 (including removing XML tags) and delivered  340  to the mainframe  106  or other processing system  106 . AL3 response transactions are generated by the processing system and are returned to the translation process  350 . AL3 response files are converted  360  into pseudo AL3 response transactions, or faux files (including adding XML tags). The data from the faux file is then translated  370  into XML formatted files using a style sheet. The XML file can then be transmitted  380  to suitable processor devices using the Internet and the process exited. 
         [0030]    For sake of completeness, and referring again to  FIG. 3  and a preferred embodiment of a system for implementing the present invention shown in  FIG. 1 , mainframe  106  or other processing systems  106  are electronically communicable with message servers  105 . The message servers  105  are conventionally communicable with application servers  103 . Application servers  103  perform the translating of AL3 files to the faux file  3  format and apply the stylesheets LISTING  4  to code the faux files 3 in XML format. The application servers  103  are conventionally communicable with web servers  102 , which are conventionally communicable with agency computers  101 , via a suitable communications medium such as the global interconnection of computers and computer networks commonly referred to as the Internet. Directory servers  104  are also preferably utilized and are communicable with application servers  103 . 
         [0031]    Although the invention has been described and pictured in a preferred form with a certain degree of particularity, it is understood that the present disclosure of the preferred form, has been made only by way of example, and that numerous changes in the details of construction and combination and arrangement of parts may be made without departing from the spirit and scope of the invention as hereinafter claimed. It is intended that the patent shall cover by suitable expression in the appended claims, whatever features of patentable novelty exist in the invention disclosed.

Technology Category: g