Опубликован: 24.01.2007 | Уровень: для всех | Доступ: платный
Лекция 4:

Добавление комментариев, инструкций по обработке и разделов CDATA

< Лекция 3 || Лекция 4: 123 || Лекция 5 >

Форма записи инструкции по обработке

Инструкция по обработке имеет следующую общую форму записи:

<?Кому инструкция ?>

Здесь Кому есть имя приложения, которому адресована инструкция. Допускается любое имя при соблюдении следующих правил:

  • имя должно начинаться с буквы или символа подчеркивания (_), после чего могут следовать или не следовать другие буквы, цифры, точки (.), тире (–) или символы подчеркивания (_);
  • имя xml, в любом сочетании строчных или прописных букв, зарезервировано ( xml строчными буквами используется в объявлении XML-документа, которое представляет собой разновидность инструкции по обработке).

Инструкция есть информация, передаваемая приложению. Она может состоять из любой последовательности символов, за исключением пары ?>, зарезервированной для обозначения окончания инструкции по обработке.

Как вы можете использовать инструкции по обработке

В зависимости от процессора, который будет прочитывать документ, вы можете использовать различные инструкции по обработке. Если вы используете в качестве XML-процессора Internet Explorer 5, у вас есть две основные возможности применения инструкций по обработке:

  • вы можете применять стандартные, зарезервированные инструкции, чтобы сообщить Internet Explorer 5, как отображать документ с использованием соответствующей таблицы стилей. Например, следующая инструкция по обработке предписывает Internet Explorer 5 использовать CSS-таблицу из файла Inventory01.css:
    <?xml-stylesheet type="text/css" href="Inventory01.css"?>
  • если вы пишете Web-сценарий для управления и отображения XML-документа, вы можете поместить в документ любые не зарезервированные инструкции по обработке, а ваша программа-сценарий будет считывать эти инструкции и выполнять определенные действия. Например, вы можете вставить в документ следующую инструкцию по обработке, сообщающую вашему сценарию уровень детализации при отображении:
    <?MyScript detail="2"?>

В "лекции 9" вы узнаете, как использовать сценарии для доступа к составляющим XML-документа, включая инструкции по обработке.

Куда вы можете поместить инструкции по обработке

Вы можете поместить инструкцию по обработке в любое место XML-документа вне других элементов разметки – т.е. вы можете помещать их аналогично комментариям: в пролог документа, после элемента Документ, либо внутри содержимого элемента. Ниже приведен XML-документ с правильно записанными инструкциями по обработке:

<?xml version="1.0" encoding="windows-1251" ?>
<!-- Далее следует инструкция по обработке внутри пролога: -->
<?xml-stylesheet type="text/css" href="Inventory01.css"?>
<INVENTORY>
	<BOOK>
		<!-- Это инструкция по обработке внутри содержимого элемента: -->
		<?ScriptA emphasize="yes" ?>
		<TITLE> The Adventures of Huckleberry Finn</TITLE>
		<AUTHOR>Mark Twain</AUTHOR>
		<BINDING>mass market paperback</BINDING>
		<PAGES>298</PAGES>
		<PRICE>$5.49</PRICE>
	</BOOK>
	<BOOK>
		<TITLE>Leaves of Grass</TITLE>
		<AUTHOR>Walt Whitman</AUTHOR>
		<BINDING>hardcover</BINDING>
		<PAGES>462</PAGES>
		<PRICE>$7.75</PRICE>
	</BOOK>
</INVENTORY>
<!-- Это инструкция по обработке после элемента Документ: -->
<?ScriptA Category="books" Style="formal" ?>

Вот пример инструкции по обработке, неверно помещенной внутрь элемента разметки:

<!-- Следующий элемент содержит НЕВЕРНУЮ инструкцию по обработке: -->
<BOOK <?ScriptA emphasize="yes" ?>  >
	<TITLE>Leaves of Grass</TITLE>
		<AUTHOR>Walt Whitman</AUTHOR>
		<BINDING>hardcover</BINDING>
		<PAGES>462</PAGES>
		<PRICE>$7.75</PRICE>
</BOOK>

Тем не менее, вы можете помещать инструкцию по обработке внутри определения типа документа (DTD) – несмотря на то, что DTD представляет собой форму разметки – если только она не находится внутри имеющегося в DTD другого элемента разметки (подробнее в "лекции 5" ).

Использование разделов CDATA

Внутри символьных данных в содержимом элемента, нельзя помещать символ левой угловой скобки (<) или знак амперсанда (&) (см. "лекцию 3" ). Одним из способов преодолеть это ограничение является использование ссылки на символ ( &#60; или &#38; ), либо на предопределенный общий примитив ( &lt; или &amp; ) (см. "лекцию 6" ). Однако в том случае, если вам требуется многократно вставлять символы < или &, использование ссылок неудобно и затрудняет восприятие данных. В этом случае проще поместить текст, содержащий такие символы, в раздел CDATA.

< Лекция 3 || Лекция 4: 123 || Лекция 5 >
Максим Попов
Максим Попов

Почему при использовании скриптов, приведенных в курсе Основы XML

лекция Лекция 8: 

Отображение XML-документов с использованием связывания данных

не происходит связывания XLM документа с HTML?

Отображаются пустые поля. Браузер IE11

Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Наталья Алмаева
Наталья Алмаева
Россия
Светлана Казьмина
Светлана Казьмина
Россия, Волгодонск