About eight years ago we (the members of the xml-dev list) created Best Practices for XML Schema 1.0. Those Best Practices are frequently cited in books and articles, and have been used by countless developers.
Now XML Schema 1.1 has arrived and it provides many powerful new capabilities. It is time to develop a set of Best Practices for XML Schema 1.1.
The first issue is: A community-wide XML Schema is created. How should members of the community constrain the XML Schema to meet their business rules? Here is the best practice on this issue: Expressing Business Rules (PDF).
The second issue is: XML Schema 1.1 allows additional constraints to be imposed on elements and attributes, above and beyond the constraints specified by their data type. Where should those additional constraints be positioned? Does an additional constraint on a descendant belong with the descendant or with an ancestor? Here is the best practice on this issue: Positioning Additional Constraints (PDF).
The third issue is: How do we create XML Schema components that can do not depend on their context, and can be dropped into different contexts, unaltered. Here is the best practice on this issue: Portable Data Components (PDF).
We welcome your participation!
Last updated: April 9, 2011.