Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
web2.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
157.49 Кб
Скачать
  1. Робота з xml

і Абревіатура XML розшифровується як Extensible Markup Language, в перекладі "розширювана мова розмітки". Як і мова HTML, він є підмножиною SGML (Standard General Markup Language) - "дідуся" мову розмітки. Ми вже не раз стикалися з форматом XML: Такий формат конфігураційних файлів або файлу опису об'єктних джерел даних.

XML - Це універсальний, незалежний від платформи стандарт опису інформації, який можна використовувати для представлення ієрархічних даних і уніфікації переданої інформації. Без його знання неможливе розуміння SOAP і, отже, web-сервісів. XML став де-факто стандартом передачі даних у мережі Інтернет. Стандарт XML і пов'язаних з ним форматів визначається консорціумом W3C (World Wide Web Consortium). Наприклад, ми створюємо aspx-сторінки в форматі xHTML - перехідному між HTML і XML, Стандарт якого теж визначений W3C. Стандарт xHTML накладає більш суворі правила на правильне формування документа, аналогічні правилам XML.

Давайте зрозуміємо головну відмінність XML від HTML. XML створений для опису даних і фокусується на тому, що саме вони з себе представляють. HTML створений для демонстрації даних і фокусується на тому, як дані виглядають. Якщо в традиційному HTML поняття "подання" і "візуалізація" часто змішуються, то при роботі з XML ми чітко розділяємо ці поняття. Теги XML НЕ зумовлені творцями мови, на відміну від тегів HTML. Кожен автор документа сам визначає власні теги.

Стандарт вимагає, щоб програма, яка обробляє XML-документ, зупиняла роботу, коли знайде помилку. А якщо браузер виявить незрозумілий тег в HTML або відсутність закриває тега, він це просто ігнорує.

На початку XML-документа обов'язково з'являється його декларація, або пролог. У ньому вказується версія стандарту XML, Якому він відповідає:

<? xml version = "1.0" encoding = "utf-8"?>

Декларація не є частиною XML-документа і не має закриває тега. У тексті XML-файлу можуть перебувати коментарі в стилі HTML -- <! - text ->.

XML-документ може мати тільки один кореневий елемент. У нього можуть бути вкладені інші вузли, а в них, у свою чергу, - інші. Кожному відкриває тегу XML повинен відповідати закриває тег. Після завершального тега кореневого елементу не може бути інших тегів. Теги XML чутливі до регістра (case-sensitive). Теги повинні бути цілком вкладені одна в одну. тому код, допустимий в HTML

<b> <i> Какой-то текст </ b> </ i>

є помилкою в XML.

У тегів можуть бути атрибути. Значення атрибутів повинні бути укладені в лапки. Порядок атрибутів значення не має. Тим що відкриває і закриває тегами може знаходитися текст. У XML зберігаються всі пропуски, що знаходяться в тексті. Якщо тексту немає, можна застосувати скорочену форму запису. Приклад тега XML:

<PROPERTY Label = "ogl_extension" Value = "4520" Itemtype = "predefined"

/>

Це коротка форма тега

<PROPERTY Label="ogl_extension" Value="4520" Itemtype="predefined"> </ PROPERTY>

Вам це нічого не нагадує? Правила опису елементів ASP. NET точно такі самі.

Існує атрибут xmlns, Який визначає простір імен. Значним його може бути будь-яке унікальне ім'я. Існує домовленість використовувати URL, так як вони унікальні. Простори імен мають сенс, аналогічний їх застосування в. NET Framework - щоб не змішувати однакові імена, використовувані різними розробниками. Назва простору імен відділяється від імені двокрапкою.

XML-файли представляють ієрархічну інформацію, яку можна представити у вигляді дерева з одним коренем.

Документи XML, Що задовольняють всім вимогам синтаксису, називають правильними (well-formed). Для опису даних XML використовує DTD (Document Type Definition) - визначення типу документа. Якщо файл відповідає DTD, він вважається дійсним (valid).

Браузери IE 6.0, FireFox 1.5 відображають XML-файли з виділенням синтаксису. Батьківські вузли можна розкривати і закривати. Наприклад, у закритому вигляді кореневий вузол файлу BirthDay.xml виглядає так:

+ <BD>

Якщо його розкрити, побачимо

- <BD>

- <Item Type="Plugin">

  <LinkText> Відправити вітальну листівку </ LinkText>

  <PluginID> Friendship </ PluginID>

  <InitData />

  </ Item>

- <Item Type="URL">

  <AdditionalText> Відправити вітальну відкрито -

ку </ AdditionalText>

  <URL> Www.icq.com </ URL>

 </ Item>

  </ BD>

Середовища розробки Visual Studio і VWD Express перевіряють правильність XML-документів прямо під час редагування.

AdRotator

Елемент керування AdRotator дозволяє показувати рекламні банери і автоматично замінювати їх на інші. Самі банери описані у файлі XML або в іншому джерелі даних. Реклама оновлюється кожного разу при оновленні сторінки. У властивості AdvertismentFile задається ім'я XML-файлу. Скелет XML-файлу такий:

<? xml version = "1.0" encoding = "utf-8"?>

<Advertisements

xmlns = "http://schemas.microsoft.com/AspNet/AdRotator-Schedule-

File ">

</ Advertisements>

Усередині вузла Advertisements розташовуються вузли <Ad> </ Ad>

У цих вузлів є 5 атрибутів, всі вони необов'язкові.

ImageUrl

Картинка, яка демонструватиметься при виборі даного оголошення

NavigateUrl

Адреса, за яким буде здійснено перехід при натисканні на картинку

AlternateText

Альтернативний текст, якщо показ зображень вимкнений

Impressions

Всі значення Impressions підсумовуються. Вірогідність показу реклами дорівнює значенню Impressions, поділене на цю суму

Keyword

Ключове слово-категорія реклами, дозволяє фільтрувати оголошення

Приклад файлу AdvertismentFile (він називається ads.xml):

<? xml version = "1.0" encoding = "utf-8"?>

<Advertisements

xmlns = "http://schemas.microsoft.com/AspNet/AdRotator-Schedule-

File ">

  <Ad>

    <ImageUrl> Fixed.gif </ ImageUrl>

    <NavigateUrl> Http://www.im.am </ NavigateUrl>

    <AlternateText> Безкоштовний хостинг </ AlternateText>

    <Impressions> 40 </ Impressions>

    <Keyword> Хостинг </ Keyword>

  </ Ad>

  <Ad>

    <ImageUrl> Logo2.jpg </ ImageUrl>

    <NavigateUrl> Http://www.nv.am </ NavigateUrl>

    <AlternateText> Газета "Новий час" </ AlternateText>

    <Impressions> 50 </ Impressions>

    <Keyword> Новини </ Keyword>

  </ Ad>

  <Ad>

    <ImageUrl> Summer.jpg </ ImageUrl>

    <NavigateUrl> Http://www.utro.ru </ NavigateUrl>

    <AlternateText> Співачку Жасмін побив чоловік! </ AlternateText>

    <Impressions> 100 </ Impressions>

    <Keyword> Жовті новини </ Keyword>

  </ Ad>

</ Advertisements>

На сторінку поміщений елемент управління. Його властивість AdvertisementFile вказує на це фото:

<asp: AdRotator ID = "AdRotator1" runat = "server"

        AdvertisementFile = "ads.xml" Height = "164px" Width = "574px"

/>

Якщо встановлено властивість Keyword, То елемент управління показує тільки ту рекламу, яка відповідає його змісту. Так як його можна міняти динамічно, є можливість підлаштовувати рекламу під потреби користувача. Keyword повинен зустрічатися хоча б один раз у файлі оголошень, інакше замість реклами буде порожній прямокутник.

У попередніх версіях ASP. NET можна було працювати тільки з файлами XML. Тепер можна використовувати будь-яке джерело даних, зв'язавшись з елементом управління-джерелом даних. У такому випадку необхідно вказати як мінімум 3 поля джерела у властивостях ImageUrlField, NavigateUrlField і AlternateTextField:

<asp: AdRotator ID = "AdRotator2" runat = "server"

DataSourceId = "SqlDataSource1" AlternateTextField = "Alternate"

ImageUrlField = "Image" NavigateUrlField = "NavigateUrl" />

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]