<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=XML_Tutorial%2FXML_Schema%2FRussian_Doll</id>
		<title>XML Tutorial/XML Schema/Russian Doll - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=XML_Tutorial%2FXML_Schema%2FRussian_Doll"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XML_Schema/Russian_Doll&amp;action=history"/>
		<updated>2026-04-04T22:09:46Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=XML_Tutorial/XML_Schema/Russian_Doll&amp;diff=10685&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XML_Schema/Russian_Doll&amp;diff=10685&amp;oldid=prev"/>
				<updated>2010-05-26T08:26:48Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 08:26, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=XML_Tutorial/XML_Schema/Russian_Doll&amp;diff=10684&amp;oldid=prev</id>
		<title> в 18:22, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XML_Schema/Russian_Doll&amp;diff=10684&amp;oldid=prev"/>
				<updated>2010-05-25T18:22:32Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== A book element of our library==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File:Data.xml&lt;br /&gt;
&amp;lt;book xmlns=&amp;quot;http://www.wbex.ru&amp;quot;&lt;br /&gt;
     identifier=&amp;quot;isbn-0836217462&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;isbn&amp;gt;0836217462&amp;lt;/isbn&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Java&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author-ref ref=&amp;quot;anotherRef&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;chapter-refs&amp;gt;&lt;br /&gt;
    ref&lt;br /&gt;
  &amp;lt;/chapter-refs&amp;gt;&lt;br /&gt;
&amp;lt;/book&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Schema.xsd&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xs:schema xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;br /&gt;
  targetNamespace=&amp;quot;http://www.wbex.ru&amp;quot; xmlns=&amp;quot;http://www.wbex.ru&amp;quot;&lt;br /&gt;
  elementFormDefault=&amp;quot;qualified&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;book&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;isbn&amp;quot; type=&amp;quot;xs:string&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;title&amp;quot; type=&amp;quot;xs:string&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;author-ref&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
            &amp;lt;xs:attribute name=&amp;quot;ref&amp;quot; type=&amp;quot;xs:string&amp;quot;&lt;br /&gt;
              use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
          &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
        &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;chapter-refs&amp;quot; type=&amp;quot;xs:string&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
      &amp;lt;xs:attribute name=&amp;quot;identifier&amp;quot; type=&amp;quot;xs:ID&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;lt;/xs:schema&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Adapting the structure of your document==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
The result is instance documents such as: &lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;library&amp;gt;&lt;br /&gt;
  &amp;lt;book id=&amp;quot;b1111111111&amp;quot; available=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;title lang=&amp;quot;en&amp;quot;&amp;gt;Java&amp;lt;/title&amp;gt;&lt;br /&gt;
    &amp;lt;isbn&amp;gt;1111111111&amp;lt;/isbn&amp;gt;&lt;br /&gt;
    &amp;lt;authors&amp;gt;&lt;br /&gt;
      &amp;lt;author id=&amp;quot;Client&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;start&amp;gt;1922-11-26&amp;lt;/start&amp;gt;&lt;br /&gt;
        &amp;lt;dead&amp;gt;2000-02-12&amp;lt;/dead&amp;gt;&lt;br /&gt;
        &amp;lt;name&amp;gt;James&amp;lt;/name&amp;gt;&lt;br /&gt;
      &amp;lt;/author&amp;gt;&lt;br /&gt;
    &amp;lt;/authors&amp;gt;&lt;br /&gt;
    &amp;lt;chapters&amp;gt;&lt;br /&gt;
      &amp;lt;chapter id=&amp;quot;PP&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;name&amp;gt;JButton&amp;lt;/name&amp;gt;&lt;br /&gt;
        &amp;lt;qualification&amp;gt;Yes&amp;lt;/qualification&amp;gt;&lt;br /&gt;
        &amp;lt;start&amp;gt;2005-08-22&amp;lt;/start&amp;gt;&lt;br /&gt;
      &amp;lt;/chapter&amp;gt;&lt;br /&gt;
      &amp;lt;chapter id=&amp;quot;JTable&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;start&amp;gt;2001-10-04&amp;lt;/start&amp;gt;&lt;br /&gt;
        &amp;lt;name&amp;gt;JTable&amp;lt;/name&amp;gt;&lt;br /&gt;
        &amp;lt;qualification&amp;gt;Yes&amp;lt;/qualification&amp;gt;&lt;br /&gt;
      &amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;/chapters&amp;gt;&lt;br /&gt;
  &amp;lt;/book&amp;gt;&lt;br /&gt;
&amp;lt;/library&amp;gt;&lt;br /&gt;
This instance document defined by a full schema, which could be: &lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xs:schema xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;name&amp;quot; type=&amp;quot;xs:token&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;qualification&amp;quot; type=&amp;quot;xs:token&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;start&amp;quot; type=&amp;quot;xs:date&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;dead&amp;quot; type=&amp;quot;xs:date&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;isbn&amp;quot; type=&amp;quot;xs:NMTOKEN&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:ID&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:attribute name=&amp;quot;available&amp;quot; type=&amp;quot;xs:boolean&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:attribute name=&amp;quot;lang&amp;quot; type=&amp;quot;xs:language&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;title&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:simpleContent&amp;gt;&lt;br /&gt;
        &amp;lt;xs:extension base=&amp;quot;xs:token&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xs:attribute ref=&amp;quot;lang&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:simpleContent&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;library&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;book&amp;quot; maxOccurs=&amp;quot;unbounded&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;authors&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;author&amp;quot; minOccurs=&amp;quot;0&amp;quot;&lt;br /&gt;
          maxOccurs=&amp;quot;unbounded&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;author&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:all&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;name&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;start&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;dead&amp;quot; minOccurs=&amp;quot;0&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:all&amp;gt;&lt;br /&gt;
      &amp;lt;xs:attribute ref=&amp;quot;id&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;book&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:all&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;isbn&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;title&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;authors&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;chapters&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:all&amp;gt;&lt;br /&gt;
      &amp;lt;xs:attribute ref=&amp;quot;id&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;xs:attribute ref=&amp;quot;available&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;chapters&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;chapter&amp;quot; minOccurs=&amp;quot;0&amp;quot;&lt;br /&gt;
          maxOccurs=&amp;quot;unbounded&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;chapter&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:all&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;name&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;start&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element ref=&amp;quot;qualification&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:all&amp;gt;&lt;br /&gt;
      &amp;lt;xs:attribute ref=&amp;quot;id&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;lt;/xs:schema&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Russian Doll and Object-Oriented Design==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
The style of defining elements and attributes locally is often called the Russian doll design.&lt;br /&gt;
Since the definition of each element is embedded in the definition of its parent.  &lt;br /&gt;
Objects are created locally where they are needed as opposed to being created globally and cloned when we need them.&lt;br /&gt;
&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;  &lt;br /&gt;
&amp;lt;library&amp;gt; &lt;br /&gt;
  &amp;lt;book id=&amp;quot;b01111111111&amp;quot; available=&amp;quot;true&amp;quot;&amp;gt; &lt;br /&gt;
    &amp;lt;isbn&amp;gt;1111111111&amp;lt;/isbn&amp;gt; &lt;br /&gt;
    &amp;lt;title lang=&amp;quot;en&amp;quot;&amp;gt;Java&amp;lt;/title&amp;gt; &lt;br /&gt;
    &amp;lt;author id=&amp;quot;CMS&amp;quot;&amp;gt; &lt;br /&gt;
      &amp;lt;name&amp;gt;Swing&amp;lt;/name&amp;gt; &lt;br /&gt;
      &amp;lt;start&amp;gt;1996-11-26&amp;lt;/start&amp;gt; &lt;br /&gt;
      &amp;lt;dead&amp;gt;2008-02-12&amp;lt;/dead&amp;gt; &lt;br /&gt;
    &amp;lt;/author&amp;gt; &lt;br /&gt;
    &amp;lt;chapter id=&amp;quot;PP&amp;quot;&amp;gt; &lt;br /&gt;
      &amp;lt;name&amp;gt;JButton&amp;lt;/name&amp;gt; &lt;br /&gt;
      &amp;lt;start&amp;gt;2001-08-22&amp;lt;/start&amp;gt; &lt;br /&gt;
      &amp;lt;qualification&amp;gt;Yes&amp;lt;/qualification&amp;gt; &lt;br /&gt;
    &amp;lt;/chapter&amp;gt; &lt;br /&gt;
  &amp;lt;/book&amp;gt; &lt;br /&gt;
&amp;lt;/library&amp;gt; &lt;br /&gt;
File: Schema.xsd&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt; &lt;br /&gt;
&amp;lt;xs:schema xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt; &lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;library&amp;quot;&amp;gt; &lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt; &lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt; &lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;book&amp;quot; maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt; &lt;br /&gt;
          &amp;lt;xs:complexType&amp;gt; &lt;br /&gt;
            &amp;lt;xs:sequence&amp;gt; &lt;br /&gt;
              &amp;lt;xs:element name=&amp;quot;isbn&amp;quot; type=&amp;quot;xs:integer&amp;quot;/&amp;gt; &lt;br /&gt;
              &amp;lt;xs:element name=&amp;quot;title&amp;quot;&amp;gt; &lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:simpleContent&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:extension base=&amp;quot;xs:string&amp;quot;&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:attribute name=&amp;quot;lang&amp;quot; type=&amp;quot;xs:language&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;/xs:extension&amp;gt; &lt;br /&gt;
                 &amp;lt;/xs:simpleContent&amp;gt; &lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt; &lt;br /&gt;
              &amp;lt;/xs:element&amp;gt;  &lt;br /&gt;
              &amp;lt;xs:element name=&amp;quot;author&amp;quot; minOccurs=&amp;quot;0&amp;quot; &lt;br /&gt;
                maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt; &lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:sequence&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:element name=&amp;quot;name&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:element name=&amp;quot;start&amp;quot; type=&amp;quot;xs:date&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:element name=&amp;quot;dead&amp;quot; type=&amp;quot;xs:date&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;/xs:sequence&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:ID&amp;quot;/&amp;gt; &lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt; &lt;br /&gt;
              &amp;lt;/xs:element&amp;gt;  &lt;br /&gt;
              &amp;lt;xs:element name=&amp;quot;chapter&amp;quot; minOccurs=&amp;quot;0&amp;quot; &lt;br /&gt;
                maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt; &lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:sequence&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:element name=&amp;quot;name&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:element name=&amp;quot;start&amp;quot; type=&amp;quot;xs:date&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:element name=&amp;quot;qualification&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt; &lt;br /&gt;
                 &amp;lt;/xs:sequence&amp;gt; &lt;br /&gt;
                 &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:ID&amp;quot;/&amp;gt; &lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt; &lt;br /&gt;
              &amp;lt;/xs:element&amp;gt; &lt;br /&gt;
            &amp;lt;/xs:sequence&amp;gt; &lt;br /&gt;
            &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:ID&amp;quot;/&amp;gt; &lt;br /&gt;
            &amp;lt;xs:attribute name=&amp;quot;available&amp;quot; type=&amp;quot;xs:boolean&amp;quot;/&amp;gt; &lt;br /&gt;
          &amp;lt;/xs:complexType&amp;gt; &lt;br /&gt;
        &amp;lt;/xs:element&amp;gt; &lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt; &lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt; &lt;br /&gt;
  &amp;lt;/xs:element&amp;gt; &lt;br /&gt;
&amp;lt;/xs:schema&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Russian Doll design nest the local element declaration within other schema component==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;xsd:schema&lt;br /&gt;
  xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;br /&gt;
  elementFormDefault=&amp;quot;qualified&amp;quot;&lt;br /&gt;
  targetNamespace=&amp;quot;http://www.wbex.ru/namespaces/pub&amp;quot;&lt;br /&gt;
  xmlns=&amp;quot;http://www.wbex.ru/namespaces/pub&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;xsd:element name=&amp;quot;publications&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
   &amp;lt;xsd:sequence&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:element name=&amp;quot;book&amp;quot; maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt;&lt;br /&gt;
     &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:sequence&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:element name=&amp;quot;title&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:element name=&amp;quot;author&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:element name=&amp;quot;description&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:sequence&amp;gt;&lt;br /&gt;
     &amp;lt;xsd:attribute name=&amp;quot;isbn&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
   &amp;lt;/xsd:sequence&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:schema&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Russian doll type element==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;bk:Books xmlns:bk=&amp;quot;http://www.wbex.ru&amp;quot;&lt;br /&gt;
           xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&lt;br /&gt;
           xsi:schemaLocation=&lt;br /&gt;
                          &amp;quot;http://www.wbex.ru&lt;br /&gt;
                           Books.xsd&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;Book&amp;gt;&lt;br /&gt;
                &amp;lt;Title&amp;gt;title 1&amp;lt;/Title&amp;gt;&lt;br /&gt;
                &amp;lt;Author&amp;gt;author 1&amp;lt;/Author&amp;gt;&lt;br /&gt;
                &amp;lt;Date&amp;gt;1998&amp;lt;/Date&amp;gt;&lt;br /&gt;
                &amp;lt;ISBN&amp;gt;1-11111-111-1&amp;lt;/ISBN&amp;gt;&lt;br /&gt;
                &amp;lt;Publisher&amp;gt;publisher 1&amp;lt;/Publisher&amp;gt;&lt;br /&gt;
        &amp;lt;/Book&amp;gt;&lt;br /&gt;
        &amp;lt;Book&amp;gt;&lt;br /&gt;
                &amp;lt;Title&amp;gt;title 2&amp;lt;/Title&amp;gt;&lt;br /&gt;
                &amp;lt;Author&amp;gt;author 2&amp;lt;/Author&amp;gt;&lt;br /&gt;
                &amp;lt;Date&amp;gt;1977&amp;lt;/Date&amp;gt;&lt;br /&gt;
                &amp;lt;ISBN&amp;gt;2-222-22222-2&amp;lt;/ISBN&amp;gt;&lt;br /&gt;
                &amp;lt;Publisher&amp;gt;publisher 2&amp;lt;/Publisher&amp;gt;&lt;br /&gt;
        &amp;lt;/Book&amp;gt;&lt;br /&gt;
&amp;lt;/bk:Books&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Books.xsd&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsd:schema xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;br /&gt;
            targetNamespace=&amp;quot;http://www.wbex.ru&amp;quot;&lt;br /&gt;
            xmlns=&amp;quot;http://www.wbex.ru&amp;quot;&lt;br /&gt;
            elementFormDefault=&amp;quot;unqualified&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:element name=&amp;quot;Books&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
            &amp;lt;xsd:sequence&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;Book&amp;quot; maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:sequence&amp;gt;&lt;br /&gt;
                            &amp;lt;xsd:element name=&amp;quot;Title&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
                            &amp;lt;xsd:element name=&amp;quot;Author&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
                            &amp;lt;xsd:element name=&amp;quot;Date&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
                            &amp;lt;xsd:element name=&amp;quot;ISBN&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
                            &amp;lt;xsd:element name=&amp;quot;Publisher&amp;quot; type=&amp;quot;xsd:string&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:sequence&amp;gt;&lt;br /&gt;
                    &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
            &amp;lt;/xsd:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:schema&amp;gt;&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>