Схема WSC XML

Схема WSC XML

Ранее в главе 3 отмечалось, что объектная модель, которая используется при создании многозадачных сценариев (WS-файлов), была в основном позаимствована из схемы WSC XML, поэтому многие элементы WSC-файлов окажутся вам знакомыми.

В листинге 10.1 приводится несколько упрощенная (некоторые необязательные атрибуты у XML-элементов опущены) схема, поясняющая иерархию и порядок появления элементов в WSC-файле.

Листинг 10.1. Упрощенная схема WSC XML

<?xml version="1.0" encoding="windows-1251"?>

<package>

 <component [id="ComponentID"]>

  <registration progid="ProgID" class id="GUID" [description="Description"] [version="Version"]>

   <script>

Сценарии подключения и отключения

   </script>

  </registration>

  <public>

   <property name="PropertyName">

    <get [internalName="getFunctionName"]/>

    <put [internalName="getFunctionName"]/>

   </property>

   <method name= "MethodName" [internalName="FunctionName"]>

    <parameter name="ParameterID"/>

   </method>

   <event name="Name" [dispid="DispID"]/>

  </public>

  <resource id="ResourceID"> Строка или число </resource>

  <object id="ObjID" [classld="clsid:GUID"|progid="ProgID"]/>

  <reference [object="ProgiD"|guid="typelibGUID"][version="version"]/>

  <script language="language">

   <![CDATA[

    Код сценария

   ]]>

  </script>

 </component>

 Другие компоненты

</package>

Несколько замечаний относительно количества вхождений различных XML-элементов из листинга 10.1 в WSC-файл:

? элемент <package> может содержать один или несколько элементов <component>;

? элемент <component> должен содержать один элемент <registration> и один элемент <public>;

? элемент <public> может содержать один или несколько элементов <property>, <method> или <event>.

Обязательными для создания компонента-сценария являются элементы <component>, <registration>, <public> и <script>.

Опишем теперь элементы XML, использующиеся в WSC-файлах, более подробно.