SlideShare a Scribd company logo
1 of 78
Download to read offline
W3C XML Schema
Patterns for Databinding

                Paul Downey, BT
Chair, XML Schema Patterns for Databinding Working Group

              XML 2006, December 5th 2006
XML Schema



    ?
Validation

             XML
            Schema




                         Post
  XML       Schema      Schema
Instance               Validation
           Processor    Infoset
Description
          XML
         Schema




           XML
Sender   Instance
                    Receiver
Types

          xs:string
          xs:int
XML
          tns:Address
          foo:PurchaseOrder
Databinding



    ?
Databinding
    Abstraction


Model        XML
Model
• Java
• Database
• Annotated DOM
• JSON
• PHP serialisation
• XML
• Whatever
Why Describe



    ?
Duck Typing XML



      ?
Force Array

<opt>                     {
    <name>value</name>        name => ‘value’
</opt>                    }



                          {
<opt>                         name => [
    <name>value1</name>              ‘value1’,
    <name>value2</name>              ‘value2’
</opt>                        ]
                          }
Static Typing

{
    int accountNo;
    long ammount;
    string name;
}
What’s wrong with
  Databinding



       ?
“State of the Art”

•   reject valid XML Schema documents

•   reject valid XML instance documents

•   content of valid XML instance documents
      often unavailable in model
Impedance
 Mismatch

  ><
  OO
Circles, Triangles,
        Rectangles


       XML 2003
http://www.idealliance.org/papers/dx_xml03/papers/06-02-01/06-02-01.html
I ! Mixed Content

text <O/> text
<O> text </O>
Don’t Databind?
• XSLT
• DOM
• LINQ
• E4X
• XJ
• etc
Abstraction Scale

Objects   Infoset         XML     Bits




      Typed    DOM               Text
      DOM
                    Templating
They Don’t Like
    XML!
Abstraction



    ?
XML Schema
        is Big ..

• Lot’s of ways to describe the concrete
• Lot’s of ways to represent the abstract
Partial
Implementations

“Our tool doesn’t support xs:foo.
     Change your schema.”

              * vendor
So begins ..



“The Barf Dance”
it’s not so much that
    schema sucks ...
or that databinding tools
         suck ...
it’s that all databinding tools
               suck

        differently
W3C
Working Group



     ?
WS-I


• Basic Profile
• XML Schema Work Plan Working Group
W3C Workshop
XML Schema 1.0 User Experiences
Discussion
Don’t Just Change
    Schema!
       … 300,000+ developers use XSD
       … There is tremendous value in
       XML Schema. Don't just change it…


           Soumitra Sengupta,
           Microsoft
Discussion Topics

•   versioning
•   profiles and patterns of use
•   code generation (v) validation
•   Unique Particle Attribution (UPA)
•   XML Schema 1.1
•   test suite
W3C XML Schema
Patterns for Databinding
    Working Group



          !
Deliverables

• W3C Recommendation for Basic Patterns
• W3C Recommendation for Advanced Patterns
• Test Suite
• Mechanism to Detect patterns
Out of Scope:


• Profile of Schema
• Language Specific Detail
Patterns



   !
AnyURIElement
.//xs:element/@type[resolve-QName(.,..)
        = xs:QName('xs:anyURI')]




<xs:element name=quot;anyURIElementquot;
            type=quot;xs:anyURIquot; />


      http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIElement
ElementMinOccurs0
MaxOccursUnbounded
 .//xs:element[@minOccurs = '0'
       and @maxOccurs = 'unbounded']/
         (@minOccurs, @maxOccurs)




http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded
SequenceSingle
    RepeatedElement
.//xs:sequence[count(xs:element) = 1]/
    xs:element[@maxOccurs = 'unbounded']/
      (., @maxOccurs)


                          Overlapping!
http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement
StringEnumerationType
.//xs:simpleType/xs:restriction[
  @base/resolve-QName(.,..) = xs:QName('xs:string')
    and xs:enumeration]/
   (., @base, xs:enumeration/(., @value))


  <xs:simpleType name=quot;Beatlequot;>
    <xs:restriction base=quot;xs:stringquot;>
      <xs:enumeration value=quot;Johnquot; />
      <xs:enumeration value=quot;Paulquot; />
      <xs:enumeration value=quot;Georgequot; />
      <xs:enumeration value=quot;Ringoquot; />
    </xs:restriction>


    http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType
SOAP Encoded Array
./xs:complexType[@name]/xs:complexContent/
    xs:restriction[
      @base/resolve-QName(.,..)
        = xs:QName ('soap11enc:Array')]/
      xs:attribute[(@ref/resolve-QName(.,..)
        = xs:QName('soap11enc:arrayType'))
      and @wsdl11:arrayType]/
(../.., ../(., @base), ., @ref, @wsdl11:arrayType)


     http://www.w3.org/2002/ws/databinding/patterns/6/09/SOAPEncodedArray
Palatability



    ?
Value Judgement

• xs:any becomes XMLElement
• xs:anyURI becomes String
• xs:decimal becomes String
Examples



   !
ElementMinOccurs0
MaxOccursUnbounded
   <xs:element name=quot;durationListquot; type=quot;ex:DurationListquot; />
   <xs:complexType name=quot;DurationListquot;>
    <xs:sequence>
      <xs:element name=quot;durationValuequot; type=quot;xs:shortquot;
   ! ! ! ! ! minOccurs=quot;0quot; maxOccurs=quot;unboundedquot; />
    </xs:sequence>
   </xs:complexType>


http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0MaxOccursUnbounded
Example
          Descriptions

•   ComplexTypeSequenceExtension.xsd
•   echoComplexTypeSequenceExtension.xsd
•   echoComplexTypeSequenceExtension.wsdl
•   echoComplexTypeSequenceExtension-wsdl20.wsdl
Example
               Instances

•   ElementMinOccurs0MaxOccursUnbounded-01.xml

•   echoElementMinOccurs0MaxOccursUnbounded-01.xml

•   echoElementMinOccurs0MaxOccursUnbounded-01-soap11.xml

•   echoElementMinOccurs0MaxOccursUnbounded-01-soap12.xml
Test Suite
            Example
           Description




Instance


                         Model
            Toolkit


Output
Test
Reports
Patterns Detector



       !
Patterns Detector


 XML                Patterns
Schema
         Detector    (URIs)
Buckets



  !
Basic Patterns

• known to work with “state of the art”
  implementations
• they’re, um, very Basic


      Publishers of Schemas Take Note!
TargetNamespace
      .[@targetNamespace]/
                 (., @targetNamespace)



An [XML Schema 1.0] document conforming to this
specification MUST define a targetNamespace whose
value is an absolute URI. †
        http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace
“State of the Art”



       ?
SLIPPERY
 SLOPE
Value Judgement
 • new tools arrive
 • old tools become defunct
 • some tools are very lame
 • we can’t test every tool

“Bring out your implementations”
Advanced Patterns

• exhibited by real schemata
• they’re, um, not very interoperable


 Developers of Implementations Take Note!
Not Advanced



    ?
SLIPPERY
 SLOPE
Value Judgement

• XML Schema is big
• Coverage or Possible to Databind?
• always another Schema

  “Bring out your schemata”
Patterns in the
     Wild
Build Your Own
       Bucket

• List Patterns your schemas use
• List Patterns your toolkit supports
• Analyse schemas “in the wild”
Other Topics



    ?
Document
 Conformance

Implementation
 Conformance
WS-I Basic Profile


• Detector works on WSDL 1.1
• Composable with Basic Profile 1.1
Annotations


• Tools Generate them
• Useful for “round tripping”
• No-one is submitting them
Versioning

• Concrete patterns exist
• They’re all Advanced


      XML Schema 1.1 is the answer?
Progress



  ?
Schedule
Participants
•   BT

•   Health Level 7

•   National Association of Convenience Stores (NACS)

•   Origo Services Limited

•   SAP AG

•   WSO2

•   Invited Expert: Priscilla Walmsley


               ... and that’s It!
We Need Your
   Help!




www.w3.org/2002/ws/databinding
How You Can Help

• Participate in the Working Group
• Encourage your vendor of choice to participate
• Contribute to the test suite
• Contribute your Schemata

     www.w3.org/2002/ws/databinding
Thank you!
Any Questions



            ?
www.w3.org/2002/ws/databinding

More Related Content

What's hot

C# Advanced L03-XML+LINQ to XML
C# Advanced L03-XML+LINQ to XMLC# Advanced L03-XML+LINQ to XML
C# Advanced L03-XML+LINQ to XMLMohammad Shaker
 
JavaScript Fundamentals & JQuery
JavaScript Fundamentals & JQueryJavaScript Fundamentals & JQuery
JavaScript Fundamentals & JQueryJamshid Hashimi
 
JavaScript - Chapter 8 - Objects
 JavaScript - Chapter 8 - Objects JavaScript - Chapter 8 - Objects
JavaScript - Chapter 8 - ObjectsWebStackAcademy
 
JSR-222 Java Architecture for XML Binding
JSR-222 Java Architecture for XML BindingJSR-222 Java Architecture for XML Binding
JSR-222 Java Architecture for XML BindingHeiko Scherrer
 
javascript
javascript javascript
javascript Kaya Ota
 
CSharp Advanced L05-Attributes+Reflection
CSharp Advanced L05-Attributes+ReflectionCSharp Advanced L05-Attributes+Reflection
CSharp Advanced L05-Attributes+ReflectionMohammad Shaker
 
JavaScript - Chapter 4 - Types and Statements
 JavaScript - Chapter 4 - Types and Statements JavaScript - Chapter 4 - Types and Statements
JavaScript - Chapter 4 - Types and StatementsWebStackAcademy
 
introduction to javascript
introduction to javascriptintroduction to javascript
introduction to javascriptKumar
 
JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...
JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...
JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...Doug Jones
 
Basic JavaScript Tutorial
Basic JavaScript TutorialBasic JavaScript Tutorial
Basic JavaScript TutorialDHTMLExtreme
 

What's hot (20)

Querring xml with xpath
Querring xml with xpath Querring xml with xpath
Querring xml with xpath
 
C# Advanced L03-XML+LINQ to XML
C# Advanced L03-XML+LINQ to XMLC# Advanced L03-XML+LINQ to XML
C# Advanced L03-XML+LINQ to XML
 
JavaScript Fundamentals & JQuery
JavaScript Fundamentals & JQueryJavaScript Fundamentals & JQuery
JavaScript Fundamentals & JQuery
 
Java XML Parsing
Java XML ParsingJava XML Parsing
Java XML Parsing
 
Javascript
JavascriptJavascript
Javascript
 
Lecture 5 javascript
Lecture 5 javascriptLecture 5 javascript
Lecture 5 javascript
 
Java script
Java scriptJava script
Java script
 
Introduction to JavaScript Basics.
Introduction to JavaScript Basics.Introduction to JavaScript Basics.
Introduction to JavaScript Basics.
 
JavaScript - Chapter 8 - Objects
 JavaScript - Chapter 8 - Objects JavaScript - Chapter 8 - Objects
JavaScript - Chapter 8 - Objects
 
JSR-222 Java Architecture for XML Binding
JSR-222 Java Architecture for XML BindingJSR-222 Java Architecture for XML Binding
JSR-222 Java Architecture for XML Binding
 
javascript
javascript javascript
javascript
 
CSharp Advanced L05-Attributes+Reflection
CSharp Advanced L05-Attributes+ReflectionCSharp Advanced L05-Attributes+Reflection
CSharp Advanced L05-Attributes+Reflection
 
JavaScript - Chapter 4 - Types and Statements
 JavaScript - Chapter 4 - Types and Statements JavaScript - Chapter 4 - Types and Statements
JavaScript - Chapter 4 - Types and Statements
 
Java script
Java scriptJava script
Java script
 
Javascript
JavascriptJavascript
Javascript
 
Java script
Java scriptJava script
Java script
 
introduction to javascript
introduction to javascriptintroduction to javascript
introduction to javascript
 
JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...
JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...
JavaScript: The Good Parts Or: How A C# Developer Learned To Stop Worrying An...
 
Basic JavaScript Tutorial
Basic JavaScript TutorialBasic JavaScript Tutorial
Basic JavaScript Tutorial
 
Javascript 101
Javascript 101Javascript 101
Javascript 101
 

Viewers also liked

Deawsj 7 ppt-1_a
Deawsj 7 ppt-1_aDeawsj 7 ppt-1_a
Deawsj 7 ppt-1_aNiit Care
 
Vb.net session 05
Vb.net session 05Vb.net session 05
Vb.net session 05Niit Care
 
Ado.net session02
Ado.net session02Ado.net session02
Ado.net session02Niit Care
 
Patterns in Eclipse
Patterns in EclipsePatterns in Eclipse
Patterns in EclipseMadhu Samuel
 
VISUAL BASIC .net data accesss vii
VISUAL BASIC .net data accesss viiVISUAL BASIC .net data accesss vii
VISUAL BASIC .net data accesss viiargusacademy
 

Viewers also liked (7)

Deawsj 7 ppt-1_a
Deawsj 7 ppt-1_aDeawsj 7 ppt-1_a
Deawsj 7 ppt-1_a
 
Attila_Hunics_IT
Attila_Hunics_ITAttila_Hunics_IT
Attila_Hunics_IT
 
Vb.net session 05
Vb.net session 05Vb.net session 05
Vb.net session 05
 
Ado.net
Ado.netAdo.net
Ado.net
 
Ado.net session02
Ado.net session02Ado.net session02
Ado.net session02
 
Patterns in Eclipse
Patterns in EclipsePatterns in Eclipse
Patterns in Eclipse
 
VISUAL BASIC .net data accesss vii
VISUAL BASIC .net data accesss viiVISUAL BASIC .net data accesss vii
VISUAL BASIC .net data accesss vii
 

Similar to XML Schema Patterns for Databinding

The Lumber Mill Xslt For Your Templates
The Lumber Mill   Xslt For Your TemplatesThe Lumber Mill   Xslt For Your Templates
The Lumber Mill Xslt For Your TemplatesThomas Weinert
 
IBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons LearnedIBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons LearnedTed Leung
 
eXtensible Markup Language (XML)
eXtensible Markup Language (XML)eXtensible Markup Language (XML)
eXtensible Markup Language (XML)Serhii Kartashov
 
Implementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoCImplementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoCjimfuller2009
 
Mazda Use of Third Generation Xml Tools
Mazda Use of Third Generation Xml ToolsMazda Use of Third Generation Xml Tools
Mazda Use of Third Generation Xml ToolsCardinaleWay Mazda
 
Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to ElasticsearchSperasoft
 
Mashups with Drupal and QueryPath
Mashups with Drupal and QueryPathMashups with Drupal and QueryPath
Mashups with Drupal and QueryPathMatt Butcher
 
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...Marco Gralike
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Marco Gralike
 
Service Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMixService Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMixBruce Snyder
 
Dax Declarative Api For Xml
Dax   Declarative Api For XmlDax   Declarative Api For Xml
Dax Declarative Api For XmlLars Trieloff
 
No SQL, No problem - using MongoDB in Ruby
No SQL, No problem - using MongoDB in RubyNo SQL, No problem - using MongoDB in Ruby
No SQL, No problem - using MongoDB in Rubysbeam
 

Similar to XML Schema Patterns for Databinding (20)

Xml Demystified
Xml DemystifiedXml Demystified
Xml Demystified
 
The Lumber Mill Xslt For Your Templates
The Lumber Mill   Xslt For Your TemplatesThe Lumber Mill   Xslt For Your Templates
The Lumber Mill Xslt For Your Templates
 
Processing XML with Java
Processing XML with JavaProcessing XML with Java
Processing XML with Java
 
IBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons LearnedIBM Solutions '99 XML and Java: Lessons Learned
IBM Solutions '99 XML and Java: Lessons Learned
 
eXtensible Markup Language (XML)
eXtensible Markup Language (XML)eXtensible Markup Language (XML)
eXtensible Markup Language (XML)
 
Implementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoCImplementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoC
 
Mazda Use of Third Generation Xml Tools
Mazda Use of Third Generation Xml ToolsMazda Use of Third Generation Xml Tools
Mazda Use of Third Generation Xml Tools
 
Xml Overview
Xml OverviewXml Overview
Xml Overview
 
Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to Elasticsearch
 
Soap vs-rest
Soap vs-restSoap vs-rest
Soap vs-rest
 
Mashups with Drupal and QueryPath
Mashups with Drupal and QueryPathMashups with Drupal and QueryPath
Mashups with Drupal and QueryPath
 
Web servicesoverview
Web servicesoverviewWeb servicesoverview
Web servicesoverview
 
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
 
Wt unit 2 ppts client sied technology
Wt unit 2 ppts client sied technologyWt unit 2 ppts client sied technology
Wt unit 2 ppts client sied technology
 
Wt unit 2 ppts client side technology
Wt unit 2 ppts client side technologyWt unit 2 ppts client side technology
Wt unit 2 ppts client side technology
 
JSON Viewer XPATH Workbook
JSON Viewer XPATH WorkbookJSON Viewer XPATH Workbook
JSON Viewer XPATH Workbook
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
 
Service Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMixService Oriented Integration With ServiceMix
Service Oriented Integration With ServiceMix
 
Dax Declarative Api For Xml
Dax   Declarative Api For XmlDax   Declarative Api For Xml
Dax Declarative Api For Xml
 
No SQL, No problem - using MongoDB in Ruby
No SQL, No problem - using MongoDB in RubyNo SQL, No problem - using MongoDB in Ruby
No SQL, No problem - using MongoDB in Ruby
 

More from Paul Downey

ODI Lunchtime Talk, Creating an open register – what it takes and why
ODI Lunchtime Talk, Creating an open register – what it takes and whyODI Lunchtime Talk, Creating an open register – what it takes and why
ODI Lunchtime Talk, Creating an open register – what it takes and whyPaul Downey
 
Building systems with integrity
Building systems with integrityBuilding systems with integrity
Building systems with integrityPaul Downey
 
Building systems with integrity
Building systems with integrityBuilding systems with integrity
Building systems with integrityPaul Downey
 
Standards are Great, but Standardisation is a Really Bad Idea
Standards are Great, but Standardisation is a Really Bad IdeaStandards are Great, but Standardisation is a Really Bad Idea
Standards are Great, but Standardisation is a Really Bad IdeaPaul Downey
 
Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?Paul Downey
 
Open Source Hardware at OTA11
Open Source Hardware at OTA11Open Source Hardware at OTA11
Open Source Hardware at OTA11Paul Downey
 
ETSI Hell's Kitchen Debate, Nice 2009
ETSI Hell's Kitchen Debate, Nice 2009ETSI Hell's Kitchen Debate, Nice 2009
ETSI Hell's Kitchen Debate, Nice 2009Paul Downey
 
The Best Web APIs are Web Sites
The Best Web APIs are Web SitesThe Best Web APIs are Web Sites
The Best Web APIs are Web SitesPaul Downey
 
Publishing Web Services Policies
Publishing Web Services PoliciesPublishing Web Services Policies
Publishing Web Services PoliciesPaul Downey
 
The Web Is Agreement Opentech2008
The Web Is Agreement   Opentech2008The Web Is Agreement   Opentech2008
The Web Is Agreement Opentech2008Paul Downey
 
Versioning XML and Open Source Tools
Versioning XML and Open Source ToolsVersioning XML and Open Source Tools
Versioning XML and Open Source ToolsPaul Downey
 
Open Source, Agile, Life-Style
Open Source, Agile, Life-StyleOpen Source, Agile, Life-Style
Open Source, Agile, Life-StylePaul Downey
 
Extensibility And Versioning
Extensibility And VersioningExtensibility And Versioning
Extensibility And VersioningPaul Downey
 
Mashing up The Mobile
Mashing up The MobileMashing up The Mobile
Mashing up The MobilePaul Downey
 

More from Paul Downey (18)

ODI Lunchtime Talk, Creating an open register – what it takes and why
ODI Lunchtime Talk, Creating an open register – what it takes and whyODI Lunchtime Talk, Creating an open register – what it takes and why
ODI Lunchtime Talk, Creating an open register – what it takes and why
 
Building systems with integrity
Building systems with integrityBuilding systems with integrity
Building systems with integrity
 
Registers
RegistersRegisters
Registers
 
Building systems with integrity
Building systems with integrityBuilding systems with integrity
Building systems with integrity
 
Standards are Great, but Standardisation is a Really Bad Idea
Standards are Great, but Standardisation is a Really Bad IdeaStandards are Great, but Standardisation is a Really Bad Idea
Standards are Great, but Standardisation is a Really Bad Idea
 
Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?Who am I? Who are you? Who is anybody?
Who am I? Who are you? Who is anybody?
 
Open Source Hardware at OTA11
Open Source Hardware at OTA11Open Source Hardware at OTA11
Open Source Hardware at OTA11
 
I spy
I spyI spy
I spy
 
ETSI Hell's Kitchen Debate, Nice 2009
ETSI Hell's Kitchen Debate, Nice 2009ETSI Hell's Kitchen Debate, Nice 2009
ETSI Hell's Kitchen Debate, Nice 2009
 
Denver
DenverDenver
Denver
 
The Best Web APIs are Web Sites
The Best Web APIs are Web SitesThe Best Web APIs are Web Sites
The Best Web APIs are Web Sites
 
Publishing Web Services Policies
Publishing Web Services PoliciesPublishing Web Services Policies
Publishing Web Services Policies
 
The Web Is Agreement Opentech2008
The Web Is Agreement   Opentech2008The Web Is Agreement   Opentech2008
The Web Is Agreement Opentech2008
 
Vrm Wedding
Vrm WeddingVrm Wedding
Vrm Wedding
 
Versioning XML and Open Source Tools
Versioning XML and Open Source ToolsVersioning XML and Open Source Tools
Versioning XML and Open Source Tools
 
Open Source, Agile, Life-Style
Open Source, Agile, Life-StyleOpen Source, Agile, Life-Style
Open Source, Agile, Life-Style
 
Extensibility And Versioning
Extensibility And VersioningExtensibility And Versioning
Extensibility And Versioning
 
Mashing up The Mobile
Mashing up The MobileMashing up The Mobile
Mashing up The Mobile
 

Recently uploaded

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 

XML Schema Patterns for Databinding