- •Распределенные информационные системы и базы данных Введение
- •1. Распределенные базы данных
- •1.1. Определение Дэйта.
- •1.2. Целостность данных
- •1.3. Прозрачность расположения
- •1.4. Обработка распределенных запросов
- •1.5. Межоперабельность
- •1.6. Технология тиражирования данных
- •2. Архитектура "клиент-сервер"
- •Лекция на тему "Что такое база данных. Реляционная база данных ms Access"
- •Реляционные базы данных
- •Язык гипертекстовой разметки xml
- •Введение
- •Для чего нужен новый язык разметки?
- •Как выглядит xml-документ?
- •Правила создания xml- документа
- •Конструкции языка
- •Элементы данных
- •Комментарии
- •Атрибуты
- •Cпециальные символы
- •Директивы анализатора
- •Что дальше
- •Просмотр xml-документов
- •Использование msxml в ie 4
- •Объектная модель xml в Internet Explorer 4.0
- •Свойства и методы документа(объект xml Document)
- •Свойства и методы элементов документа
- •Пример использования
- •Использование asp
- •Стилевые таблицы xsl
- •С чего начать
- •Структура xsl- таблиц
- •Правила xsl
- •Корневое правило
- •Отношения между элементами
- •Приоритеты правил
- •Использование атрибутов элементов
- •Фильтрация элементов
- •Правила стилей
- •Сценарии
- •Вычисление выражений
- •Выполнение инструкций
- •Определение функций и глобальных переменных
- •Использование Java Script для html
- •Встроенные функции xsl
- •Определение элемента
- •Определение атрибутов
- •Определение компонентов(макроопределений)
- •Типизация данных
- •Общая структура документа
- •Управление отображением
- •Встроенная графика
- •Гипертекстовые ссылки
- •Каждая иконка связана с разделом данной страницы гипертекстовой ссылкой:
- •6.1. Средства разработки клиентских приложений
- •Разработка программ
- •Разработка клиентских программ
- •Разработка серверных программ, сервисов
- •2. Трехуровневая архитектура “клиент-сервер”
- •11.2. Проблемы создания и ведения реляционных баз данных
- •11.3. Понятие языка sql и его основные части
- •11.3.1. История возникновения и стандарты языка sql
- •11.3.2. Достоинства языка sql
- •11.3.2. Общая характеристика sql
- •Терминология
- •Разновидности sql
Сценарии
Сценарии могут использоваться в документах XSL точно также, как и в HTML. Кроме того, сценарии, содержащиеся внутри XSL-документа и запускаемые броузером в процессе обработки документа могут динамически создавать HTML-документы, извлекая необходимую для этого информацию непосредственно из элементов XSL-документа.
Для написания сценариев XSL использует специальный скриптовый язык - ECMAScript. Однако в msxsl для этих целей можно применять Microsoft JavaScript,- язык, который объединил в себе некоторые элементы стандартного JavaScript и ECMAScript.
Вычисление выражений
Наиболее простым примером использования сценариев в XSL -документе является вычисление значений параметров описываемых элементов. Для этого надо просто поставить знак равенства в качестве первого символа параметра, что заставит XSL-процессор вычислить значение выражения(синтаксис этого выражения должен отвечать требованиям JavaScript). Например, после разбора этого правила:
<rule>
<target-element type="header">
<hr width="=100-20+'%'">
<children/>
<hr width="80%">
</rule>
, в выходном документе окажутся следующие инструкции:
<hr width=80%>
...
<hr width=80%>
Очень часто в правилах XSL необходимо использовать атрибуты описываемого в них элемента. Для этого мы должны воспользоваться методом getAttribute(), описанным в объектной модели XML (мы рассматриваем объектную модель XML-документов, предложенную Microsoft, список этих функций приведен в конце раздела). Т.к. каждому элементу XSL доступен указатель на соответствующий ему объект, сценарий может обращаться к внутренним функциям и свойствам этих элементов, при помощи которых и осуществляются необходимые действия.
В следующем фрагменте XML- документа определяется элемент <article>, в котором атрибут src используется для задания адреса файла, содержащего текст статьи.
<articles>
<article src="http://server/pages/article.html">Bugs report</article>
</articles>
Для того, чтобы использовать этот атрибут в выходном HTML-документе, необходимо определить следующее правило:
<rule>
<target-element type="article">
<a href='=getAttribute("src")'>
<children/>
</a>
</rule>
После обработки этого фрагмента в выходной документ будет помещен элемент:
<a href="http://server/pages/article.html">Bugs report</a>
Выполнение инструкций
Другим способом помещения в выходной HTML- документ информации, являющейся результатом выполнения каких-либо операций JavaScript - сценариев является использовнаие инструкции <eval>;:
<rule>
<element type="articles">
<target-element type="article">
</element>
<tr><td><eval>childNumber(this)</eval></td><td>
<children/>
</td><tr>
</rule>
Метод childNumber в данном случае возвращает текущий номер дочернего элемента.
Определение функций и глобальных переменных
Аналогично тэгу <SCRIPT> в HTML, элемент <define-script> содержит функции и определения глобальных переменных. Обычно в XSL-документе определяется один элемент <define-script>, расположенный в самом начале.
<xsl>
<define-script>
<![CDATA[
var fontSize=12;
function getColor(elem){
return elem.children.item("color",0).text;
// Возвращает содержимое дочернего элемента <color>
}]]>
</define-script>
<rule>
<target-element type = "flower">
<div background-color="=getColor(this)"; font-size="=fontSize">
<children/>
</div>
</rule>
</xsl>
Если применить эти правила к такому фрагменту XML- документу:
<xml>
<flower>
rose
<color>red</color>
</flower>
, то на выходе HTML -документ будет содержать следующие элементы:
<div background-color="red"; font-size="12">
Необходимо отметить, что использование глобальных переменных в некоторых случаях может приводить к серьезным ошибкам, вызванным попытками одновременного к ним доступа. Поэтому рекомендуется использовать такие переменные только в качестве констант.