Создание XSD-схемы в среде Visual Studio .NET
Выше мы получили XSD-схему документа XMLTourFull.xml. Итак, методика следующая: создаем XML-документ, затем выбираем "Create Schema" - среда сама генерирует готовую схему. Но как быть, если нам совсем не нужен XML-документ, а нужна XSD-схема сама по себе? Создадим точно такую же схему, как и XMLTourFull.xsd, только на этот раз без всякой привязки к документу. Запускаем студию, нажимаем Ctrl+N и в появившемся окне выбираем XML \ Schema (см. рис. 11.3). Сохраним сразу документ, задав ему название "CreateXSDSchema.xsd". Для добавления элемента можно воспользоваться одним из следующих способов: перетащить из окна Toolbox элемент управления, который так и называется - element (рис. 11.7, А); в главном меню перейти "Schema \ Add \ New element" (рис. 11.7, Б); выбрать пункт контекстного меню "Add \ New element" (рис. 11.7, В ).
увеличить изображение
Рис. 11.7. Различные способы создания нового элемента
Далее нам предстоит заполнить элементы полями, как это показано в таблице 11.6. В результате получится четыре элемента (рис. 11.8):
увеличить изображение
Рис. 11.8. Готовые отдельные элементы
Для создания вложенной структуры берем элемент SEASON и перетаскиваем его на элемент TOUR. В элементе TOUR появляется дополнительное поле SEASON (SEASON), отражающее связь, и значок с линией - щелкнув на него, можно собрать структуру (рис. 11.9).
Рис. 11.9. Создание вложенной структуры
Аналогичным образом добавляем элементы PASS и PAYMENT. Переходим в режим XML и убеждаемся в том, что созданный код практически одинаков с кодом документа XMLTourFull.xsd - в последнем имеются только дополнительные атрибуты, например minOccurs="0". При необходимости их можно добавить вручную.
Мы рассмотрели создание простейшей XSD-схемы. Графическое конструирование более сложных XSD-схем не будет отличаться принципиально - вместо написания тегов, приведенных в таблицах 11.2-11.4, на рабочую область просто переносится и настраивается соответствующий элемент.
В программном обеспечении к курсу вы найдете файл CreateXSD Schema.xsd в папке XSD (Code\Glava5\XSD).