Hello,
Two things up for discussion in this note:
1) Design pattern change for XML Schemas - class attribute
2) Documenting catalog entries for the DITA XML Schemas
I know this is probably not the best of time to make changes to the
schemas, but I think this is one that we should discuss. The schemas are
starting to get more attention and usage. Unfortunately, this one slip
under the radar, but if possible I would like to address for in DITA 1.1.
1) The DITA DTD Architecture binds the class attribute declaration via an
ATTLIST declaration. The current DITA XML Schema does not bind the class
attribute to the element. It binds the class attribute to the complexType.
I think we should make the appropriate changes to the schemas in order to
have the class attributes bound to the element declaration. It means a
sweeping change to the schemas, one that would be hidden from the end user
and it would affect existing specializations as long as they did not use
extensions in the past.
The new design pattern also make a bit easier for renaming elements as part
of specialization. As user can now use XML schema extension mechanism to
reuse a base specialization complexType and add the appropriate class
attribute value for the new element.
2) We need to properly document values for the DITA XML Schemas that would
be used in an XML Catalog, much like the PUBLIC ID values for the DTDs
These should be documented so that DITA enabled XML Editors can use these
values for the xsi:noNamespaceSchemaLocation attribute where an XML
resolver can resolve the value to a local instance of the schemas. In most
cases, the resolver would use the namespace of the schemas as a unique
value as the key. Since the DITA schemas do not have XML Namepaces we
need another unique identifier for the schemas.
Kind regards,
Eric
We could use something like the URL location of the schemas at OASIS as the
unique identifier.