Создание валидных XML документов (xsd)




Для XML документа (ЛР№1) необходимо создать xsd-схемы.

xsd-схемы включающую в себя требования на наличие:

  1. Всех элементов в XML-файле.
  2. С использованием ссылок на другие элементы (атрибут “ref”).
  3. С использованием собственных типов данных.
  4. С использованием не менее 4-х элементов xml-схем (any, all, choice, list)
  5. C использованием граней (facets). Использовать не менее 4 типов ограничений (свое ограничение для определенного типа данных; если типов данных меньше, то определить несколько видов ограничений для какого-нибудь типа).
  6. Все созданные схемы реализовать через собственные типы данных.

В результате должно быть сформировано не менее 3-х xsd-схем и на их основании созданы соответствующие xml-документы.

Элементы XML-схем

Элемент Описание
all Определяет под-элементы в произвольном порядке. Дочерние элементы не обязательны, но могут появляться только по одному разу
annotation Родительский элемент элементов-комментариев <appInfo> и <documentation>
any Определяет любые под-элементы
anyAttribute Определяет любые атрибуты
appInfo Элемент-комментарий. Задает титул схемы
attribute Определяет атрибут
attributeGroup Определяет группу атрибутов
choice Определяет выбор других элементов. Является аналогом оператора "|" в DTD
complexContent Определяет ограничения или расширения контентной модели мложного типа
complexType Определяет элемент сложного типа complexType
documentation Элемент-комментарий. Предоставляет полезную информацию о схеме
element Определяет элемент
extension Определяет расширения элемента
field Определяет поле. Использует XPath. Может применяться внутри элемента <unique> для определения полей
group Определяет группу элементов
import Задает импорт декларации типов из другой схемы
include Задает включение другой схемы в существующее пространство имен
key Задает элементы или атрибуты с ключом, указывающим на другой элемент
keyref Задает элементы или атрибуты, на которые указывает ключ
list Определяет элементы, которые могут содержать список значений
redefine Задает переопределение уже определенных элементов
restriction Задает ограничения элемента
schema Задает корневой элемент схемы
selector Задает селектор для отбора XML-элементов
sequence Задает последовательность других элементов. Является аналогом оператора "," в DTD
simpleContent Определяет контентную модель типа, который может содержать только символьные данные
simpleType Определяет элемент простого типа simpleType
union Определяет элементы или атрибуты, которые могут иметь множественные значения
unique Определяет элементы или атрибуты, которые должны иметь уникальные значения

Грани XML-схем

Грани задают ограничения на содержание элементов.

Элемент Описание
enumeration Задает список значений
length Задает длину
maxLength Задает максимальную длину
minLength Задает минимальную длину
maxExclusive Задает максимальное значение
maxInclusive Задает максимальное значение включительно
minExclusive Задает минимальное значение
minInclusive Задает минимальное значение включительно
fractionDigits Задает число цифр в дроби
totalDigits Задает число цифр
pattern Задает паттерн содержимого элементов
whiteSpace Задает значение пробелов в содержимом элементов

Атрибуты XML-схем

Атрибуты предоставляют дополнительную информацию об элементах

Атрибут Описание
abstract Задает элемент как имеющий абстрактный тип
attributeFormDefault Задает квалификацию локальных атрибутов как глобально заданных
base Задает базовый тип элемента
block Задает запрещенное выведение ограничением (derivations-by-restriction)
blockDefault Задает изначальное ограничение block на все определения типов.
default Задает значение элемента или атрибута по умолчанию
elementFormDefault Задает квалификацию локального элемента как глобально определенного
final Задает запрещенное выведение ограничением (derivations-by-restriction)
finalDefault Задает изначальное ограничение final на все определения типов
fixed Задает фиксированное значение элемента или атрибута
form Задает, что локально объявленные элементы определяются в конкретных экземплярах документов
itemType Задает тип пунктов списка
memberTypes Задает тип членов, использованных в союзе (union)
maxOccurs Задает максимальное количество вхождений элемента
minOccurs Задает минимальное количество вхождений элемента
mixed Задает элемент как имеющий смешанный тип
name Задает имя элемента или атрибута
namespace Задает пространство имен элемента или атрибута
noNamespaceSchemaLocation Задает местоположение документа-схемы, который не имеет результирующих пространств имен
nillable Определяет, что элемент может иметь пустое значение NULL (nil)
processContents Определяет, как валидатор схемы должен обрабатывать элемент
ref Задает ссылку на глобально определенный элемент
schemaLocation Определяет местоположение схемы
substitutionGroup Определяет, что элементы заменяются другими элементами
targetNamespace Задает результирующее пространство имен схемы
type Задает тип элемента
use Задает использование элемента (обязательный или нет)
value Задает значение элемента схемы
xsi:nil Задает реальное содержание пустого (NULL) элемента XML-документа
xsi:schemaLocation Задает реальное местоположение элемента в XML-документе
xsi:type Задает реальный тип элемента в XML-документе

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

Имя Описание Пример Грани
string Строка символов как последовательность 10646 символов Unicode или ISO/IEC, включая пробел, символ табуляции, возврат каретки и перевод строки John Lennon enumeration length maxLength minLength pattern whiteSpace
boolean бинарные логические значения: true или false,1 или 0. false pattern whiteSpace
decimal Десятичное число как последовательность десятичных цифр, разделенных периодом как десятичным разделителем 3145.56 enumeration fractionDigits maxExclusive maxInclusive minExclusive minInclusive pattern totalDigits whiteSpace
float 32-битное число с плавающей запятой, за мантиссой идет (не обязательно) экспонента 4.6E4 enumeration maxExclusive maxInclusive minExclusive minInclusive pattern whiteSpace
double 64-битное число с плавающей запятой, за мантиссой идет (не обязательно) экспонента 4.6E4 enumeration maxExclusive maxInclusive minExclusive minInclusive pattern whiteSpace
hexBinary шестнадцатиричные данные в виде последовательности бинарных октетов 0FFF enumeration length maxLength minLength pattern whiteSpace
base64Binary Бинарные данные в кодировке base64 в виде последовательности бинарных октетов GpM7 enumeration length maxLength minLength pattern whiteSpace
anyURI Универсальный идентификатор ресурса (Uniform Resource Identifier) определенный в стандартах RFC 2396 и RFC 2732 https://cnet.com enumeration length maxLength minLength pattern whiteSpace
QName Пригодное XML-имя как определяется в пространствах имен XML xs:element enumeration length maxLength minLength pattern whiteSpace
NOTATION Атрибут NOTATION как определяется в XML   enumeration length maxLength minLength pattern whiteSpace

 


 

 

Лабораторная работа №4

Работа с XLink

1. В XML документе (ЛР№1) создать ссылки на другие XML документы (созданы в ЛР№2 или ЛР№3).

2. При создании XML-документа(-ов) требуется выполнение следующих условий:

a) наличие ссылок (простые) не менее чем у 6 элементах;

b) использовать все 8 атрибутов связующих элементов (не обязательно в одном элементе);

c) сформировать простые ссылки (использовать атрибуты: replace, new, embed);

d) использовать поведение (атрибут xlink:actuate) c различными значениями (onRequest, onLoad);

3. Для данного XML-документа создать соответствующие DTD-определения и XSD-схемы.

Лабораторная работа №5

DOM

Для xml-докумета, разработанного в ЛР№1 средствами языка JavaScript или VBScript и библиотеки работы с DOM реализовать:

1. Изменения данных внутри элемента (-ов).

2. Добавления элементов (узлов)

3. Удаления элементов (узлов)

4. Замены элементов (узлов)

5. Вывода xml-файла.

 

 


Лабораторная работа №6

DOM

Для xml-докумета, разработанного в ЛР№1 средствами языка программирования Java и библиотек работы с DOM реализовать методы:

6. Изменения данных внутри элемента (-ов).

7. Добавления элементов (узлов)

8. Удаления элементов (узлов)

9. Замены элементов (узлов)

10. Вывода xml-файла.

 

Лабораторная работа №7

SAX

Для xml-докумета, разработанного в ЛР№1 средствами языка программирования Java и библиотек работы с SAX реализовать методы:

1. Поиска максимального уровня вложенности

2. Вывода содержимого xml-файла в виде таблицы (вывод произвести в html-файл).


Лабораторная работа №8



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-11-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: