Enabling Grids for E-sciencE www.eu-egee.org XML – eXtensible Mark-up Language Richard Hopkins, National e-Science Centre, Edinburgh March 15 / 16 2005.

Slides:



Advertisements
Similar presentations
What is XML? a meta language that allows you to create and format your own document markups a method for putting structured data into a text file; these.
Advertisements

XML: text format Dr Andy Evans. Text-based data formats As data space has become cheaper, people have moved away from binary data formats. Text easier.
An Introduction to XML Based on the W3C XML Recommendations.
© De Montfort University, XML – a meta language Howell Istance and Peter Norris School of Computing De Montfort University.
XHTML 16-Apr-17.
Enabling Grids for E-sciencE ISSGC’05 XML documents Richard Hopkins, National e-Science Centre, Edinburgh June 2005.
Introduction to XLink Transparency No. 1 XML Information Set W3C Recommendation 24 October 2001 (1stEdition) 4 February 2004 (2ndEdition) Cheng-Chia Chen.
17-Jun-15 XHTML 2 What is XHTML? XHTML stands for Extensible Hypertext Markup Language XHTML is aimed to replace HTML.
Grid Computing, B. Wilkinson, 20043a.1 WEB SERVICES Introduction.
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 7 Representing Web Data:
XML Primer. 2 History: SGML vs. HTML vs. XML SGML (1960) XML(1996) HTML(1990) XHTML(2000)
Document Type Definitions. XML and DTDs A DTD (Document Type Definition) describes the structure of one or more XML documents. Specifically, a DTD describes:
Introduction to XML This material is based heavily on the tutorial by the same name at
Introducing HTML & XHTML:. Goals  Understand hyperlinking  Understand how tags are formed and used.  Understand HTML as a markup language  Understand.
ECA 228 Internet/Intranet Design I Intro to XML. ECA 228 Internet/Intranet Design I HTML markup language very loose standards browsers adjust for non-standard.
XP New Perspectives on XML Tutorial 4 1 XML Schema Tutorial – Carey ISBN Working with Namespaces and Schemas.
XML introduction to Ahmed I. Deeb Dr. Anwar Mousa  presenter  instructor University Of Palestine-2009.
Enabling Grids for E-sciencE XML Richard Hopkins National e-Science Centre, Edinburgh February 23 /
Introduction to XML cs3505. References –I got most of this presentation from this site –O’reilly tutorials.
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.
CREATED BY ChanoknanChinnanon PanissaraUsanachote
XML CPSC 315 – Programming Studio Fall 2008 Project 3, Lecture 1.
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.
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 Syntax - Writing XML and Designing DTD's
XHTML. Introduction to XHTML What Is XHTML? – XHTML stands for EXtensible HyperText Markup Language – XHTML is almost identical to HTML 4.01 – XHTML is.
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.
 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,
Processing of structured documents Spring 2002, Part 2 Helena Ahonen-Myka.
Tutorial 1: XML Creating an XML Document. 2 Introducing XML XML stands for Extensible Markup Language. A markup language specifies the structure and content.
1 Tutorial 13 Validating Documents with DTDs Working with Document Type Definitions.
1 Chapter 10: XML What is XML What is XML Basic Components of XML Basic Components of XML XPath XPath XQuery XQuery.
XML 2nd EDITION Tutorial 1 Creating An Xml Document.
1 XML An Overview Roger Debreceny University of Hawai`i Skip White University of Delaware XBRL Workshop, August 2006.
CP3024 Lecture 9 XML: Extensible Markup Language.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation An Introduction to XML.
New Perspectives on XML, 2nd Edition
XML Documents Chao-Hsien Chu, Ph.D. School of Information Sciences and Technology The Pennsylvania State University Elements Attributes Comments PI Document.
An OO schema language for XML SOX W3C Note 30 July 1999.
XML Instructor: Charles Moen CSCI/CINF XML  Extensible Markup Language  A set of rules that allow you to create your own markup language  Designed.
XP 1 Creating an XML Document Developing an XML Document for the Jazz Warehouse XML Tutorial.
Lecture 16 Introduction to XML Boriana Koleva Room: C54
XML : a brief introduction Managing networks : understanding new technologies, Birmingham, 13 September 2001 Pete Johnston UKOLN, University of Bath Bath,
1 Credits Prepared by: Rajendra P. Srivastava Ernst & Young Professor University of Kansas Sponsored by: Ernst & Young, LLP (August 2005) XBRL Module Part.
McGraw-Hill/Irwin © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Understanding How XML Works Ellen Pearlman Eileen Mullin Programming the.
XML Introduction. What is XML? XML stands for eXtensible Markup Language XML stands for eXtensible Markup Language XML is a markup language much like.
What it is and how it works
XML Basics A brief introduction to XML in general 1XML Basics.
1 Tutorial 11 Creating an XML Document Developing a Document for a Cooking Web Site.
XML 2nd EDITION Tutorial 4 Working With Schemas. XP Schemas A schema is an XML document that defines the content and structure of one or more XML documents.
1 Tutorial 14 Validating Documents with Schemas Exploring the XML Schema Vocabulary.
Tutorial 13 Validating Documents with Schemas
Internet & World Wide Web How to Program, 5/e. © by Pearson Education, Inc. All Rights Reserved.2.
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 –
Introduction to XML XML – Extensible Markup Language.
XML CSC1310 Fall HTML (TIM BERNERS-LEE) HyperText Markup Language  HTML (HyperText Markup Language): December  Markup  Markup is a symbol.
Introduction to XML Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 7 Representing Web Data:
PART 1 XML Basics. Slide 2 Why XML Here? You need to understand the basics of XML to do much with Android All of they layout and configuration files are.
XML Introduction to 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.
1 Extensible Stylesheet Language (XSL) Extensible Stylesheet Language (XSL)
Extensible Markup Language (XML) Pat Morin COMP 2405.
XML BASICS and more…. What is XML? In common:  XML is a standard, simple, self-describing way of encoding both text and data so that content can be processed.
Unit 4 Representing Web Data: XML
XML QUESTIONS AND ANSWERS
Chapter 7 Representing Web Data: XML
Allyson Falkner Spokane County ISD
Presentation transcript:

Enabling Grids for E-sciencE XML – eXtensible Mark-up Language Richard Hopkins, National e-Science Centre, Edinburgh March 15 / Forschungszentrum Karlsruhe, Germany

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 2 OUTLINE Goals –To understand the structure of an XML document Outline –Philosophy –Elements –Supplementals and Prolog –Namespaces –Concluding Remarks

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 3 A Markup Language XML = eXtensible Markup Language “Markup” means document is an intermixing of –Content – the actual information to be conveyed - payload –Markup – information about the content - MetaData 22/10/1946 … is markup – says that the content is a date –Self-describing document –date is part of a markup vocabulary –  a collection of keywords used to identify syntax and semantics of constructs in an XML document

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 4 Extensibility XML = eXtensible Markup Language “Extensible” means the markup vocabulary is not fixed Compare with similar NON-extensible language –HTML (Hypertext Markup Language) –Fixed markup vocabulary e.g This is a paragraph. I like it. This is another paragraph –A presentation language for describing how a document should be presented for human consumption – This is a paragraph. I like it. This is another paragraph –For HTML the language is fixed and implicit in the fact that this is an HTML document – single-language document XML requires explicit definition of the language One document can combine multiple languages

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 5 Multi-lingual Documents businessForms:purchaseOrder –A purchaseOrder construct within the businessForms language BusinessForms (mythical) –A language defining structure of business documents –For business interoperability –Doesn’t prescribe the language of individual items such as dates  Taken from separate languages - USnotations:date Language names are actually universally unique URIs – - see later 10/22/

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 6 Multilingual Pros & Cons Separation of concerns – Design Factoring –Design of purchase order structure and date format etc are independent concerns –Re-use of language definitions, e.g. date formats in many languages –Extensibility – Purchase order accommodates new product identification schemes (e.g. ISBN for book stores) Of course, only works if both ends “understand” all languages used Makes things more complex – –Creating and identifying the languages 10/22/

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 7 Types of XML Language Fundamental Standards –E.g. SOAP - the language for soap messages  soap-envelope:header soap-envelope:body  A soap message is an XML document and its parts are identified using this vocabulary –Goal is a factoring that gives pick-and-mix of combinable standards –Associated with any WS standard will be a Schema definition of its XML language …. Community conventions –Perhaps, our BusinessForms language …. Specific Application Language –myProgram:parameter1 –The language used in invoking particular operations of a web service

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 8 Human & Machine Oriented Human readable –Sort of - OK with decent editor –Is de-buggable –Important for meta-data documents,  E.g. WSDL Machine processable Self description enables –General tools for producing and consuming XML documents Verbose –OK except for large data –Messages may have attachments not in XML How it really looks 10/22/

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 9 Philosophy Summary XML goals –Self-describing documents –Hierarchic structure –Enabling multiple languages –Human readable and reasonably clear –Easy to write programs that generate them –Easy to write programs that process them For humans – easier to read than to write –Leave detailed document creation to tools –But sometimes necessary to read them – particularly meta-data such as WSDL –Often need to understand how to design them So rest of talk deals with some nitty gritty

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 10 ELEMENTS Goals –To understand the structure of an XML document Outline –Philosophy –Elements –Supplementals and Prolog –Namespaces –Concluding Remarks

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 11 Syntax –I will give syntax definitions of constructs –Mainly for your retrospective use –This uses notation similar to that used in the standard  (Ed. 3, Feb ’04) –I will use some non-standard notation to make it a bit easier

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 12 Syntax [22]prolog ::= XMLDecl? Misc* (doctypedecl Misc*)? [23]XMLDecl ::= [27]Misc ::=Comment | PI | S /*syntax comment*/ [22]definition number – sequentially numbered in the spec. Prolog ::= construct is defined to be XMLDeclinclude anything this construct (unerlined) can be ?xml’) (.. )grouping (bold) ? * + |? optional, * 0 or more, + 1 or more, | alterantives “’ …. “’content in matching quotes – “…” or ‘…’ (non-standard) …text with some natural restrictions (non-standard) …as … but allowing references (non-standard) /* … */a comment on the syntax

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 13 Document Structure Main structure of document is Prolog – like headers Element – the actual document – recursively has nested elements Misc (miscellaneous) – –white space and supplementals allowed throughout with some restrictions –Supplemental – a Comment a Processing Instruction (PI) [1]document ::=prolog element Misc* … prolog Root element PI Comment

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 14 Basic Element Structure Primary element structure – –Start Tag –  Name of element  Zero or more attributes – uniquely named; order insignificant –Content – possibly nested elements, and other things –End Tag -  Name – MUST be same name as in matching Start Tag Like HTML – but stricter – must have end tag …. [1]document ::=prolog element Misc* /*this is root element*/ Start tag End tag Content nameattributeAttribute: name-value pair

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 15 Attributes A name-value pair that is included in the start tag of an element Name is part of specific language Value may also be part of a specific language – QName – qualified name More properly the above might be < BusinessForms:Invoice BusinessForms:customerType =“BusinessForms:trade” BusinessForms:dateStyle=“USnotations:date”> … This starts to get convoluted – necessary for designing for multi-lingual documents [41]Attribute ::=Name = AttValue [10]AttValue ::=‘” … ‘”/* excludes ‘” < & */ /*allows defined characters */ ….

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 16 Empty Elements Empty Element Tags – Shorthand for element with no content, just attributes perhaps indicated by / > not > Same as …. Start tag End tag Content Empty Element Tag

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 17 Nested Elements Account and Item’s are child elements – –Non-unique names –Usually order is significant Mixture of –Structure – uniquely named components –Array – multiple same-named components This is not a usual programming language configuration …

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 18 Separate Structs and Arrays Better to keep an element as either a Struct or an array … Becomes … 2-element Struct 3-element array

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 19 Embedded Supplementals The content can include Processing instructions and comments … PI Comment

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 20 Direct Character (Simple) Content is an element with just character data –A simple value All simple values are text strings, but may have particular syntax and interpretation as decimal, integer, date, …. 10/24/ /29/

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 21 Mixed Content This is Mixed Content – –Both direct character data and child elements –often excluded in web services domain This is free text embedded within child elements; better as either child elements or direct data - 10/24/04 … The above are perishable; &linebreak Watch out! 10/29/04 … Character data Child Elements 10/24/04 … The above are perishable &linebreak; Watch out! 10/29/04 …

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 22 Mixed Content Appropriate uses of mixed content may be when content is basically text with some embedded tagged elements Dear Mr Jones I am writing with regard to your absurd invoice which we categorically refuse to pay. Irate of Balham P.S. Any further communication will be ignored

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 23 Element Content - Summary 10/22/04 … 10/24/04 … The above are perishable &linebreak; Watch out! 10/29/04 …... Elements, Non-unique names, Order is significant Comment Processing Instruction Character Content In general consists of mixture of –Child Elements –Supplementals –Direct character data –Character Data Sections

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 24 Character Data Section To make it easier to include characters which have special significance within XML – everything is taken literally except ]]> Alternative is - … 10/24/04 … 10/29/04 …... … 10/24/04 … Some funny characters: < and &amp 10/29/04 …...

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 25 Element Syntax General recursive structure –Any level of nesting –Attributes on elements at any level [39]element ::= STag content ETag | EmptyElementTag [40]STag ::= [42]ETag ::= [40]EmptyElementTag ::= [43]content ::=…? ( contentItem …? )* [43]contentItem ::=PI | Comment | Element | CDSect [18] CDSect ::=

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 26 Attribute vs Child Pure child element approach – no attributes anywhere trade US 10/24/04 Euro … … <Invoice customerType=“trade” dateStyle=“US” > <item date=“10/24/04” price-currency=“Euro” price-Amount=“17.34” … /> … Maximum attribute approach - use attributes wherever possible Can have unbounded number of item children To use attribute approach for item would require defining infinite attributes item1-date item2-date …. Attribute names are unique within a tag Not possible

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 27 Attribute vs Child Use Attributes for “control” information –Affects how we interpret/process the data –Typically a limited number of standard values – Euro, USDollar,.. –Often essentially “type” info Use children for component data –Arbitrary values within the type (any date, any integer, any general string, … ) Distinction is fuzzy rather than absolute 10/24/ … … Recommended style (my personal view)

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 28 Notation Will use XML a lot – –Schemas, WSDL; Soap messages; Generally will use indentation to indicate structure abbreviate End Tags to just Always have to actually put name in end tag !!!! 10/24/ /24/

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 29 SUPPLEMENTALS & PROLOG Goals –To understand the structure of an XML document Outline –Philosophy –Elements –Supplementals and Prolog –Namespaces –Concluding Remarks

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 30 Miscellaneous items A miscellaneous item is something outside the main structure S Is white space – –I ignore this aspect and leave it to common sense –there are specific rules Other two, supplementals, are “explanatory” material Comment – for human consumption PI – Processing Instruction –For S/W consumption –Information to assist the S/W that is processing the XML Can occur wherever you might want them [27]Misc ::=Comment | PI | S

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 31 Comments A valid comment An invalid comment The “natural” restriction is – you can’t have -- in a comment, except as the --> terminator [15]Comment ::= /* … excludes -- */

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 32 Processing Instructions Instructions to help the processing S/W PITarget identifies the intended Software xml-css S/W processing this XML to present it in human-readable form, using stylesheets to control formatting. text defines stylesheet type and location – often in attributes forms billing – instructions to the billing software [16]PI ::= /* … excludes ?> */ [16]PITarget ::=Name/*not xml or XmL etc. */ … PITarget Free text

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 33 Prolog Main structure of document is Prolog – like headers Element – the actual document [1]document ::=prolog element Misc* … prolog Root element

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 34 The Prolog PI is optional, but should be there; –if so must be first –gives version number – must be 1.0 (for the 1.0 standard !!) –Could give the character encoding used – default is UTF-8, or something specifed at outer level (e.g HTTP header). ASCII is sub-set of UTF-8 –Doctypedecl - To do with Document Type Declarations (DTDs) –  We are not using these, so ignore –SDDecl – standalone declaration – not clear when using schema [22]prolog ::= XMLDecl? Misc* (doctypedecl Misc*)? [23]XMLDecl ::= Followed by: Other PIs Comments Optional XML PI

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 35 NAMESPACES Goals –To understand the structure of an XML document Outline –Philosophy –Elements –Supplementals and Prolog –Namespaces –Concluding Remarks

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 36 Namespaces A namespace (= “language”) –Does define a collection of names (vocabulary)  For UK : {address, county, postCode, …. } –Would usually have an associated syntax (e.g. Schema definition)  address = … county, postCode, …  Syntax may be available to S/W processing it –Implies a semantics – the (programmer writing) S/W processing a UK:address knows what it means. –Provides a unique prefix for disambiguating names from different originators  UK vs US vs INT … … … … … … … … … … …. ….

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 37 Namespace Names To get uniqueness of namespace name, use a URI –UK:postCode is really (mythical) –The URI might be a real URL, for accessing the syntax definition, documentation, …. –But it may be just an identifier within the internet domain owned by the namespace owner

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 38 Namespace Names To get uniqueness of namespace name, use a URI –UK:postCode is really But is –Tediously long to use throughout the document –Outwith XML name syntax  Namespaces are not part of XML  A supplementary standard A W3C recommendation In an XML document –declare a namespace prefix, as an attribute of an element  xmlns:UK=“ –then use that for names in that namespace - UK:postCode  UK:post code is called a QName (qualified name)

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 39 Namespace Prefix Declarations Namespace declaration occurs as an attribute of an element –i.e. within a start tag Scope is from beginning of that start tag to matching end tag –Excluding scope of nested re-declarations of same prefix Can declare a default namespace –xlmns=“www/3” – this is the name space for all un-qualified names in the scope of this declaration, eg. Street –But not for attributes – if no prefix, no namespace … … … … … … … … … … …. ….

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 40 Overriding namespace declarations xmlns:s1=“www/3” Re-defines explicit namespace is bad idea –Unnecessary Confusion … … … … … … … <!- - following is presentation material in xhtml – default names space changed - -> … … … … < xmlns=“www/xhtml” Re-defines default namespace - reasonable Note if no default declared, then un-prefixed name has no namespace!

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 41 ELEMENTS Goals –To understand the structure of an XML document Outline –Philosophy –Elements –Supplementals and Prolog –Namespaces –Concluding Remarks

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 42 Well-formed and Valid Well-formed means it confoms to the XML syntax, e.g. –Start and end tags nest properly with matching names Valid means it conforms to the syntax defined by the namespaces used –Can’t check this without a definition of that syntax –  Normally a Schema  DTD (document Type Definitions) – deprecated  Others type definition system – some more sophisticated than Schemas

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 43 Final Comments This is XML 1.0 Defined by WG3 – a recommendation  (Ed. 3, Feb ’04) Specification of the standard has a lot to do with DTDs which we have been ignoring – assume using Schemas instead Definitions are now in terms of Infosets – an abstraction of XML with XML being the standard representation A specialisation of SGML – a very general document markup language – any XML document is a an SGML document A generalisation of HTML  But not an actual extension.  An HTML document is not an XML document  There is a XML specialisation XHTML which gives HTML functionality

Enabling Grids for E-sciencE Richard Hopkins Web Services and WSRF, 15/16 March 2005, Karlsruhe -- XML 44 The End THE END