Chapter 16. Determinism and Datatype Assignment

One of the strengths of RELAX NG is that it’s flexible enough to support a difficult but sometimes convenient concept called:

  • “Ambiguous content models” in the SGML world

  • “Nondeterministic content models” in XML DTDs

  • The “Unique Particle Attribution rule” and the “Consistent Declaration rule” in the W3C XML Schema

Before you read any further into this chapter, realize that as far as simple validation is concerned, RELAX NG processes ambiguous schemas happily. That said, when type assignment or data binding is involved, schema ambiguity may have consequences that create problems. You will see in this chapter how to use RELAX NG in ways that avoid these problems, making RELAX NG “type assignment-friendly.”

Get RELAX NG now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.