KnigaRead.com/

Андрей Попов - Windows Script Host для Windows 2000/XP

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Андрей Попов, "Windows Script Host для Windows 2000/XP" бесплатно, без регистрации.
Перейти на страницу:

□ в заголовке документа с помощью специальных тегов помещается дополнительная информация (используемый язык разметки, его версия и т.д.);

□ каждый открывающий тег, который определяет область данных, должен иметь парный закрывающий тег (в HTML некоторые закрывающие теги можно опускать);

□ в XML, в отличие от HTML, учитывается регистр символов;

□ все значения атрибутов, используемых в определении тегов, должны быть заключены в кавычки;

□ вложенность элементов в документе XML строго контролируется.

Рассмотрим теперь структуру и синтаксис WS-файлов, использующих схему WS XML.

Схема WS XML

Синтаксис элементов, составляющих структуру WS-файла, в общем виде можно представить следующим образом:

<element [attribute1="value1" [attribute2="value2" ... ]]>

 Содержимое (content)

</element>

Открывающий тег элемента состоит из следующих компонентов:

□ открывающей угловой скобки "<";

□ названия элемента, написанного строчными буквами;

□ необязательного списка атрибутов со значениями (названия атрибутов пишутся строчными буквами, значения заключаются в двойные кавычки);

□ закрывающей угловой скобки ">".

Например, тег начала элемента

<script language="JScript">

имеет имя тега script и определяет атрибут language со значением "JScript". Атрибуты предоставляют дополнительную информацию о соответствующем теге или последующем содержимом элемента. В нашем примере атрибут указывает на то, что содержимым элемента является текст сценария на языке JScript.

Закрывающий тег элемента состоит из следующих компонентов:

□ открывающей угловой скобки "<";

□ символа "/";

□ названия элемента, написанного строчными буквами;

□ закрывающей угловой скобки ">".

Таким образом, тег конца элемента не имеет атрибутов, например, </script>.

Если у элемента нет содержимого, то он имеет следующий вид:

<element [attribute1="value1" [attribute2="value2" ... ]]/>

To есть в этом случае элемент состоит из следующих компонентов:

□ открывающей угловой скобки "<";

□ названия элемента, написанного строчными буквами;

□ необязательного списка атрибутов со значениями (названия атрибутов пишутся строчными буквами, значения заключаются в двойные кавычки);

□ символа"/";

□ закрывающей угловой скобки ">".

Пример такого элемента:

<script language="JScript" src="tools.js"/>

Представленная в листинге 3.1 схема WS XML — это модель данных, определяющая элементы и соответствующие атрибуты, а также связи элементов друг с другом и возможную последовательность появления элементов. Также эта схема может задавать значения атрибутов по умолчанию.

Листинг 3.1. Схема WS XML

<?xml version="1.0" standalone="yes"?>

<package>

В <job [id="JobID"]>

В  <?job debug="true|false"?>

В В <runtime>

В В В <named name="NamedName" helpstring="HelpString" type="string|boolean|simple" required="true|false" />

В В  <unnamed name="UnnamedName" helpstring="HelpString" many="true|false" required="true|false" />

   <description> Описание сценария </description>

   <example> Пример запуска сценария </example>

В В </runtime>

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

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

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

В В <script language="language" [src="strFileURL"]>

В В <script language="language" >

В В В <![CDATA[

    Код сценария

В В  ]]>

В  </scriipt>

В </job>

 Другие задания

</package>

Таким образом, из листинга 3.1 видно, что:

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

□ элемент <job> может содержать один или несколько элементов <runtime>, <resource>, <object>, <reference> или <script>;

□ элемент <runtime> может содержать один или несколько элементов <named> и <unnamed>, а также элементы <description> и <example>.

Обязательными для создания корректного сценария являются только элементы <job> и <script>. Сам код сценария всегда располагается внутри элемента <script>.

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

Элементы WS-файла

В WS-файл можно вставлять комментарии независимо от разметки XML. Сделать это можно двумя способами: с помощью элемента <!-- --> или элемента <comment>. Например:

<!-- Первый комментарий -->

или

<comment>

Второй комментарий

</comment>

Элементы <?xml?> и <![CDATA[]]>

Эти элементы являются стандартными для разметки W3C XML 1.0. В сценариях WSH они определяют способ обработки WS-файла. Всего существует два режима обработки сценария: нестрогий (loose) и строгий (strict).

При нестрогой обработке (элемент <?xml?> отсутствует) не предполагается выполнение всех требований стандарта XML. Например, не требуется различать строчные и заглавные буквы и заключать значения атрибутов в двойные кавычки. Кроме этого, в процессе нестрогой обработки считается, что все содержимое между тегами <script> и </script> является исходным кодом сценария. Однако при таком подходе может произойти ошибочная интерпретация вложенных в сценарий зарезервированных для XML символов или слов как разметки XML. Например, имеющиеся в коде сценария знаки "меньше" (<) и "больше" (>) могут привести к прекращению разбора и выполнения сценария.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*