Using XML Transactions Presented By Tony Alwardt The Boeing Company.
-
Upload
darcy-evans -
Category
Documents
-
view
215 -
download
0
Transcript of 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
IntroductionIntroduction
Provides a common dialect to be used Provides a common dialect to be used between two are more partiesbetween two are more parties
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
QuestionsQuestions
??