Re: Add import elements to a schema with no change of functionality?
On 15/12/2011 10:40, Costello, Roger L. wrote:
> Hi Folks,
>
> Consider a schema, S1, with targetNamespace, tns1.
>
> Schema S2 has targetNamespace tns2, where tns1 is not equal to tns2.
Schemas do not have a target namespace. I think you are referring to
schema documents.
>
> And so forth.
>
> S1 imports S2 which imports S3 which ...
>
> There are N schemas.
No, there is one schema. There are N schema documents.
>
> S1 has only one import element -- it imports S2.
>
> Suppose I add to S1 import elements to S3, S4, ..., Sn.
If S1 was already a valid schema document, then it contained no
references to components defined in S3, S4, etc, and therefore the new
import declarations are redundant, and therefore the schema constructed
from this collection of schema documents is not affected. (It's very
much the same as adding an "import" in a Java source file for a class or
package that isn't then referenced from the code.)
However, the schema construction model is not defined very formally, and
many aspects are implementation-defined, so your mileage may vary.
Michael Kay
Saxonica