Publishers send BookNest XML, not JSON: the book trade standardized on XML decades ago, as did banks, regulators and office suites. XML comes with a family of W3C languages, XPath to select, XQuery to query, XSLT to transform and four schema languages to validate. This chapter covers them with one running example, BookNest's catalog in the style of the book trade's ONIX standard, run for real with Saxon-HE 726,956 , BaseX 693,830 , libxml2 3,427 , Jing 258 , SchXslt 29 , lxml 3,063 and Java, and says where old XML habits have aged badly.
What you will learn
XML's markup, namespaces, linking and inclusion, and its place in pipelines.
XPath 3.1, XQuery 3.1, XSLT 3.0, and validation with DTD, XSD, RELAX NG and Schematron.
XML from JavaScript, PHP, Python and Java; parsers, web services, security and tool choice.
Sections
- XML in Data Engineering
- Textual Markup Components
- Namespaces and xml: Attributes
- Linking and Inclusion
- XPath 3.1 Data Types
- XPath 3.1 Path Expressions
- XPath Core Functions
- XPath Temporal Functions
- XPath Structured Data
- XPath Extended Functions
- Document Type Definitions
- XSD 1.1 Types
- RELAX NG
- Schematron
- XQuery 3.1 FLWOR Expressions
- XQuery Other Expressions
- XQuery Full Text and Update
- XSLT Flow and Construction
- XSLT Validation and Sorting
- XSLT Templates and Modules
- XSLT Analysis and Streaming
- XSLT Functions and 4.0
- XML in JavaScript
- XSLT in JavaScript
- PHP and XML
- Python and XML with lxml
- DOM and Streaming Parsers
- Native XML Parser Libraries
- XML Parsing Under the Hood
- XML Web Services
- XML Application Languages
- Peripheral XML Standards
- XML Security
- Choosing an XML Toolchain
- XML in Today's Data Pipelines
- Test Yourself!