Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
java / лекции / лекция 6.ppt
Скачиваний:
109
Добавлен:
17.04.2018
Размер:
203.78 Кб
Скачать

XSLT преобразования

Пространство имен XML

Пространство имен XML

Пространство имен предназначено для избегания конфликтов названий элементов и атрибутов

Пространство имен в XML идентифицируется с помощью URI:

http://www.w3c.org/2001/XMLSchema

urn:com:books-r-us

Как правило используется URL

Указание пространства имен

Задание пространства имен для элемента

<элемент xmlns="URI_пространства_имен"> дочерние_элементы

</элемент>

Дочерний элемент так же может задать пространство имен:

<элемент xmlns="URI_пространства_имен">

<дочерний_элемент xmlns="URI_пространства_имен_2"> дочерние_элементы_следующего_уровня

</дочерний_элемент> дочерние_элементы

</элемент>

Псевдонимы пространства имен

Определение псевдонима (alias)

лемент xmlns:алиас="URI_пространства_имен">

. . .

</элемент>

Определение элемента внутри пространства имен:

<алиас:элемент>

. . .

</алиас:элемент>

Пример:

<xsd:schema xmlns:xsd=" http://www.w3c.org/2001/XMLSchema"> <дочерний элемент>

</xsd:schema>

Пространство имен атрибутов

Пространство имен родительского элемента наследуют только дочерние элементы (не атрибуты)

<configuration xmlns="URL1" xmlns:si="URL2"> <size value="200" si:unit="mm"/>

</configuration>

<Configuration> — URL1

<Size> - URL1

Атрибут unit — URL2

Атрибут value — ни одному из пространств имен

Пространства имен

Включение анализа пространств имен: factory.setNamespaceAware(true);

Каждый узел имеет три свойства:

Определенное имя (qualified name): getTagName()

Локальное имя (local name): getLocalName()

URI пространства имен: getNamespaceURI() Пример

<xsd:schema xmlns:xsd="URL">

XSLT

XSLT (Extensible Stylesheet Language Transformations) — предназначен для трансформации XML в HTML-документ или обычный текст

Исходный XML документ

<staff>

<employee>

<name>Carl Cracker</name> <salary>50000</salary>

<hiredate year="2007" month="12" day="15"/> </employee>

<employee>

<name>Harry Cracker</name> <salary>30000</salary>

<hiredate year="2006" month="10" day="1"/> </employee>

<employee>

<name>Tony Tester</name> <salary>10000</salary>

<hiredate year="2008" month="2" day="15"/>

</employee>

</staff>

Получаемый HTML документ

<html>

<table border=0> <tr>

<td>Carl Cracker</td> <td>50000</td> <td>2007-12-15</td>

</tr>

<tr>

<td>Harry Cracker</td> <td>40000</td> <td>2006-10-1</td>

</tr>

<tr>

<td>Tony Tester</td> <td>10000</td> <td>2008-2-15</td>

</tr>

</table>

</html>

Соседние файлы в папке лекции