SlideShare a Scribd company logo
1 of 34
Description and Discovery of Type Adaptors for Web Services Workflow Martin Szomszor ( [email_address] )
Presentation Outline ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
In  Silico  Experimentation ,[object Object],[object Object],[object Object],[object Object]
Service Discovery ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Semantic Discovery ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Semantically Driven Workflow Design ,[object Object],[object Object]
Syntactic Compatibility ,[object Object]
Syntactic Mediation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
WSDL Overview ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
 
WSDL Examples: <definitions> <message name='getEntryIn'> <part name='accession_id' element='DDBJ:ACCESSION'/> </message> <message name='getEntryOut'> <part name='record' element='DDBJ:DDBJXML'/> </message> <portType name='DDBJPortType'> <operation name='GetEntry'> <input name='getEntryIn' message='tns:getEntryIn'/> <output name='getEntryOut' message='tns:getEntryOut'/> </operation> </portType> SOAP <binding name='DDBJBinding' type='tns:DDBJPortType'> <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/> <operation name='GetEntry'> <soap:operation soapAction='GetEntry'/> <input name='getEntryIn'> <soap:body use='literal'/> </input> <output name='getEntryOut'> <soap:body use='literal'/> </output> </operation> </binding> </definitions> JAVA <binding name=&quot;JavaBinding&quot; type=&quot;tns:DDBJPortType&quot;> <java:binding/> <format:typeMapping encoding=&quot;Java&quot; style=&quot;Java&quot;> <format:typeMap typeName=”DDBJ:DDBJXML&quot; formatType=”DDBJXML.SequenceData&quot;/> <format:typeMap typeName=”DDBJ:ACCESSION&quot; formatType=&quot;java.lang.String&quot;/> </format:typeMapping>  <operation name=”GetEntry&quot;> <java:operation methodName=”GetEntry” methodType=&quot;instance&quot;/> <input name=&quot;getEntryIn&quot;/> <output name=“getEntryOut”/> </operation> </binding> </definitions> http://ws.apache.org/wsif/providers/wsdl_extensions/java_extension.html
WSDL Conclusions ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Type Adaptors ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
WSDL for Type Adaptors
Discovery of Type Adaptors
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Type Adaptor Approaches f c e b d a f c e b d a
Intermediate Representation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Implementation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Mapping Mechanics <S> <X>foo</X> <X>bar</X> </S> <D> <Y>foo</Y> <Y>bar</Y> </D> Source Document Destination Document m 1 : S/X -> D/Y m 2 : X/$ -> Y/$ Mappings
Mapping Mechanics S X “ foo” S/* S/* xsd:string xsd:string X “ bar” D Y “ foo” D/* D/* xsd:string xsd:string Y “ bar” m 1 : S/X -> D/Y m 2 : X/$ -> Y/$
Example M-Binding <binding xmlns=&quot;http://www.ecs.soton.ac.uk/~mns03r/mapping/example&quot; xmlns:sns=&quot;http://jaco.ecs.soton.ac.uk/schema/source&quot; xmlns:dns=&quot;http://jaco.ecs.soton.ac.uk/schema/destination&quot;> <mapping id= &quot;1&quot; > <source match= &quot;sns:S/sns:X&quot; /> <destination create= &quot;dns:D[join]/dns:Y[branch]&quot; /> </mapping> <mapping id= ”2&quot; > <source match= &quot;sns:X/$&quot; /> <destination create= &quot;dns:Y[join]/$&quot; /> </mapping> </binding>
Transformation Technology ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Mappings with OWL ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Bio Example <ddbj:DDBJXML> <ddbj:ACCESSION>AB000059</ddbj:ACCESSION> <ddbj:FEATURES> <ddbj:source> <ddbj:location>1..1755</ddbj:location> <ddbj:qualifiers name=&quot;isolate&quot;>Som1</ddbj:qualifiers> <ddbj:qualifiers name=&quot;lab_host&quot;>Felis domesticus</ddbj:qualifiers> </ddbj:source> </ddbj:FEATURES> </ddbj:DDBJXML> <ont:Sequence_Data_Record> <ont:accession_id>AB000059</ont:accession_id> <ont:has_feature> <ont:Feature_Source> <ont:isolate>Som1</ont:isolate> <ont:lab_host>Felis domesticus</ont:lab_host> <ont:location> <ont:Feature_Location> <ont:start>1</ont:start> <ont:end>1755</ont:end> </ont:Feature_Location> </ont:location> </ont:Feature_source> </ont:has_feature> </ont:Sequence_Data_Record> Simple One-to-One Element and literal Many-to-Many Split literal value Predicate evaluation
Example M-Binding <binding xmlns=&quot;http://www.ecs.soton.ac.uk/~mns03r/mapping/ddbj-to-ont-mapping&quot; xmlns:sns=&quot;http://jaco.ecs.soton.ac.uk/schema/DDBJ&quot; xmlns:dns=&quot;http://jaco.ecs.soton.ac.uk/ont/sequencedata&quot;> <mapping id=&quot;1&quot;> <source match=&quot;sns:DDBJXML/sns:ACCESSION&quot;/> <destination create=&quot;dns:Sequence_Data_Record[join]/dns:accession_id[branch]/&quot;/> </mapping> <mapping id=“2”> <source match=&quot;sns:ACCESSION/$&quot;/> <destination create=&quot;dns:accession_id[join]/$&quot;/> </mapping> <mapping id=”3&quot;> <source match=&quot;sns:DDBJXML/sns:FEATURES/sns:source&quot;/> <destination create=&quot;dns:Sequence_Data_Record[join]/dns:has_feature[branch]/ dns:Feature_Source[branch]&quot;/> </mapping> <mapping id=”4&quot;> <source match='sns:source/sns:qualifiers[sns:qualifiers/sns:name/$ = &quot;lab_host&quot;]'/> <destination create=&quot;dns:Feature_Source[join]/dns:lab-host[branch]&quot;/> <mapping> <source match=&quot;sns:qualifiers/$&quot;/> <destination create=&quot;dns:lab-host[join]/$&quot;/> </mapping> </mapping> <mapping id=”5&quot;> <source match=&quot;sns:location/$^[^.]+&quot;/> <destination create=&quot;dns:Location[join]/dns:start[branch]/$&quot;/> </mapping> </binding>
Configurable Mediator
Discovery of M-Bindings
Example WSDL <?xml version='1.0' encoding='UTF-8'?> <definitions name='DDBJ-to-sequencedata' targetNamespace='http://jaco.ecs.soton.ac.uk:8080/Bindings/DDBJ-to-sequencedata' ... xmlns='http://schemas.xmlsoap.org/wsdl/'> <types> <xsd:schema targetNamespace='http://jaco.ecs.soton.ac.uk:8080/Bindings/DDBJ-to-sequencedata'> <xsd:import namespace='http://jaco.ecs.soton.ac.uk/schema/DDBJ'/> <xsd:import namespace='http://jaco.ecs.soton.ac.uk/ont/sequencedata'/> </xsd:schema> </types> <message name='sns#DDBJXML-to-dns#Sequence_Data_Record-IN'> <part name='in' element='sns:DDBJXML'/> </message> <message name='sns#DDBJXML-to-dns#Sequence_Data_Record-OUT'> <part name='in' element='dns:Sequence_Data_Record'/> </message> <portType name='TranslationPortType'> <operation name='sns#DDBJXML-to-dns#Sequence_Data_Record'> <input name='sns#DDBJXML-to-dns#Sequence_Data_Record-IN'/> <output name='sns#DDBJXML-to-dns#Sequence_Data_Record-OUT'/> </operation> </portType> <binding name='TranslationBinding' type='tns:TranslationPortType'> <operation name='sns#DDBJXML-to-dns#Sequence_Data_Record'> <input name='sns#DDBJXML-to-dns#Sequence_Data_Record-IN'/> <output name='sns#DDBJXML-to-dns#Sequence_Data_Record-OUT'/> </operation> </binding> <service name='TranslationService'> <port name='TranslationPort' binding='tns:TranslationBinding'> <fxml:binding location='http://jaco.ecs.soton.ac.uk/binding/DDBJ-to-sequencedata.xml'/> </port> </service> </definitions>
Conclusions ,[object Object],[object Object],[object Object],[object Object],[object Object]
Questions and Comments?
FXML-T Performance
FXML-T Performance
FXML-T Performance
GRIMOIRES Performance 1.81 Total Mediation 0.27 Serialisation Translation 0.23 Serialisation Discovery 0.62 Jena Mediation 0.47 Realisation Translation 0.22 RealisationDiscovery 2.50 DDBJ Execution Average Time (S) Activity

More Related Content

What's hot

Chen's first test slides
Chen's first test slidesChen's first test slides
Chen's first test slides
Hima Challa
 
Chen test paper20abcdeftfdfd
Chen test paper20abcdeftfdfdChen test paper20abcdeftfdfd
Chen test paper20abcdeftfdfd
techweb08
 
Web Services Part 1
Web Services Part 1Web Services Part 1
Web Services Part 1
patinijava
 
2 dtd - validating xml documents
2   dtd - validating xml documents2   dtd - validating xml documents
2 dtd - validating xml documents
gauravashq
 
Xml Java
Xml JavaXml Java
Xml Java
cbee48
 
Xml For Dummies Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...
Xml For Dummies   Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...Xml For Dummies   Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...
Xml For Dummies Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...
phanleson
 

What's hot (19)

Xml dtd
Xml dtdXml dtd
Xml dtd
 
Session 1
Session 1Session 1
Session 1
 
Linq
LinqLinq
Linq
 
Chen's first test slides
Chen's first test slidesChen's first test slides
Chen's first test slides
 
Chen test paper20abcdeftfdfd
Chen test paper20abcdeftfdfdChen test paper20abcdeftfdfd
Chen test paper20abcdeftfdfd
 
O9xml
O9xmlO9xml
O9xml
 
4 xml namespaces and xml schema
4   xml namespaces and xml schema4   xml namespaces and xml schema
4 xml namespaces and xml schema
 
XML and DTD
XML and DTDXML and DTD
XML and DTD
 
Introduction to DTD
Introduction to DTDIntroduction to DTD
Introduction to DTD
 
Web Services Part 1
Web Services Part 1Web Services Part 1
Web Services Part 1
 
2 dtd - validating xml documents
2   dtd - validating xml documents2   dtd - validating xml documents
2 dtd - validating xml documents
 
Schema
SchemaSchema
Schema
 
ANOMALY DETECTION IN ARABIC TEXTS USING NGRAMS AND SELF ORGANIZING MAPS
ANOMALY DETECTION IN ARABIC TEXTS USING NGRAMS AND SELF ORGANIZING MAPSANOMALY DETECTION IN ARABIC TEXTS USING NGRAMS AND SELF ORGANIZING MAPS
ANOMALY DETECTION IN ARABIC TEXTS USING NGRAMS AND SELF ORGANIZING MAPS
 
Anomaly Detection in Arabic Texts using Ngrams and Self Organizing Maps
Anomaly Detection in Arabic Texts using Ngrams and Self Organizing MapsAnomaly Detection in Arabic Texts using Ngrams and Self Organizing Maps
Anomaly Detection in Arabic Texts using Ngrams and Self Organizing Maps
 
Dtd
DtdDtd
Dtd
 
Xml Java
Xml JavaXml Java
Xml Java
 
Xml For Dummies Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...
Xml For Dummies   Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...Xml For Dummies   Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...
Xml For Dummies Chapter 8 Understanding And Using Dt Ds it-slideshares.blog...
 
Xml
XmlXml
Xml
 
Xml 215-presentation
Xml 215-presentationXml 215-presentation
Xml 215-presentation
 

Viewers also liked

Syntactic Mediation in Grid and Web Service Architectures
Syntactic Mediation in Grid and Web Service ArchitecturesSyntactic Mediation in Grid and Web Service Architectures
Syntactic Mediation in Grid and Web Service Architectures
Martin Szomszor
 
Recording and Reasoning Over Data Provenance in Web and Grid Services
Recording and Reasoning Over Data Provenance in Web and Grid ServicesRecording and Reasoning Over Data Provenance in Web and Grid Services
Recording and Reasoning Over Data Provenance in Web and Grid Services
Martin Szomszor
 
Lược sử thời gian
Lược sử thời gianLược sử thời gian
Lược sử thời gian
Phong Lữ
 
10g de Groot - 1.15
10g de Groot - 1.1510g de Groot - 1.15
10g de Groot - 1.15
. .
 

Viewers also liked (11)

Modelling Users’ Profiles and Interests based on Cross-Folksonomy Analysis ...
Modelling Users’ Profiles and  Interests based on  Cross-Folksonomy Analysis ...Modelling Users’ Profiles and  Interests based on  Cross-Folksonomy Analysis ...
Modelling Users’ Profiles and Interests based on Cross-Folksonomy Analysis ...
 
Live Social Semantics @ ESWC2010
Live Social Semantics @ ESWC2010Live Social Semantics @ ESWC2010
Live Social Semantics @ ESWC2010
 
Syntactic Mediation in Grid and Web Service Architectures
Syntactic Mediation in Grid and Web Service ArchitecturesSyntactic Mediation in Grid and Web Service Architectures
Syntactic Mediation in Grid and Web Service Architectures
 
Semantic Modelling of User Interests Based on Cross-Folksonomy Analysis @ IS...
Semantic Modelling of  User Interests Based on Cross-Folksonomy Analysis @ IS...Semantic Modelling of  User Interests Based on Cross-Folksonomy Analysis @ IS...
Semantic Modelling of User Interests Based on Cross-Folksonomy Analysis @ IS...
 
Design de Experiencia
Design de ExperienciaDesign de Experiencia
Design de Experiencia
 
Recording and Reasoning Over Data Provenance in Web and Grid Services
Recording and Reasoning Over Data Provenance in Web and Grid ServicesRecording and Reasoning Over Data Provenance in Web and Grid Services
Recording and Reasoning Over Data Provenance in Web and Grid Services
 
Live Social Semantics @ ISWC2009
Live Social Semantics @ ISWC2009Live Social Semantics @ ISWC2009
Live Social Semantics @ ISWC2009
 
GMS BYOD Faculty Training
GMS BYOD Faculty TrainingGMS BYOD Faculty Training
GMS BYOD Faculty Training
 
Lược sử thời gian
Lược sử thời gianLược sử thời gian
Lược sử thời gian
 
Presentation1
Presentation1Presentation1
Presentation1
 
10g de Groot - 1.15
10g de Groot - 1.1510g de Groot - 1.15
10g de Groot - 1.15
 

Similar to Description and Discovery of Type Adaptors for Web Services Workflow

Automated Syntactic Mediation for Web Service Integration
Automated Syntactic Mediation for Web Service IntegrationAutomated Syntactic Mediation for Web Service Integration
Automated Syntactic Mediation for Web Service Integration
Martin Szomszor
 
Xml 215-presentation
Xml 215-presentationXml 215-presentation
Xml 215-presentation
philipsinter
 

Similar to Description and Discovery of Type Adaptors for Web Services Workflow (20)

Automated Syntactic Mediation for Web Service Integration
Automated Syntactic Mediation for Web Service IntegrationAutomated Syntactic Mediation for Web Service Integration
Automated Syntactic Mediation for Web Service Integration
 
Introducing Oslo
Introducing OsloIntroducing Oslo
Introducing Oslo
 
Web services for developer
Web services for developerWeb services for developer
Web services for developer
 
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and CorrelationWS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
WS-Addressing: Enabling Transport-Neutral Message Addressing and Correlation
 
Wsdl1
Wsdl1Wsdl1
Wsdl1
 
Automating the Use of Web APIs through Lightweight Semantics
Automating the Use of Web APIs through Lightweight SemanticsAutomating the Use of Web APIs through Lightweight Semantics
Automating the Use of Web APIs through Lightweight Semantics
 
Web Services
Web ServicesWeb Services
Web Services
 
Web Services
Web ServicesWeb Services
Web Services
 
Contract First Modeling Services Using Uml
Contract First Modeling Services Using UmlContract First Modeling Services Using Uml
Contract First Modeling Services Using Uml
 
Xml 215-presentation
Xml 215-presentationXml 215-presentation
Xml 215-presentation
 
Webservices
WebservicesWebservices
Webservices
 
XML, XML Databases and MPEG-7
XML, XML Databases and MPEG-7XML, XML Databases and MPEG-7
XML, XML Databases and MPEG-7
 
[DSBW Spring 2010] Unit 10: XML and Web And beyond
[DSBW Spring 2010] Unit 10: XML and Web And beyond[DSBW Spring 2010] Unit 10: XML and Web And beyond
[DSBW Spring 2010] Unit 10: XML and Web And beyond
 
Report on Work of Joint DCMI/IEEE LTSC Task Force
Report on Work of Joint DCMI/IEEE LTSC Task ForceReport on Work of Joint DCMI/IEEE LTSC Task Force
Report on Work of Joint DCMI/IEEE LTSC Task Force
 
Metadata becomes alive via a web service between MDR and SAS
Metadata becomes alive via a web service between MDR and SASMetadata becomes alive via a web service between MDR and SAS
Metadata becomes alive via a web service between MDR and SAS
 
Cloud computing 22 soap and uddi in services
Cloud computing 22 soap and uddi in servicesCloud computing 22 soap and uddi in services
Cloud computing 22 soap and uddi in services
 
Xml schema
Xml schemaXml schema
Xml schema
 
Unit 1 - TypeScript & Introduction to Angular CLI.pptx
Unit 1 - TypeScript & Introduction to Angular CLI.pptxUnit 1 - TypeScript & Introduction to Angular CLI.pptx
Unit 1 - TypeScript & Introduction to Angular CLI.pptx
 
Wsdl
WsdlWsdl
Wsdl
 
Xml Overview
Xml OverviewXml Overview
Xml Overview
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Description and Discovery of Type Adaptors for Web Services Workflow

  • 1. Description and Discovery of Type Adaptors for Web Services Workflow Martin Szomszor ( [email_address] )
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.  
  • 11. WSDL Examples: <definitions> <message name='getEntryIn'> <part name='accession_id' element='DDBJ:ACCESSION'/> </message> <message name='getEntryOut'> <part name='record' element='DDBJ:DDBJXML'/> </message> <portType name='DDBJPortType'> <operation name='GetEntry'> <input name='getEntryIn' message='tns:getEntryIn'/> <output name='getEntryOut' message='tns:getEntryOut'/> </operation> </portType> SOAP <binding name='DDBJBinding' type='tns:DDBJPortType'> <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/> <operation name='GetEntry'> <soap:operation soapAction='GetEntry'/> <input name='getEntryIn'> <soap:body use='literal'/> </input> <output name='getEntryOut'> <soap:body use='literal'/> </output> </operation> </binding> </definitions> JAVA <binding name=&quot;JavaBinding&quot; type=&quot;tns:DDBJPortType&quot;> <java:binding/> <format:typeMapping encoding=&quot;Java&quot; style=&quot;Java&quot;> <format:typeMap typeName=”DDBJ:DDBJXML&quot; formatType=”DDBJXML.SequenceData&quot;/> <format:typeMap typeName=”DDBJ:ACCESSION&quot; formatType=&quot;java.lang.String&quot;/> </format:typeMapping> <operation name=”GetEntry&quot;> <java:operation methodName=”GetEntry” methodType=&quot;instance&quot;/> <input name=&quot;getEntryIn&quot;/> <output name=“getEntryOut”/> </operation> </binding> </definitions> http://ws.apache.org/wsif/providers/wsdl_extensions/java_extension.html
  • 12.
  • 13.
  • 14. WSDL for Type Adaptors
  • 15. Discovery of Type Adaptors
  • 16.
  • 17.
  • 18.
  • 19. Mapping Mechanics <S> <X>foo</X> <X>bar</X> </S> <D> <Y>foo</Y> <Y>bar</Y> </D> Source Document Destination Document m 1 : S/X -> D/Y m 2 : X/$ -> Y/$ Mappings
  • 20. Mapping Mechanics S X “ foo” S/* S/* xsd:string xsd:string X “ bar” D Y “ foo” D/* D/* xsd:string xsd:string Y “ bar” m 1 : S/X -> D/Y m 2 : X/$ -> Y/$
  • 21. Example M-Binding <binding xmlns=&quot;http://www.ecs.soton.ac.uk/~mns03r/mapping/example&quot; xmlns:sns=&quot;http://jaco.ecs.soton.ac.uk/schema/source&quot; xmlns:dns=&quot;http://jaco.ecs.soton.ac.uk/schema/destination&quot;> <mapping id= &quot;1&quot; > <source match= &quot;sns:S/sns:X&quot; /> <destination create= &quot;dns:D[join]/dns:Y[branch]&quot; /> </mapping> <mapping id= ”2&quot; > <source match= &quot;sns:X/$&quot; /> <destination create= &quot;dns:Y[join]/$&quot; /> </mapping> </binding>
  • 22.
  • 23.
  • 24. Bio Example <ddbj:DDBJXML> <ddbj:ACCESSION>AB000059</ddbj:ACCESSION> <ddbj:FEATURES> <ddbj:source> <ddbj:location>1..1755</ddbj:location> <ddbj:qualifiers name=&quot;isolate&quot;>Som1</ddbj:qualifiers> <ddbj:qualifiers name=&quot;lab_host&quot;>Felis domesticus</ddbj:qualifiers> </ddbj:source> </ddbj:FEATURES> </ddbj:DDBJXML> <ont:Sequence_Data_Record> <ont:accession_id>AB000059</ont:accession_id> <ont:has_feature> <ont:Feature_Source> <ont:isolate>Som1</ont:isolate> <ont:lab_host>Felis domesticus</ont:lab_host> <ont:location> <ont:Feature_Location> <ont:start>1</ont:start> <ont:end>1755</ont:end> </ont:Feature_Location> </ont:location> </ont:Feature_source> </ont:has_feature> </ont:Sequence_Data_Record> Simple One-to-One Element and literal Many-to-Many Split literal value Predicate evaluation
  • 25. Example M-Binding <binding xmlns=&quot;http://www.ecs.soton.ac.uk/~mns03r/mapping/ddbj-to-ont-mapping&quot; xmlns:sns=&quot;http://jaco.ecs.soton.ac.uk/schema/DDBJ&quot; xmlns:dns=&quot;http://jaco.ecs.soton.ac.uk/ont/sequencedata&quot;> <mapping id=&quot;1&quot;> <source match=&quot;sns:DDBJXML/sns:ACCESSION&quot;/> <destination create=&quot;dns:Sequence_Data_Record[join]/dns:accession_id[branch]/&quot;/> </mapping> <mapping id=“2”> <source match=&quot;sns:ACCESSION/$&quot;/> <destination create=&quot;dns:accession_id[join]/$&quot;/> </mapping> <mapping id=”3&quot;> <source match=&quot;sns:DDBJXML/sns:FEATURES/sns:source&quot;/> <destination create=&quot;dns:Sequence_Data_Record[join]/dns:has_feature[branch]/ dns:Feature_Source[branch]&quot;/> </mapping> <mapping id=”4&quot;> <source match='sns:source/sns:qualifiers[sns:qualifiers/sns:name/$ = &quot;lab_host&quot;]'/> <destination create=&quot;dns:Feature_Source[join]/dns:lab-host[branch]&quot;/> <mapping> <source match=&quot;sns:qualifiers/$&quot;/> <destination create=&quot;dns:lab-host[join]/$&quot;/> </mapping> </mapping> <mapping id=”5&quot;> <source match=&quot;sns:location/$^[^.]+&quot;/> <destination create=&quot;dns:Location[join]/dns:start[branch]/$&quot;/> </mapping> </binding>
  • 28. Example WSDL <?xml version='1.0' encoding='UTF-8'?> <definitions name='DDBJ-to-sequencedata' targetNamespace='http://jaco.ecs.soton.ac.uk:8080/Bindings/DDBJ-to-sequencedata' ... xmlns='http://schemas.xmlsoap.org/wsdl/'> <types> <xsd:schema targetNamespace='http://jaco.ecs.soton.ac.uk:8080/Bindings/DDBJ-to-sequencedata'> <xsd:import namespace='http://jaco.ecs.soton.ac.uk/schema/DDBJ'/> <xsd:import namespace='http://jaco.ecs.soton.ac.uk/ont/sequencedata'/> </xsd:schema> </types> <message name='sns#DDBJXML-to-dns#Sequence_Data_Record-IN'> <part name='in' element='sns:DDBJXML'/> </message> <message name='sns#DDBJXML-to-dns#Sequence_Data_Record-OUT'> <part name='in' element='dns:Sequence_Data_Record'/> </message> <portType name='TranslationPortType'> <operation name='sns#DDBJXML-to-dns#Sequence_Data_Record'> <input name='sns#DDBJXML-to-dns#Sequence_Data_Record-IN'/> <output name='sns#DDBJXML-to-dns#Sequence_Data_Record-OUT'/> </operation> </portType> <binding name='TranslationBinding' type='tns:TranslationPortType'> <operation name='sns#DDBJXML-to-dns#Sequence_Data_Record'> <input name='sns#DDBJXML-to-dns#Sequence_Data_Record-IN'/> <output name='sns#DDBJXML-to-dns#Sequence_Data_Record-OUT'/> </operation> </binding> <service name='TranslationService'> <port name='TranslationPort' binding='tns:TranslationBinding'> <fxml:binding location='http://jaco.ecs.soton.ac.uk/binding/DDBJ-to-sequencedata.xml'/> </port> </service> </definitions>
  • 29.
  • 34. GRIMOIRES Performance 1.81 Total Mediation 0.27 Serialisation Translation 0.23 Serialisation Discovery 0.62 Jena Mediation 0.47 Realisation Translation 0.22 RealisationDiscovery 2.50 DDBJ Execution Average Time (S) Activity

Editor's Notes

  1. The presentation concentrates on the problem of workflow harmonisation that arises when service providers use different representations for conceptually equivalent information.