Using XML Transactions Presented By Tony Alwardt The Boeing Company.

18
Using XML Transactions Using XML Transactions Presented By Presented By Tony Alwardt Tony Alwardt The Boeing Company The Boeing Company

Transcript of Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Page 1: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Using XML TransactionsUsing XML Transactions

Presented ByPresented By

Tony AlwardtTony Alwardt

The Boeing CompanyThe Boeing Company

Page 2: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

IntroductionIntroduction

Provides a common dialect to be used Provides a common dialect to be used between two are more partiesbetween two are more parties

Page 3: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Benefits Benefits

Fewer Schemas to Maintain and Develop AgainstFewer Schemas to Maintain and Develop AgainstSchema performs initial required data validation instead Schema performs initial required data validation instead of application softwareof application softwareTransactions give XML tags context sensitive meaningTransactions give XML tags context sensitive meaningSystem integrators only deal with transactions they System integrators only deal with transactions they requirerequireThe ability to tie requests and responses togetherThe ability to tie requests and responses togetherProvides built in error elements for every transactionProvides built in error elements for every transactionReadily supports Synchronous & Asynchronous Readily supports Synchronous & Asynchronous CommunicationCommunicationReadily supports Batch ProcessingReadily supports Batch ProcessingSupports Passing Application Level Security CredentialsSupports Passing Application Level Security Credentials

Page 4: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Multiple SchemasMultiple Schemas

System 1

XML Transaction

Type 1 Request

System 2

XML Schema 1

XML Transaction

Type 1 Response

XML Transaction

Type 2 Request

XML Transaction

Type 2 ResponseSystem 3

XML Schema 3

XML Schema 2

XML Schema 4

Page 5: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Integrated SchemaIntegrated SchemaXML

Transaction Type 1 Request

Integrated XML

Schema

XML Transaction

Type 1 Response

XML Transaction

Type 2 Request

XML Transaction

Type 2 Response

System 1 System 2

System 3

Page 6: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Validation (Traditional Schema Use)Validation (Traditional Schema Use)

XML Document

XML Schema

Schema verifies that the XML document is in the correct format.

Software Library

Software verifies that the XML document contains the appropriate required XML

elements/attributes.

System 1 System 2

Page 7: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Validation (Transaction Schema Use)Validation (Transaction Schema Use)

XML Document

XML Schema

Schema verifies that the XML document is in the correct format and that the required

XML elements/attributes exist.

Software Library

This block is potentially no longer required.

System 1 System 2

Page 8: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Context Sensitive MeaningContext Sensitive Meaning<?xml version="1.0" encoding="utf-8"?><TxDML version="1.0" xmlns:bc="http://www.companyA.com/ATML/schemas/Common" xmlns="urn:DML-TxDML-Schema"> <TxRequest> <AddWorkOrders> <WorkOrders> <WorkOrder status="Open" openedDateTime="2004-06-03T07:36:31"> <bc:MasterKey>JCNARN001</bc:MasterKey> <Platform name="F/A-18" model="E" serialNumber="111111"/> <WorkItems> <WorkItem status="Open" openedDateTime="2004-06-03T07:36:31"> <bc:Site name="St. Louis"/> <bc:MaintenanceLevel abbr="O"/> <UUT type="WRA"> <bc:PartNumber>Demo 2005</bc:PartNumber> <bc:SerialNumber>SN0001</bc:SerialNumber> <bc:Manufacturer>MAN001</bc:Manufacturer> </UUT> <TestPrograms> <TestProgram name="Demo2005 TPS" type="XML"> <TestResults outcome="Failed"> <TestGroup outcome="Failed" bc:startDateTime="2002-04-14T17:16:25.500"> <Observables> <Observable name="Altitude" value="0.000" type="Decimal" units="Feet"/> <Observable name="NormalAcceleration" value="-35.313" type="Decimal" units="FPS Squared"/> </Observables> <Test name="000" outcome="Failed" type="MSP" descr="RADAR ANTENNA FAIL"/> <Test name="111" outcome="Failed" type="MSP" descr="GYRO TEST SKPD"/> </TestGroup> </TestResults> </TestProgram> </TestPrograms> </WorkItem> </WorkItems> </WorkOrder> </WorkOrders> </AddWorkOrders> </TxRequest></TxDML>

Add Work Orders Transaction

Page 9: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Context Sensitive MeaningContext Sensitive Meaning<?xml version="1.0" encoding="utf-8"?><TxDML version="1.0" xmlns:bc="http://www.companyA.com/ATML/schemas/Common" xmlns="urn:DML-TxDML-Schema"> <TxRequest> <UpdateWorkOrders> <WorkOrders> <WorkOrder status="Open"> <bc:MasterKey>JCNARN001</bc:MasterKey> <WorkItems> <WorkItem status="Open"> <bc:MaintenanceLevel abbr="I"/> <UUT type="WRA"> <bc:PartNumber>Demo2005</bc:PartNumber> <bc:SerialNumber>SN0001</bc:SerialNumber> </UUT> <TestPrograms> <TestProgram name="Demo2005 TPS" type="XML"> <TestResults outcome="Failed"> <TestGroup outcome="Failed" bc:startDateTime="2005-04-12T13:00:07.000"> <Test name="300.00" outcome="Failed" type="T" descr="Resister A Check"/> </TestGroup> <Indictments retestEntryPoint="300.00" indictmentsID="3" indictmentsDateTime="2005-04-12T13:00:07"> <Indictment repairType="R" repairDescr="Remove and Replace"> <UUT>

<RefDes>A1</RefDes></UUT>

</Indictment> </Indictments> </TestResults> </TestProgram> </TestPrograms> <bc:TestStation type="STATION A"/> </WorkItem> </WorkItems> </WorkOrder> </WorkOrders> </UpdateWorkOrders> </TxRequest></TxDML>

Update Work Orders with Indictments

Page 10: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Context Sensitive MeaningContext Sensitive Meaning<?xml version="1.0" encoding="utf-8"?><TxDML version="1.0" xmlns:bc="http://www.companyA.com/ATML/schemas/Common" xmlns="urn:DML-TxDML-Schema"> <TxRequest> <UpdateWorkOrders> <WorkOrders> <WorkOrder status="Open"> <bc:MasterKey>JCNARN001</bc:MasterKey> <WorkItems> <WorkItem status="Open"> <bc:MaintenanceLevel abbr="I"/> <UUT type="WRA"> <bc:PartNumber>Demo2005</bc:PartNumber> <bc:SerialNumber>SN0001</bc:SerialNumber> </UUT> <bc:TestStation type="STATION A"/> <Repairs> <Repair repairType="S" repairDescr="Remove and Reinstall" repairIndictmentsID="3"> <UUT type="SRA"> <bc:PartNumber>CARD001</bc:PartNumber> <bc:SerialNumber>TRFDV</bc:SerialNumber> <bc:RefDes>A1</bc:RefDes> </UUT> </Repair> </Repairs> </WorkItem> </WorkItems> </WorkOrder> </WorkOrders> </UpdateWorkOrders> </TxRequest></TxDML>

Update Work Orders with Repairs

Page 11: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Easier Integration via TransactionsEasier Integration via Transactions

<TxDML version="1.0"> <TxRequest> <AddWorkOrders></AddWorkOrders> <UpdateWorkOrders></UpdateWorkOrders> <GetSuggestedCallouts></GetSuggestedCallouts> <GetSuggestedEntryPoints></GetSuggestedEntryPoints> <GetWorkOrders></GetWorkOrders> </TxRequest></TxDML>

Example: 5 Available Transactions

User 1 User 2

<TxDML version="1.0"> <TxRequest> <AddWorkOrders></AddWorkOrders> <UpdateWorkOrders></UpdateWorkOrders> <GetWorkOrders></GetWorkOrders> </TxRequest></TxDML>

<TxDML version="1.0"> <TxRequest> <GetSuggestedCallouts></GetSuggestedCallouts> <GetSuggestedEntryPoints></GetSuggestedEntryPoints> </TxRequest></TxDML>

3 Transactions Used by User 1 2 Transactions Used by User 2

Page 12: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Request/Response ModelRequest/Response Model

Supports echoing the request in the Supports echoing the request in the response (Especially useful with response (Especially useful with asynchronous systems)asynchronous systems)

<TxDML version="1.0"> <TxRequest> <GetWorkOrders> <MasterKey>Master Key XYZ</MasterKey> </GetWorkOrders> </TxRequest> <TxResponse> <TransResult> <ResultCode tc="Success "></ResultCode> <WorkOrder> <MasterKey>Master Key XYZ</MasterKey> </WorkOrder> </TransResult> </TxResponse></TxDML>

Response

Request

Page 13: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Error ProcessingError Processing

Required “ResultCode” element exists in Required “ResultCode” element exists in every transaction responseevery transaction response

<TxDML version="1.0"> <TxRequest> <GetWorkOrders> <MasterKey>Master Key XYZ</MasterKey> </GetWorkOrders> </TxRequest> <TxResponse> <TransResult> <ResultCode tc="Failure"> <ResultDesc>Communication Error.</ResultDesc> </ResultCode> <WorkOrder> <MasterKey>Master Key XYZ</MasterKey> </WorkOrder> </TransResult> </TxResponse></TxDML>

Result Info

Page 14: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Synchronous vs. Asynchronous Synchronous vs. Asynchronous ProcessingProcessing

Readily supports Synchronous & Readily supports Synchronous & Asynchronous CommunicationAsynchronous Communication

XML Document

Synchronous Communication

XML Document

System 1 System 2

Page 15: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Synchronous vs. Asynchronous Synchronous vs. Asynchronous ProcessingProcessing

Readily supports Synchronous & Readily supports Synchronous & Asynchronous CommunicationAsynchronous Communication

XML Documents

Asynchronous Communication

XML Documents

Echoing the initial request with the response enables Asynchronous Communication.

System 1 System 2

Page 16: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Batch Transaction ProcessingBatch Transaction Processing

Readily supports Batch ProcessingReadily supports Batch Processing

XML Requests

XML Responses

The schema can support sending multiple request transactions in one XML Document. The same applies for response

transactions.

System 1 System 2

Page 17: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

Application Level Security Application Level Security CredentialsCredentials

Application Level Security Credentials can Application Level Security Credentials can be included in a Request Transaction. be included in a Request Transaction.

<TxDML version="1.0"> <UserAuthRequest> <UserLoginName>String</UserLoginName> <UserPswd> <CryptType>String</CryptType> <Pswd>String</Pswd> </UserPswd> <UserDomain>String</UserDomain> <UserDate>1967-08-13</UserDate> <UserTime>14:20:00-05:00</UserTime> </UserAuthRequest> <TxRequest> <GetWorkOrders> <MasterKey>Master Key XYZ</MasterKey> </GetWorkOrders> </TxRequest></TxDML>

Security Info

Page 18: Using XML Transactions Presented By Tony Alwardt The Boeing Company.

QuestionsQuestions

??