XML as a Data Description and Distribution Language Software Development Conference 2000 San Jose, California March 23, 2000 Copyright 2000 © Faison Computing.

Slides:



Advertisements
Similar presentations
Web Services Using SOAP, WSDL, and UDDI
Advertisements

XML: Extensible Markup Language
XML/EDI Overview West Chester Electronic Commerce Resource Center (ECRC)
SOAP.
Managing XML and Semistructured Data Lecture 12: XML Schema Prof. Dan Suciu Spring 2001.
ISO DSDL ISO – Document Schema Definition Languages (DSDL) Martin Bryan Convenor, JTC1/SC18 WG1.
1 Web Data Management XML Schema. 2 In this lecture XML Schemas Elements v. Types Regular expressions Expressive power Resources W3C Draft:
SE 370: Programming Web Services Week 4: SOAP & NetBeans Copyright © Steven W. Johnson February 1, 2013.
XML 6.5 XML Schema (XSD) 6. What is XML Schema? The origin of schema  XML Schema documents are used to define and validate the content and structure.
1 XML DTD & XML Schema Monica Farrow G30
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
An Introduction to XML Schema CSCI 7818 by Ming Rutar.
XML Schemas Microsoft XML Schemas W3C XML Schemas.
RDF Kitty Turner. Current Situation there is hardly any metadata on the Web search engine sites do the equivalent of going through a library, reading.
Document Content Description for XML, Version 1.0 By Tim Bray, Charles Frankston and Ashok Malhotra EECS 684 Presentation by Calvin Ang.
Sunday, June 28, 2015 Abdelali ZAHI : FALL 2003 : XML Schemas XML Schemas Presented By : Abdelali ZAHI Instructor : Dr H.Haddouti.
XML(EXtensible Markup Language). XML XML stands for EXtensible Markup Language. XML is a markup language much like HTML. XML was designed to describe.
System Integration (Cont.) Week 7 – Lecture 2. Approaches Information transfer –Interface –Database replication –Data federation Business process integration.
W3C XML Query Language Working Group Mark Needleman Data Research Associates ZIG Current Awareness Session July 13, 2000.
HDF 1 NCSA HDF XML Activities Robert E. McGrath Mike Folk National Center for Supercomputing Applications.
Introduction to XML: Part I By Sandeep Jangity CS 157B, Section 2 Dr. Lee.
17 Apr 2002 XML Schema Andy Clark. What is it? A grammar definition language – Like DTDs but better Uses XML syntax – Defined by W3C Primary features.
1 CIM User Group Conference Call december 8th 2005 Using UN/CEFACT Core Component methodology for EIC/TC 57 works and CIM Jean-Luc SANSON Electrical Network.
Lecture 15 XML Validation. a simple element containing text attribute; attributes provide additional information about an element and consist of a name.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 XML Taken from Chapter 7.
Why XML ? Problems with HTML HTML design - HTML is intended for presentation of information as Web pages. - HTML contains a fixed set of markup tags. This.
IS432 Semi-Structured Data Lecture 3: XSchema Dr. Gamal Al-Shorbagy.
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
XML Open Computing Institute, Inc. 1 eXtensible Markup Language (XML)
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 14 Networks, Multi-Tier Architectures, and XML.
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.
Cis303a_chapt03-2a.ppt Range Overflow Fixed length of bits to hold numeric data Can hold a maximum positive number (unsigned) X X X X X X X X X X X X X.
XML A web enabled data description language 4/22/2001 By Mark Lawson & Edward Ryan L’Herault.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
11 3 / 12 CHAPTER Databases MIS105 Lec15 Irfan Ahmed Ilyas.
An OO schema language for XML SOX W3C Note 30 July 1999.
Term 2, 2011 Week 1. CONTENTS Problem-solving methodology Programming and scripting languages – Programming languages Programming languages – Scripting.
Internet Technologies Review Week 1 How does Jigsaw differ from EchoServer.java? What abstractions are made available to the servlet writer (under.
Sheet 1XML Technology in E-Commerce 2001Lecture 2 XML Technology in E-Commerce Lecture 2 Logical and Physical Structure, Validity, DTD, XML Schema.
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.
XML eXtensible Markup Language. XML A method of defining a format for exchanging documents and data. –Allows one to define a dialect of XML –A library.
Internet & World Wide Web How to Program, 5/e. © by Pearson Education, Inc. All Rights Reserved.2.
1 herbert van de sompel CS 502 Computing Methods for Digital Libraries Cornell University – Computer Science Herbert Van de Sompel
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 4 1COMP9321, 15s2, Week.
Metadata : an overview XML and Educational Metadata, SBU, London, 10 July 2001 Pete Johnston UKOLN, University of Bath Bath, BA2 7AY UKOLN is supported.
QUALITY CONTROL WITH SCHEMAS CSC1310 Fall BASIS CONCEPTS SchemaSchema is a pass-or-fail test for document Schema is a minimum set of requirements.
Introduction to XML Schema John Arnett, MSc Standards Modeller Information and Statistics Division NHSScotland Tel: (x2073)
When we create.rtf document apart from saving the actual info the tool saves additional info like start of a paragraph, bold, size of the font.. Etc. This.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Representing Data with XML February 26, 2004 Neal Arthorne.
XML CSC1310 Fall HTML (TIM BERNERS-LEE) HyperText Markup Language  HTML (HyperText Markup Language): December  Markup  Markup is a symbol.
Computer Science I Storing data. Binary numbers. Classwork/homework: Catch up. Do analysis of image types.
Interoperability How to Build a Digital Library Ian H. Witten and David Bainbridge.
Working with XML. Markup Languages Text-based languages based on SGML Text-based languages based on SGML SGML = Standard Generalized Markup Language SGML.
XML Validation. a simple element containing text attribute; attributes provide additional information about an element and consist of a name value pair;
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.
XML for Scientific Applications Marlon Pierce ERDC Tutorial August
 XML derives its strength from a variety of supporting technologies.  Structure and data types: When using XML to exchange data among clients, partners,
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 9 Web Services: JAX-RPC,
1 XML and XML in DLESE Katy Ginger November 2003.
XML: Extensible Markup Language
T Network Application Frameworks and XML Web Services and WSDL Sasu Tarkoma Based on slides by Pekka Nikander.
Chapter 6: Data Types Lectures # 10.
Programming the Web Using Visual Studio .NET
XML QUESTIONS AND ANSWERS
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Presentation transcript:

XML as a Data Description and Distribution Language Software Development Conference 2000 San Jose, California March 23, 2000 Copyright 2000 © Faison Computing Inc. Ted Faison

XML as a document description language SGML originated back in 1974 XML was first published in 1998, as a replacement for SGML. Both use DTDs. Purpose of a DTD.

Problems with DTDs Use their own language, grammar and syntax Limited attribute options Very week element typing –Basically just CDATA and PCDATA No inheritance for extending types

Managing data with XML XML as a data definition language –XML schemas with datatypes –scalar types and composites –extensible types XML DOM Programming –The W3C Document Object Model Example 1 in Java –Using the Open Source Xerces-J XML Parser.

Managing data with XML Querying XML data –Locating elements in an XML DOM Example 2 in Delphi –MSXML search patterns can be found at

XML Schemas Several proposals under development SchemaProposer –XML SchemaW3C –RDF SchemaW3C –XML-DataMicrosoft –DCDIBM, Microsoft –SOXVeo Systems –DDML (ex Xschema)XML-dev group

Benefits of XML Schemas Standard XML –easier to understand –can use XML tools for editing –more expressive than DTDs –support for namespaces Powerful datatypes that are familiar to programmers –reusable types: archetypes

XML Schema Datatypes scalar, structured and derived types Document-oriented types –string Data-oriented types –int, boolean, date, float, etc. Derived Types

XML-Data Schema Layout The current Microsoft standard –May merge with DCD Top-Level Schema Element …….. Standard Namespaces <Schema xmlns ="urn:schemas-microsoft-com:xml-data” xmlns:dt ="urn:schemas-microsoft-com:datatypes"> …..

XML Schema Range Checking –The XML Schema WG has proposed the use of facets to define range constraints and other attributes of datatypes. –The DCD WG is considering min and max attributes to define ranges. –The XML-Data spec ( ) defines min and max elements for ranges. –MSXML currently implements a subset of XML-Data.

XML-Data Characters char String, one character long (Unicode). string sequence of chars (any length). string.ansi sequence of ASCII characters {0..0xFF} not supported by msxml yet. Example 3 in XML

XML-Data Booleans boolean –holds the values ‘0’ and ‘1’. Schema <Schema xmlns ="urn:schemas-microsoft-com:xml-data” xmlns:dt ="urn:schemas-microsoft-com:datatypes"> Code 1 Example 4 in XML

XML-Data Binary Numbers bin.base64 MIME-style Base64 encoded binary BLOB. bin.hex Hexadecimal digits representing octets. uuid Hexadecimal digits representing octets, with optional embedded hyphens. For example: "333C7BC4-460F-11D0-BC C7055A83"

XML-Data Integer Numbers int –Potentially any number of digits. Msxml supports 32 bit signed number. No fractions, and no exponent. i1, i2, i4 –Integer represented in 1, 2 or 4 bytes. For example: "1”, “127”, “-15828”, “ ".

XML-Data Integer Numbers ui1, ui2, ui4 –Unsigned integer represented in 1, 2 or 4 bytes. A number, unsigned, no fractions, no exponent. For example: "10”, “255”, “ ".

XML-Data Floating Point Numbers float, number –Real number, with no limit on digits; can have a leading sign, fractional digits, and optionally an exponent. Punctuation as in U.S. English. Msxml encodes the numbers as 64-bit values. For example “ ”.

XML-Data Numbers fixed.14.4 Same as "number" but up to 14 digits to the left of the decimal point, and 4 to the right. r4, r8 Real number, encoded as 32 or 64 bit value. r4 has 7 digit precision, r8 has 15 digit precision. Can have a leading sign, fractional digits and optional exponent. Values for r4 are ~ {1E E+38}. Values for r8 are ~ {1E E308}. Example 5 in XML

XML-Data Date & Time date –Date in ISO 8601 format, without the time data. For example: " ". time –Time in ISO 8601 format, with no date and no time zone. For example: ”21:15:57".

XML-Data Date & Time dateTime –Date in ISO 8601 format, with optional time, but no time zone. Fractional seconds can be as precise as nanoseconds. For example: " T18:39: ". Example 6 in XML

XML-Data Date & Time dateTime.tz –Same as dateTime, but with a timezone offset. For example: " T18:39: :00" time.tz –Same as time, but with a timezone offset. For example: "08:15:27-05:00"

XML-Data Identifiers uri –Uniform Resource Identifier. For example: "urn:schemas-microsoft-com:xyz".

XML-Data Testing Datatype Validation IE5 doesn’t validate datatypes automatically. Must use msxml explicitly. Set msxmldom.validateOnParse = true. XML document must reference a schema.

Sample HTML Test Script var parser = new ActiveXObject("Microsoft.XMLDOM"); parser.async = false; parser.validateOnParse = true; parser.load(”My_XML_File.xml"); if (parser.parseError != 0) alert(parser.parseError.reason);

XML-Data Example Summary Strings Example 3 Booleans Example 4 Numbers Example 5 Dates/Times Example 6

Accessing XML Datatypes Programming language examples in: –JavaScript (Example 7) –Visual Basic (Example 8) –C++ (Example 9)

Aggregate Data Structures Arrays Linked Lists Trees Example 10 in Delphi

Structured Types - Objects –Encoding fields and properties Use RDF Roll your own format, using attributes and elements –Example 11 in JavaScript –Method Calls: Can employ the new Simple Object Access Protocol

Structured Types - Database Result Sets –ADO Record Sets –Generating XML data –Example 12 in Delphi

Structured Types - Database Result Sets IE5 Record Set Features –Data Source Objects support data-binding for GUI controls fetch XML data from a URL using http –DSOs as XML Islands support the direct embedding of xml data in an html document

RDF - Resource Description Framework Developed to encode semantics Uses an XML schema Uses standard directed graphs –Objects with properties –Collections of properties –Hierarchies of objects Uses namespaces

RDF - Resources as Objects with properties Support for inheritance of classes Vehicle CarTruck

RDF Inheritance - Superclass <rdf:Class xmlns rdf: ” xmlns rdfs:” rdf:ID=“Vehicle”> Superclass for cars, boats and trucks

RDF Inheritance - Subclass <rdf:Class xmlns rdf: ” xmlns rdfs:” rdf:ID=“Car”>

RDF Graphs MyCar CarVehicle subClassOf DoorsPrice Engine engine Size 2.2 liter Color red

RDF Issues Namespaces not stable Datatyping mechanism not defined pending XML Schema publication RDF Schema not stable yet. See Appendix B Graphs are unwieldy for complex cases Could use UML

Linking Systems with XML The simple way: Using GET or POST Command and parameters are embedded in a single XML argument in a URI: where xmlstring might be: Chris Lake –Caller receives data returned from command as an HTML page

Linking Systems with XML: SOAP –Simple Object Access Protocol as a standard RPC mechanism –Uses standard XML over HTTP HTTP Content Type is text/xml-SOAP Easy to learn Independent of component architectures and computing platforms –Can easily penetrate firewalls –complete spec can be found at msdn.microsoft.com/xml/general.soapspec-v1.asp

SOAP - Basic XML Elements –defines the standard soap namespace urn:schemas-xmlsoap-org:soap.v1 –optional

SOAP - Sample Request Chris Johnson

SOAP - Sample Response with a Single Value 50000

SOAP - Sample Response with Multiple Values Joe William Smith

SOAP - Exception Handling Uses predefined elements Fault, faultcode, faultstring, detail and runcode <soap:Envelope xmlns:soap='urn:schemas-xmlsoap-org:soap.v1'> 400 Application Faulted Invalid Employee Name -8

Conclusion XML is well-suited to describe type-rich data. DTDs are inadequate. XML Schemas do a much better job. But those schemas are still evolving. XML can encode not only data, but method calls and responses. XML technology is still in its infancy. XML is the basis for numerous emerging standards, e.g VML, WML and others.

For More Information All examples for this presentation can be found at: publications/PublicationsbyTedFaison.html XML Schema spec XML-Data spec RDF spec