Book description
As developers know, the beauty of XML is that it is extensible, even to the point that you can invent new elements and attributes as you write XML documents. Then, however, you need to define your changes so that applications will be able to make sense of them and this is where XML schema languages come into play. RELAX NG (pronounced relaxing), the Regular Language Description for XML Core--New Generation is quickly gaining momentum as an alternative to other schema languages. Designed to solve a variety of common problems raised in the creation and sharing of XML vocabularies, RELAX NG is less complex than The W3C's XML Schema Recommendation and much more powerful and flexible than DTDs.RELAX NG is a grammar-based schema language that's both easy to learn for schema creators and easy to implement for software developers In RELAX NG, developers are introduced to this unique language and will learn a no-nonsense method for creating XML schemas. This book offers a clear-cut explanation of RELAX NG that enables intermediate and advanced XML developers to focus on XML document structures and content rather than battle the intricacies of yet another convoluted standard.RELAX NG covers the following topics in depth:
- Introduction to RELAX NG
- Building RELAX NG schemas using XML syntax
- Building RELAX NG schemas using compact syntax, an alternative non-XML syntax
- Flattening schemas to limit depth and provide reusability
- Using external datatype libraries with RELAX NG
- W3C XML Schema regular expressions
- Writing extensible schemas
- Annotating schemas
- Generating schemas form different sources
- Determinism and datatype assignment
Publisher resources
Table of contents
- A Note Regarding Supplemental Files
- Foreword by James Clark
- Foreword by Murata Makoto
- Preface
-
I. Tutorial
- 1. What RELAX NG Offers
- 2. Simple Foundations Are Beautiful
- 3. First Schema
- 4. Introducing the Compact Syntax
- 5. Flattening the First Schema
-
6. More Complex Patterns
- The group Pattern
- The interleave Pattern
- The choice Pattern
- Pattern Compositions
- Order Variation as a Source of Information
- Text and Empty Patterns, Whitespace, and Mixed Content
- Why Is It Called interleave?
- Mixed Content Models with Order
- A Restriction Related to interleave
- A Missing Pattern: Unordered Group
- 7. Constraining Text Values
- 8. Datatype Libraries
- 9. Using Regular Expressions to Specify Simple Datatypes
- 10. Creating Building Blocks
- 11. Namespaces
- 12. Writing Extensible Schemas
- 13. Annotating Schemas
- 14. Generating RELAX NG Schemas
- 15. Simplification and Restrictions
- 16. Determinism and Datatype Assignment
-
II. Reference
- 17. Element Reference
- 18. Compact Syntax Reference
-
19. Datatype Reference
- xsd:anyURI — URI (Uniform Resource Identifier)
- xsd:base64Binary — Binary content coded as “base64”
- xsd:boolean — Boolean (true or false)
- xsd:byte — Signed value of 8 bits
- xsd:date — Gregorian calendar date
- xsd:dateTime — Instant of time (Gregorian calendar)
- xsd:decimal — Decimal numbers
- xsd:double — IEEE 64-bit floating-point
- xsd:duration — Time durations
- xsd:ENTITIES — Whitespace-separated list of unparsed entity references
- xsd:ENTITY — Reference to an unparsed entity
- xsd:float — IEEE 32-bit floating-point
- xsd:gDay — Recurring period of time: monthly day
- xsd:gMonth — Recurring period of time: yearly month
- xsd:gMonthDay — Recurring period of time: yearly day
- xsd:gYear — Period of one year
- xsd:gYearMonth — Period of one month
- xsd:hexBinary — Binary contents coded in hexadecimal
- xsd:ID — Definition of unique identifiers
- xsd:IDREF — Definition of references to unique identifiers
- xsd:IDREFS — Definition of lists of references to unique identifiers
- xsd:int — 32-bit signed integers
- xsd:integer — Signed integers of arbitrary length
- xsd:language — RFC 1766 language codes
- xsd:long — 64-bit signed integers
- xsd:Name — XML 1.O name
- xsd:NCName — Unqualified names
- xsd:negativeInteger — Strictly negative integers of arbitrary length
- xsd:NMTOKEN — XML 1.0 name token (NMTOKEN)
- xsd:NMTOKENS — List of XML 1.0 name tokens (NMTOKEN)
- xsd:nonNegativeInteger — Integers of arbitrary length positive or equal to zero
- xsd:nonPositiveInteger — Integers of arbitrary length negative or equal to zero
- xsd:normalizedString — Whitespace-replaced strings
- xsd:NOTATION — Emulation of the XML 1.0 feature
- xsd:positiveInteger — Strictly positive integers of arbitrary length
- xsd:QName — Namespaces in XML-qualified names
- xsd:short — 32-bit signed integers
- xsd:string — Any string
- xsd:time — Point in time recurring each day
- xsd:token — Whitespace-replaced and collapsed strings
- xsd:unsignedByte — Unsigned value of 8 bits
- xsd:unsignedInt — Unsigned integer of 32 bits
- xsd:unsignedLong — Unsigned integer of 64 bits
- xsd:unsignedShort — Unsigned integer of 16 bits
-
III. Appendixes
-
A. DSDL
-
A Multipart Standard
- Part 1: Overview
- Part 2: Regular Grammar-Based Validation
- Part 3: Rule-Based Validation
- Part 4: Selection of Validation Candidates
- Part 5: Datatypes
- Part 6: Path-Based Integrity Constraints
- Part 7: Character Repertoire Validation
- Part 8: Declarative Document Architectures
- Part 9: Namespace- and Datatype-Aware DTDs
- Part 10: Validation Management
- What DSDL Should Bring You
-
A Multipart Standard
-
B. The GNU Free Documentation License
- GNU Free Documentation License
- 0. Preamble
- 1. APPLICABILITY AND DEFINITIONS
- 2. VERBATIM COPYING
- 3. COPYING IN QUANTITY
- 4. MODIFICATIONS
- 5. COMBINING DOCUMENTS
- 6. COLLECTIONS OF DOCUMENTS
- 7. AGGREGATION WITH INDEPENDENT WORKS
- 8. TRANSLATION
- 9. TERMINATION
- 10. FUTURE REVISIONS OF THIS LICENSE
- Addendum: How to use this License for your documents
-
A. DSDL
- Glossary
- Index
- About the Author
- Colophon
- Copyright
Product information
- Title: RELAX NG
- Author(s):
- Release date: December 2003
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9780596004217
You might also like
book
Broadband Optical Access Networks
Broadband optical access network is an ideal solution to alleviate the first/last mile bottleneck of current …
audiobook
Difficult Conversations
You have to talk with a colleague about a fraught situation, but you're worried that they'll …
book
XML in Scientific Computing
This book introduces XML to scientists and engineers in a way that illustrates the similarities and …
book
DocBook 5: The Definitive Guide
If you need a reliable tool for technical documentation, this clear and concise reference will help …