For people involved in this area it is clear that XML is well suited for data exchange, but it is far too weak to represent data models and the needed constraints. So XML cannot be used to substitute EXPRESS, but it can be used to represent Express schemas and data governed by Express schemas.
There are several ways to represent EXPRESS defined data in XML. All have advantages and disadvantages. The first mappings of STEP data to XML were on a proprietary basis using DTD. Three of them got finally documented in the Public Technical Specification:
ISO/TS 10303-28 XML representation of EXPRESS schemas and data
After technical completion in 2001 this part was published by ISO as a Technical Specification in 2003. It contains three alternative bindings on the basis of DTDs:
- Late-bound markup declaration for EXPRESS-defined data
- EXPRESS-typed Early Binding (ETEB)
- Object-Serialization Early Binding (OSEB)
During the development it became clear that a binding based on DTDs is too limited. Therefore the development of a second edition based on XML schema started. For this it was agreed that there should be only one binding (no alternatives).
Meanwhile a stable document is available and in discussion at ISO TC184/SC4 WG11. The only one remaining problem is on the configuration language. By this it will be possible to add additional information to Express schemas to control containment of instance within other instances along relationships between them.
We should mention that there are further activities inside and outside of ISO TC184/SC4 to use XML-RDL and XML-OWL for product data. This is ongoing work.
See also http://www.infowebml.ws.