Introduction to XML, SOAP and Biztalk M Arie Leeuwesteijn

Slides:



Advertisements
Similar presentations
DOCUMENT TYPES. Digital Documents Converting documents to an electronic format will preserve those documents, but how would such a process be organized?
Advertisements

XML: Extensible Markup Language
XML/EDI Overview West Chester Electronic Commerce Resource Center (ECRC)
XML & Data Structures for the Internet Yingcai Xiao.
DAVID M. KROENKE’S DATABASE PROCESSING, 10th Edition © 2006 Pearson Prentice Hall 13-1 COS 346 Day 24.
XML Technologies and Applications Rajshekhar Sunderraman Department of Computer Science Georgia State University Atlanta, GA 30302
XML A brief introduction ---by Yongzhu Li. XML --- a brief introduction 2 CSI668 Topics in System Architecture SUNY Albany Computer Science Department.
COS 381 Day 16. Agenda Assignment 4 posted Due April 1 There was no resubmits of Assignment Capstone Progress report Due March 24 Today we will discuss.
Copyright © 2002 ProsoftTraining. All rights reserved. XML Document Design.
XML – Extensible Markup Language Sivakumar Kuttuva & Janusz Zalewski.
Sheet 1XML Technology in E-Commerce 2001Lecture 6 XML Technology in E-Commerce Lecture 6 XPointer, XSLT.
XML at Work John Arnett, MSc Standards Modeller Information and Statistics Division NHSScotland Tel: (x2073)
XML Anisha K J Jerrin Thomas. Outline  Introduction  Structure of an XML Page  Well-formed & Valid XML Documents  DTD – Elements, Attributes, Entities.
Introduction to XML cs3505. References –I got most of this presentation from this site –O’reilly tutorials.
AMS confidential & proprietary International Business and Technology Consultants 1 XML as a Document Exchange Format Tom Loukas AMS Center for Advanced.
Scientific Markup Languages Birds of a Feather A 10-Minute Introduction to XML Timothy W. Cole Mathematics Librarian & Professor of.
XML eXtensible Markup Language by Darrell Payne. Experience Logicon / Sterling Federal C, C++, JavaScript/Jscript, Shell Script, Perl XML Training XML.
CREATED BY ChanoknanChinnanon PanissaraUsanachote
XML The Overview. Three Key Questions What is XML? What Problems does it solve? Where and how is it used?
School of Computing and Management Sciences © Sheffield Hallam University To understand the Oracle XML notes you need to have an understanding of all these.
XP New Perspectives on XML Tutorial 6 1 TUTORIAL 6 XSLT Tutorial – Carey ISBN
XP 1 CREATING AN XML DOCUMENT. XP 2 INTRODUCING XML XML stands for Extensible Markup Language. A markup language specifies the structure and content of.
Introduction to XML Eugenia Fernandez IUPUI. What is XML? From the World Wide Web Consortium (W3C) The Extensible Markup Language (XML) is the universal.
Another PillowTalk Presentation  2004 Dynamic Systems, Inc. Introduction to XML for SOA Lee H. Burstein,
XML Overview. Chapter 8 © 2011 Pearson Education 2 Extensible Markup Language (XML) A text-based markup language (like HTML) A text-based markup language.
XML What is XML? XML v.s. HTML XML Components Well-formed and Valid Document Type Definition (DTD) Extensible Style Language (XSL) SAX and DOM.
CISC 3140 (CIS 20.2) Design & Implementation of Software Application II Instructor : M. Meyer Address: Course Page:
1 © Netskills Quality Internet Training, University of Newcastle Introducing XML © Netskills, Quality Internet Training University.
XML 1 Enterprise Applications CE00465-M XML. 2 Enterprise Applications CE00465-M XML Overview Extensible Mark-up Language (XML) is a meta-language that.
XML - Why: The HTML-Dilemma HTML, SGML, XML - How: Syntax, Concept, Language Elements Basics Well-formed XML-Documents (without DTD) Valid XML-Documents.
What is XML?  XML stands for EXtensible Markup Language  XML is a markup language much like HTML  XML was designed to carry data, not to display data.
Introduction to XML Extensible Markup Language. What is XML XML stands for eXtensible Markup Language. A markup language is used to provide information.
 XML is designed to describe data and to focus on what data is. HTML is designed to display data and to focus on how data looks.  XML is created to structure,
Intro. to XML & XML DB Bun Yue Professor, CS/CIS UHCL.
Session IV Chapter 9 – XML Schemas
Chapter 27 The World Wide Web and XML. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.27-2 Topics in this Chapter The Web and the Internet.
XML About XML Things to be known Related Technologies XML DOC Structure Exploring XML.
Tutorial 1: XML Creating an XML Document. 2 Introducing XML XML stands for Extensible Markup Language. A markup language specifies the structure and content.
XML TUTORIAL Portions from w3 schools By Dr. John Abraham.
Electronic Commerce COMP3210 Session 4: Designing, Building and Evaluating e-Commerce Initiatives – Part II Dr. Paul Walcott Department of Computer Science,
XML A web enabled data description language 4/22/2001 By Mark Lawson & Edward Ryan L’Herault.
Softsmith Infotech XML. Softsmith Infotech XML EXtensible Markup Language XML is a markup language much like HTML Designed to carry data, not to display.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
Windows Presentation Foundation (WPF) Chapter 16 Dr. Abraham.
Introduction to XML This presentation covers introductory features of XML. What XML is and what it is not? What does it do? Put different related technologies.
XP 1 Creating an XML Document Developing an XML Document for the Jazz Warehouse XML Tutorial.
Chapter 27 The World Wide Web and XML. Copyright © 2004 Pearson Addison-Wesley. All rights reserved.27-2 Topics in this Chapter The Web and the Internet.
An Introduction to XML Paul Donohue May 8th 2002 Hotel Senator Zürich.
XML Design Goals 1.XML must be easily usable over the Internet 2.XML must support a wide variety of applications 3.XML must be compatible with SGML 4.It.
XML Introduction. Markup Language A markup language must specify What markup is allowed What markup is required How markup is to be distinguished from.
XML Basics A brief introduction to XML in general 1XML Basics.
XML and Its Applications Ben Y. Zhao, CS294-7 Spring 1999.
XML, XSL, and SOAP Building Object Systems from Documents CSC/ECE 591o Summer 2000.
CS 157B: Database Management Systems II February 11 Class Meeting Department of Computer Science San Jose State University Spring 2013 Instructor: Ron.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 1COMP9321, 15s2, Week.
Web Technologies Lecture 4 XML and XHTML. XML Extensible Markup Language Set of rules for encoding a document in a format readable – By humans, and –
Martin Kruliš by Martin Kruliš (v1.1)1.
Evaluation Biztalk Table of Contents Introduction to XML. Anatomy of an XML document. What is an XML Schema? What is SOAP? XML Web Services overview.
XML Tools (Chapter 4 of XML Book). What tools are needed for a complete XML application? n Fundamental components n Web infrasructure n XML development.
C Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Introduction to XML Standards.
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 7 Representing Web Data:
XP 1Creating Web Pages with XML Tutorial 1 New Perspectives on XML Tutorial 1 – Creating an XML Document.
XML Extensible Markup Language
XML Notes taken from w3schools. What is XML? XML stands for EXtensible Markup Language. XML was designed to store and transport data. XML was designed.
Unit 4 Representing Web Data: XML
XML in Web Technologies
Database Processing with XML
Introduction to XML, SOAP and Biztalk
Chapter 7 Representing Web Data: XML
CSE591: Data Mining by H. Liu
Presentation transcript:

Introduction to XML, SOAP and Biztalk M Arie Leeuwesteijn

Content  XML use cases  What is XML ?  XML syntax  Document definitions and validation  XML parsers  XSL translations  SOAP, a.k.a. Web Services  Biztalk overview

Objectives  Reading XML documents  Understanding XML terminology and acronyms  Examples of XML applications

XML Use Cases  Application integration  Generic format for data transfer for E-commerce and other web applications  Storing and accessing structured data

Application Integration  High costs and effort because application data is  Proprietary  Incompatible  Undocumented legacy data  Different data formats

Same data, different format fifteen XV “15”   0x0F

The Internet  The ultimate integration environment  Many different systems and platforms  Time to market measured in internet time  Today XML is already integrated in  Operating systems  Applications  Databases  Development tools  Browsers  …

XML design goals  Flexible, extensible and support for wide variety of applications  Must be simple and light weight  Straightforwardly usable over the internet

What is XML?  Meta language for self describing structured data  Consists of data and tags  Extensible language, users can define their own specific tags  Version 1.0 specification approved by W3C as recommendation

XML History  Subset of Standard Generalized Markup Language (SGML)  Far less complex  20% of SGML features  80% of SGML functionality  (XML spec is 26 pages, SGML 500+)

XML vs. HTML XML  Subset of SGML  Extensible  Focus on data HTML  SGML application  Fixed  Focus on presentation

XML Document Structure … <!DOCTYPE name [ … ]> Document data Document definition (optional) (optional) XML declaration (processing instructions) XML declaration (processing instructions)

Basic XML syntax  Human “readable” text  Support for Unicode character set  Syntax is stricter than for example HTML

Tags And Data  Document consists of data marked up by tags  Tags describe meaning and structure of data  An element is a group of start-tag/end-tag with the data in between Essential XML Essential XML Start-tagEnd-tagData

Start- and End-Tags  Element must have a matching start- and end-tag hello world  hello world   Empty elements can be written as    Tags are case sensitive

XML Basic Syntax  XML elements can have nested child elements to structure to structure document in levels   text 

Root element  A XML document must have one root element:  XML in action Essential XML  XML in action Essential XML XML in action  Essential XML XML in action  Essential XML  What is the document root ?

Comments  Syntax for comments is:  Syntax for comments is:  Comments be placed everywhere in the document except inside element tags > 

Attributes  Attributes associate named values to an element  Attributes are part of the start-tag XML in action XML in action  Values must be double or single quoted

XML Example <library><book> XML in action XML in action </book><book> Essentail XML Essentail XML </book> RootRoot Book element Currency attribute for price element Processing instruction Child elements of Book

Valid vs. Well Formed XML  Well formed: Valid XML syntax  Valid document: Content of document valid conform specification of document  A valid document is automatically a well formed document  A well formed document is not always a valid document

Document specifications  Describes structure and contents of XML document  Parsers can use schema’s to validate a document  Validation is optional  Think if/where validation should take place  Document Type Definitions (DTD), part of XML 1.0 standard

DTD example <!DOCTYPE CATALOG [ <!ELEMENT PRICE(#PCDATA) ]> XML in action 49.95

DTD Issues  Good DTD’s are difficult to write (Extended Backus Naur Form notation)  DTD’s are not extensible and many limitations  Most important limitation is lack of data types

XML Schemas  Alternative for DTD’s  XML is used to describe the structure of the document, no need to learn new language or use other tools  Lifts most limitations of DTD’s (data types )  XSD,  XML schema specification  W3C recommendation  XDR  Early MS version of XSD

</Schema> XML-Data Schemas simple example

XML Parsers  Parse XML document  Validate XML syntax (always)  Validate content (optional)  Access data  Update data  Translate data (XSL)

XML Parser types Two different parser models  Document Object Model (DOM)  Complete document in memory  Easy access for applications  Queries on data  Translations  Simple API for XML (SAX)  Generates event per parsed element  Large documents  Batch processing  More difficult to use than DOM

Document Object Model  DOM defines logical structure of a parsed XML document  DOM defines how data can be accessed and manipulated  Provides standardized API (level 1, 2 and 3)  DOM can also be used to create or modify XML documents

Document Object Model document root node node Node lists A node can contain child nodes or text

Querying the DOM through XPath  XPath declarative language for locating nodes and fragments in XML trees  Allow you to locate nodes by:  Absolute or relative position  Element or attribute types  Element or attribute values  Combinations using boolean operators  Also used in XSL, XPointer and XLink specifications

XPath examples  All books in the current context book (equal to./book)  All books anywhere in the document //book  All books with specified element value book[title=“Essential XML”]  or a specified attribute value  or just having the attribute  The first 3 books book[index()<4]

Extended Stylesheet Language XSL  Similarities with CSS, but more powerful  Applies translations to data that matches a pattern  Close to becoming a standard (draft status W3C)

XSL translations  XSLT is based on pattern matching and templates  A template rule consist of a pattern and a template  Processor finds best matching pattern and applies related template for translation

XSL stylesheet example … … Essential XML XML in action Essential XML XML in action Essential XML XML in action XML Data XSL style sheet (partial) HTMLoutput + =

XSL usage  Formatting and displaying XML data as HTML, PDF, etc.  Converting XML document:  Other XML document structures (XML->XML)  Other data formats (CSV, Edifact)  MS Biztalk mapping editor generate XLS to convert XML, Flat file and Edifact documents to XML and back.

XML Applications  XML in real applications  Simple Object Access Protocol  Microsoft Biztalk 2000 Note this is not a training on SOAP and Biztalk

Software integration  Today’s middleware  Vendor and language depended COM+ v.s. EJBCOM+ v.s. EJB Interoperability problemsInteroperability problems  Was not designed to use over the internet Reliable communicationsReliable communications FirewallsFirewalls  Complex

SOAP  Simple Object Access Protocol  Invoking object methods using XML and HTTP  Specification written by Microsoft, IBM, Software and Developmentor  Vendor and middleware independency (the end of middleware battles ?)  Supported and available today from most major vendors (MS,IBM,IONA etc.)  Core technology in Microsoft.NET web services

SOAP Vendor A Vendor B This whole process is transparent for client and component ClientapplicationComponent XML/HTTP2 2.Soap proxy intercepts call and constructs and transmits XML request message Soaplistener3 3.Soap listener receives, parses and validates request 4 4.Listener calls component message 56 5.Listener takes result of call and constructs and transmits XML response 6.Proxy receives and parses response and returns result to client Soapproxy 1 1.Client application makes call

Simple SOAP Request POST /StockQuote HTTP/1.1 Host: Content-Type: text/xml; charset="utf-8“ Content-Length: 323 SOAPAction: Some-Namespace-URI#GetLastTradePrice MSFT MSFT GetLastTradePrice(“MSFT”) Envelope Body HTTP headers

Simple SOAP Response HTTP/ OK Content-Type: text/xml; charset="utf-8“ Content-Length: nnnn </SP:Envelope> Result HTTP headers Envelope Body

What Is Biztalk ? Biztalk Community (Biztalk.org) Biztalk Community (Biztalk.org) Library for business document specification Library for business document specification Stimulate reuse Stimulate reuse Submit and retrieve document specifications Submit and retrieve document specifications 400+ third-party XML business documents 400+ third-party XML business documents 150+ registered organizations 150+ registered organizations Biztalk Framework Biztalk Framework XML Specification for document routing and exchange (SOAP 1.1 compliant) XML Specification for document routing and exchange (SOAP 1.1 compliant) Biztalk Server Biztalk Server Microsoft server product for processing, transforming, signing, routing of documents Microsoft server product for processing, transforming, signing, routing of documents

B2B challenges My company Suppliers Customers

Business to Business Different data format (EDI, CSV, XML…) Different data format (EDI, CSV, XML…) Different document structures Different document structures Different protocols Different protocols Different encryption technologies Different encryption technologies Different operating systems Different operating systems Legacy ERP and other back office systems Legacy ERP and other back office systems

Design time tools Design time tools Schema, transformation definition Schema, transformation definition Document processing server Document processing server Messaging Messaging Communication Communication Transformation Transformation Routing Routing Encryption Encryption Workflow Workflow Orchestration Orchestration Biztalk Server

XSL Engine XSL map XSL Map Biztalk Mapper Parser InternalXMLdoc Serialize Serializer Internal XML doc EDIdocCSVfileXMLdoc Inbound document EDIdocCSVfileXMLdoc Outbound document Doc spec editor Biztalk editor XML in Biztalk

VisioDiagram Scheduler XLANG Runtime XLANGschedule Applications BiztalkMessaging Compile

XML in Biztalk Server  XML for describing all in- and outbound business documents as an extended Data- Schema  XSL for document translations  XML as internal format for all processed documents  XLANG workflow schedules

Biztalk demos  Biztalk Editor Biztalk Editor Biztalk Editor  Biztalk Mapper Biztalk Mapper Biztalk Mapper  Biztalk Orchestration Biztalk Orchestration Biztalk Orchestration

Things to read… XML in Action MS-Press ISBN Professional XML WROX ISBN Understanding SOAP SAMS ISBN Essential XML Addison Wesley ISBN

Places to go…  (all mentioned standards)  (tutorials and reference on xml)  (tutorials and reference on xml)  (Biztalk organization)

<QUESTIONS/>

Biztalk Orchestration

Biztalk Editor

Biztalk Mapper