Листинг 1. Пример документа формата RSS 2.0
Типы данных схемы Все типы данных схемы являются наследниками anyType. К ним относятся простые и сложные типы данных. Простые типы также можно разделить на встроенные примитивные типы и встроенные производные типы. Пример:
XSLT По существу, XSLT представляет собой систему объявлений событий, которые должны произойти при встрече в XML-документе определенных типов элементов. XSLT не компилируется; вместо этого XSLT совместно с входным XML-документом интерпретируется процессором таблиц стилей. Его использование можно представить в виде математической функции: XSLT(XML) = выход.
Преобразования в Web-браузерах Для просмотра в браузерах XML-документов требуется директива, подобная следующей, размещаемая в прологе документа сразу после тега <?xml version="1.0"?> в начале входного XML-документа.
Корневой элемент Корневым элементом или элементом верхнего уровня любого XSL-преобразования, под которым находятся все другие дочерние узлы, является элемент xsl:stylesheet или xsl:transform. Можно использовать любой из этих элементов, они выполняют одинаковую функцию. Можно записать эти элементы в следующем виде:
или:
В конце документа необходимо закрыть эти теги </xsl:stylesheet или </xsl:transform> соответственно. Примеры применения шаблонов Элемент xsl:template включает набор правил, применяемых к определенным элементам во входном XML-документе. Каждый элемент xsl:stylesheet или xsl:transform должен иметь хотя бы один элемент xsl:template. Богатые возможности XSLT-программирования обусловлены использованием различных шаблонов в качестве логических модулей, каждый из которых имеет собственное назначение. Элементы шаблона можно переключать с помощью атрибута match или с помощью непосредственного вызова в атрибуте name. Использовать атрибут match довольно просто. При обнаружении шаблона, указанного значением атрибута match, выполняется правило. Например, для индикации каждого элемента dvd, обнаруженного в документе, строкой "Another DVD", можно использовать следующее:
Вывод результата этого преобразования выглядит примерно так:
Для каждого элемента dvd во входном документе имеет одно вхождение правила шаблона. Можно иметь шаблоны, соответствующие другим нужным элементам:
Значение атрибута select в теге <xsl:value-of/> в обоих случаях представляет собой шаблон, предоставляющий текстовое значение проверяемого элемента. Другой способ задания узла контекста заключается в применении тегов xsl:apply-templates и xsl:for-each. Для вывода только значений элементов title и price необходимо правило шаблона:
Можно добавлять HTML-форматирование (тег <p>). Вывод должен выглядеть примерно так:
Основы безопасности в XML Средства обеспечения безопасности XML основываются на шифровании данных в документах XML. Шифрование можно применять к отдельному элементу, группе элементов или всему документу XML. Во многих случаях вам может потребоваться шифрование только части документа XML, поскольку один и тот же документ может использоваться в разных приложениях. Вам необходимо обеспечить возможность обработки данных одними приложениями, предотвратив в то же время возможность чтения критически важных данных другими приложениями. Зашифрованные данные хранятся в элементе EncryptedData.
Пример обеспечения безопасности в XML Рассмотрим приведенный ниже документ XML, в котором содержится информация о деловой операции. Информация включает в себя:
Вам может понадобиться обрабатывать этот документ с помощью различных приложений, которым нет необходимости знать всю содержащуюся в нем информацию. Например, отделу доставки необходима только информация, содержащаяся в элементе Address, и нет нужды знать конфиденциальную информацию о кредитной карте. В этой ситуации можно зашифровать информацию о кредитной карте с помощью элемента EncryptedData. После этого элемент CreditCard заменяется элементом EncryptedData:
После изменения структура приведенного выше документа XML принимает следующий вид:
RSS — семейство XML-форматов, предназначенных для описания лент новостей, анонсов статей, изменений в блогах и т. п. Информация из различных источников, представленная в формате RSS, может быть собрана, обработана и представлена пользователю в удобном для него виде специальными программами-агрегаторами.
Допустим, на вашем сайте есть материалы, которыми вы хотите поделиться с целевой аудиторией. Думаете, существенное число пользователей, узнавшее о вашем сайте и материалах, размещённых на нём, будет возвращаться каждый день, чтобы проверить обновления? Вероятно, нет. Посещаете ли вы для проверки обновлений сайты, наиболее часто используемые вами, каждый день? Опять же, нет. Вот здесь и приходит на помощь RSS. Для ваших пользователей RSS станет существенной выгодой, особенно если они оценивают мнения или новости, размещенные на вашем сайте. Даже не посещая часто ваш сайт, они всегда будут знать, что вы обновили старые материалы сайта или добавили новые. Это позволит пользователям экономить время и усилия и одновременно не пропустить обновления! Создание содержания не проблема, в случае если на вашем сайте вы используете RSS-ленты для обеспечения агрегирования содержания. Путём извлечения данных из ленты можно добиться наполнения сайта большим числом различных материалов быстро.
В разных версиях аббревиатура RSS имела разные расшифровки: · Rich Site Summary (RSS 0.9x) — обогащённая сводка сайта; · RDF Site Summary (RSS 0.9 и 1.0) — сводка сайта с применением инфраструктуры описания ресурсов; · Really Simple Syndication (RSS 2.x) — очень простое приобретение информации.
RSS ленты читаются с помощью программ-агрегаторов или сайтов-агрегаторов,то же, что и программа-агрегатор, только в режиме On-Line. Плюс в том, что не привязывает вас к определенному компьютеру.
Если вы видите на сайте иконку, изображенную на рисунке 1, можете быть уверены: этот сайт имеет RSS-ленту. Эта иконка является стандартом де-факто, обозначающим возможность использования RSS для просмотра обновлений на сайте. Дуговые линии означают радиоволны, символ широковещательной природы RSS-ленты.
Рисунок 1. Стандартная иконка RSS
RSS-каналы Что представляют собой файлы RSS-каналов? Файлы RSS-каналов представляют собой метаданные. Как правило, файл RSS-канала содержит четыре элемента основного типа: канал, изображение, позиции и текстовый ввод. Эти элементы легко идентифицируются и кодируются (см. пример на листинге 1). В примере элемента файла RSS 0.91 на листинге 1 содержится три четко выделенных части: название, ссылка и описание.
В заголовке публикуются коллекции в результате объединения файлов RSS. HTML, как правило, используется для отображения указанного названия в виде заголовка. Название также обычно служит в кaчестве ссылки, используя URL-адрес, указанный в элементе link. Наконец, описание обычно представлено в виде краткого содержания статьи, расположенной под заголовком.
Создание файлов RSS-каналов RSS-канал представляет собой XML-файл. Поэтому все RSS-документы начинаются с объявления XML 1.0, затем идет объявление типа документа RSS (см. листинг 2).
В первой строке объявляется XML-документ. Во второй строке находится объявление DTD, определяющее, что данный XML-файл основан на определении типа документа (DTD) RSS 0.91 компании Netscape. Наконец, начало контента файла RSS-канала отмечается корневым элементом, все содержимое находится между тегами <rss version "0.91"> и </rss>.
Четыре основных раздела файла RSS-канала Четыре основных раздела файла RSS-канала находятся после корневого элемента. К ним относятся разделы channel, image, item и text input. На практике элементы channel и item необходимы для любого рабочего файла RSS-канала, элементы image и text input являются дополнительными. Раздел channel Элемент channel содержит метаданные, описывающие собственно канал: что он собой представляет, и кто его создал. Раздел channel является необходимым элементом и включает имя канала, его описание, язык и URL-адрес. Как правило, URL-адрес используется для указания на источник информации канала.
В листинге 3 показано начало элемента channel. В данной части элемента channel определяется канал и приводятся сведения о канале.
Элемент channel содержит остальные теги канала, описывающие канал и позволяющие отображать его содержимое в HTML. Тег title можно рассматривать как ссылку на заголовок со следующим описанием. Определение языка канала позволяет накопителям фильтровать новостные каналы и предоставляет программе визуализации информацию, необходимую для правильного отображения языка. Тег </channnel> размещается после всех элементов канала и используется как закрывающий тег. RSS соответствует спецификациям XML, поэтому раздел element должен быть оформлен правильно; для него необходимо использовать закрывающий тег. Раздел image Элемент image не является обязательным и обычно используется для включения логотипа поставщика канала. Размер изображения по умолчанию составляет 88 пикселей в ширину и 31 пиксел в высоту, хотя логотип можно увеличить до размера 144 на 400 пикселей. Далее показан пример элемента image:
Теги элемента title, URL, link, width и height позволяют средствам визуализации преобразовать файл в HTML-формат. Тег title обычно используется для текста изображения ALT. По возможности не увеличивайте изображение больше размера 88 x 31 пиксел, потому что многие средства визуализации преобразуют каналы в таблицы фиксированной ширины менее 100 пиксел. Большие графические изображения могут привести к нежелательному разрыву таблиц, или изображение не будет показываться вообще. Элемент item Элемент item является самым важным элементом канала и обычно составляет динамическую часть RSS-канала. Если элементы channel, image и text input определяют идентичность канала и не изменяются в течение длительных периодов времени, элементы канала item отображаются как новостные заголовки, ценность канала зависит от их частого изменения. Далее показан пример элемента канала item:
Для канала можно использовать до 15 элементов item. Это разумное ограничение, так как каналы в основном используются для распространения последнего Web-контента. Длина названий не должна превышать 100 символов, длина описаний - 500 символов. Название элемента item обычно отображается как заголовок со ссылкой на всю статью, URL-адрес которой определяется тегом link. Описание элемента item обычно используется для краткого обзора содержимого статьи или для комментария к статье. Практически вся прелесть RSS-формата заключается в элементе item. Как видно на примере выше, разработчики легко могут использовать элементы item для определения, а пользователи - для чтения. Элемент text input Область text input является дополнительным элементом, для канала можно использовать только один элемент. Обычно элемент text input отображается в виде HTML-формы и позволяет пользователям реагировать на канал. Эту функцию можно использовать для разрешения пользователям подписываться на информационный бюллетень или выполнить поиск по сайту. Далее показан пример элемента text input:
Тег title обычно отображается в виде текста на кнопке отправки формы, тег description - в виде текста до или над полем ввода. Тег name элемента text input отправляется вместе с содержимым текстового поля при нажатии кнопки Submit. Это четыре основных элемента файла RSS-канала. После добавления элементов image, item и text input на забудьте добавить закрывающий тег </channel> и тег закрытия RSS-канала </rss>. Рассматриваемая спецификация RSS 1.0 включает модули, позволяющие расширить RSS-канал для поставки дополнительной информации без необходимости переписывать спецификацию. Например, можно написать модуль для добавления к каналу мультимедийных данных для клиентов с широкополосным доступом, тогда как для обычных клиентов по-прежнему будут отображаться заголовки и описания. Можно изучить модули подробней и использовать их преимущества после принятия спецификации 1.0.
Приложения RSS Существует множество приложений, большинство которых бесплатны и имеют возможность чтения и агрегирования RSS-лент. Возможность агрегирования позволяет пользователям проводить дальнейшую детализацию получаемых новостей по их количеству и природе. Стандартный формат RSS 2.0 Стандарт RSS описывает и содержит наполнение лент, которые могут быть созданы из различных источников для определения интернет-документов и создания в очень общем смысле списков ссылок и их описаний. Листинг 1. Пример документа формата RSS 2.0
Первый порожденный объект XML-форматированного документа - определение <channel>. Канал является простой собственной лентой ассоциированной с ним информации. Множество RSS-лент имеет только один канал, но вы можете использовать несколько, возможно, для этого вам придётся использовать разделительный фильтр. Объекты title, link и description требуются канальным объектом. Они задают базовые описания ленты. Дополнительные объекты: language, copyright, managingEditor, webMaster, pubDate, lastBuildDate, category, generator, docs, cloud, ttl, image, rating, textInput, skipHours и skipDays. Канал может содержать бесконечное количество элементов. Все элементы элемента ITEM необязательны, однако для успешной проверки правильности требуется хотя бы один заголовок или описание.
Читайте также: b) Пример классического. Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|