From: David C. <dc...@st...> - 2007-05-18 12:52:19
|
Stefan Bodewig wrote: > Hi, > > I've committed changes that treat xsi:schemaLocation and > xsi:noNamespaceSchemaLocation as attributes of a special kind. Just > as we do for DOCTYPE declarations with different SYSTEM ids, trunk now > flags differences in them as a special kind (well two kinds) of > Difference which is recoverable. > > One thing to be careful of if you are doing this for differences, is that an implementation is free to ignore the xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes, and supply it's own schema for use in validation. > I haven't made uo my mind on xsi:type and xsi:nil. In particular for > nil I first need to understand the semantics more deeply before I can > decide whether the current handling (it is an attribute like any other > attribute) makes sense or not. > > I would definitely not treat these as special attributes. Especially, xsi:type (which many B2B Standards, i.e. Core Components based standards are saying not to use). xsi:type can be used to override and substitute another complexType definition in place of the one that was originally specified. For many B2B situations, this allows deviation from the standard, and may allow for a completely different structure showing up than what has been defined. > These changes probably warrant a second beta before the final release. > > Any possibility of setting it so that how these are treated is configurable? |