How abstract components are created when reading a schema – an animation in 12 slides -- schemas that use <include> and <import>

- July 26, 2002 5:00pm

  Parse of a top level schema document.

  - <xs:schema targetNamespace=“t1“ xmlns:xs=“http://www.w3.org/2001/XMLSchema”>
  - <xs:include schemaLocation=“s3.xsd”/>
  - <xs:import namespace=“t2” schemaLocation=“s2.xsd”/>
  - <xs:element name=“t1e1” type=“xs:string”/>
  - </xs:schema>
  - s2.xsd:
  - <xs:schema targetNamespace=“t2” xmlns:xs=“http://www.w3.org/2001/XMLSchema”>
  - <xs:element name=“t2e1” type=“xs:string”/>
  - </xs:schema>
  - s3.xsd:
  - <xs:schema targetNamespace=“t1” xmlns:xs=“http://www.w3.org/2001/XMLSchema”>
  - <xs:element name=“t1e2” type=“xs:string”/>
  - </xs:schema>

  Parse of s1 <xs:schema targetNamespace=“t1”>

  Parse of s1 <xs:include schemaLocation=“s3.xsd”>

  Parse of s3 <xs:schema targetNamespace=“t1”>

  Parse of s3 <xs:element name=“t1e2” type=“xs:string”/>

  Parse of s3 </xs:schema>

  Parse of s1 <xs:import namespace=“t2” schemaLocation=“s2.xsd”/>

  Parse of s2 <xs:schema targetNamespace=“t2”/>

  Parse of s2 <xs:element name=“t2e1” type=../>

  Parse of s2 </xs:schema>

  Parse of s1 <xs:element name=“t1e1”../>

  Parse of s1 </xs:schema>