[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Associating schema with document
One capability that DTDs have that RELAX NG does not is the ability for an instance to identify the schema that should be used to validate it. Considering just RELAX NG itself I think it makes good sense to omit this. But from the point of view of the DTD compatibility spec I think it is a problem. There is a basic assumption built in to many technologies and programs that they can get an infoset, complete with default attribute values and ID types, just from the URL of the XML instance. For example, with XPointer, you have the URL and you have the ID. Without some way for the instance to identify the RELAX NG schema to get the ID-types from, there's no way a RELAX NG schema can substitute for a DTD in this case. Another example is XSLT and the document() function. For the main input document, the RELAX NG schema can just be an additional option when invoking the XSLT processor; but for other input documents accessed via a document() function, there's no way to know which RELAX schema to use, and it will very often be the case that it's not appropriate to use the same schema for all inputs to an XSLT transformation. Thus I believe the compatibility spec should provide a way for an instance to indicate what RELAX NG schema should be used for compatibility processing. The obvious mechanism for this would be a processing instruction in the prolog. James
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC