| XML Fundamentals |
|
|
|
* Summary * Objectives * Prerequisites * Detailed Outline Course Duration : 2 days (how to book) Summary This hands-on course covers XML and XML namespaces; XML templates, using the DTD and XML Schema Technology; as well as using the XPath and XSLT XML languages in the transformation and manipulation of XML documents. The course has a high proportion of practical exercises in which the attendees will steadily use the knowledge they have gleaned to build up sophisticated XML documents. The practical work will make up at least 60% of the course, enabling the delegates to leave confident that they will have more than just a theoretical knowledge of the subject, but also a confidence to be able to apply it to their work. Objectives By the end of this course in addition to the attendees being able to write XML documents and XML templates, using a choice of methods, they will also be in a position to transform and manipulate these documents using the XML technology XPath and XSLT. As with all Ariadne courses, the success of the course will be based upon the attendees ability to apply what they have learnt to the challenges they face in their every day work. Prerequisites There are no prerequisites for this course. Detailed Outline An Introduction to XML XML - Extensible Markup Language XML - Benefits XML - Who calls the shots? XML - and 1000 other acronyms XML Parsers The Data Structure in the XML The Data Structure after Parsing The Data ‘Tree’ Siblings and Children Syntax Rules for Elements Elements and Matching Tags Alternative Empty Tag Nesting The Root Element Permitted Names Illegal Characters CDATA Sections White Space UTF Encoding Declaring A Document as XML Full XML Declaration Short XML Declaration Attributes Why Use Attributes Document Type Definitions What is a Document Type Definition? A Simple Internal DTD Internal Subset Declaration External Subset Declaration Standard External DTDs DTD Components Element Declarations The Element Content Model Element Content Cardinality Attribute Declarations Attribute Types Attribute Value Declarations Multiple Attributes Entities Notation Declarations Namespaces Namespaces Namespaces Element Name Clashes Using Prefixes Prefixes - Using Domain Names Prefixes - a Problem with Domain Names Default Namespace Nested Default Namespaces Namespaces and Schemas Target Namespaces Setting a Namespace Prefix Greater Complexity - brochure.xsd The Finished XML Document It’s Different for Attributes Using a Prefix with Attributes An Example Prefix with Attributes Validation using XML Schemas Templates for Data Same Data, Different Format Ensuring Consistency The XML Schema The Advantages of the XML Schema The XML Schema Document Defining the Data stock.xsd - The XML Schema The XML Schema Namespaces Declaration Defaults Type Declarations - simpleTypes Type Declarations - complexTypes Built-in Data Types <element> <element> - Default Values <element> - Fixed Values Content Models <sequence> Declarations <choice> Declarations <all> Declarations <group> Declaration Global Types Attributes Attributes - Default Values Attributes - Fixed Values Data Types - Being Even Stricter <restriction> <list> <union> stock.xml - The XML Document XPath - Navigation in an XML Document XPath - an Introduction XSLT - an Introduction XML Data Structures XML Nodes The Meaning of XPath XPath Axes Child Axis Attribute Axis Ancestor Axis Ancestor-or-self Axis Descendant Axis Descendant-or-self Axis Following Axis Following-sibling Axis Namespace Axis Parent Axis Preceding Axis Preceding-sibling Axis Self Axis XPath Functions String Functions Numeric Functions Node-set Functions Boolean Functions Predicates Putting it all Together Transforming XML using XSLT Exstensible Stylesheet Transformation The XSLT Processor The processor needs two documents in order to perform a transformation. It needs The XSL Stylesheet XSLT Elements The <stylesheet> Element The <template> Element The <apply-templates> Element Defining a <template> <value-of> with Elements <value-of> with Attributes Copying and Restructuring XML The <copy> Element <copy-of> Logic in XSLT <xsl:if> Element <xsl:choose> Iteration in XSLT <xsl:for-each> <xsl:sort> Reusing Nodesets XSLT Variables and Parameters
|

