Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемВасилий Шухрин
1 Java Advanced Описание и проверка структуры XML
2 2 СПбГУ ИТМО Georgiy KorneevJava Advanced / Описание и проверка структуры XML Содержание 1.DTD 2.XML Schema 3.Проверка структуры XML 4.Заключение
3 DTD Часть 1
4 4Georgiy KorneevJava Advanced / Описание и проверка структуры XML Document Type Definition DTD – язык описания структуры XML- документов Описание не является XML-документом DTD не предназначен для описания документов с пространствами имен
5 5Georgiy KorneevJava Advanced / Описание и проверка структуры XML Ссылки на файлы Синтаксис СсылкаНаФайл СсылкаНаСистемныйФайл | СсылкаНаОбщедоступныйФайл СсылкаНаСистемныйФайл SYSTEM "ИмяФайла" СсылкаНаОбщеизвесныйФайл PUBLIC "Идентификатор" "ИмяФайла" Примеры SYSTEM "books.xml" PUBLIC "-//Examples/BookExample" "books.xml"
6 6Georgiy KorneevJava Advanced / Описание и проверка структуры XML Указание DTD Синтаксис ВнутреннееОписание ::= [ ТелоDTD ] Примеры
7 7Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание элемента Описание структуры содержимого Описываются возможные вложенные элементы и текст Описание атрибутов Описываются имена, типы и значения атрибутов по умолчанию
8 8Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание структуры содержимого Синтаксис Содержимое EMPTY- без содержимого ANY- любое содержимое Дети- только вложенные элементы Смешанное- вложенные элементы и текст Примеры
9 9Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание детей Синтаксис (Выбор | Последовательность) Количество Дети (Имя | Выбор | Последовательность) Количество Выбор ( Дети | Дети | …| Дети ) Количество Последовательность ( Дети, Дети, …, Дети ) Количество Количество - Один ?- Ноль или один +- Один и более *- Любое
10 10Georgiy KorneevJava Advanced / Описание и проверка структуры XML Примеры описания детей Только книги Книги и журналы вперемешку Сначала книги, потом журналы Книги и журналы парами Блок кода
11 11Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание смешанного содержимого Синтаксис ( #PCDATA | Имя | Имя | … Имя ) * Примеры (#PCDATA | br | emboss | img)* (#PCDATA)* (#PCDATA)
12 12Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание атрибутов Синтаксис Описание атрибута Имя ТипАтрибута ЗначениеПоУмолчанию
13 13Georgiy KorneevJava Advanced / Описание и проверка структуры XML Типы атрибутов Строковые CDATA Проверяемые ID- Идентификатор IDREF- Ссылка на идентификатор IDREFS- Ссылки на идентификатор NMTOKEN- Имя NMTOKENS- Имена Перечислимые ( Имя | Имя | … | Имя )
14 14Georgiy KorneevJava Advanced / Описание и проверка структуры XML Значения по умолчанию Значение по умолчанию "значение" Значение по умолчанию #FIXED "значение" Без значения по умолчанию #IMPLIED Обязательно указывать #REQUIRED
15 15Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример описания атрибутов Рамка
16 16Georgiy KorneevJava Advanced / Описание и проверка структуры XML Сущности Общие сущности Сущности-параметры Примеры
17 17Georgiy KorneevJava Advanced / Описание и проверка структуры XML Применение общих сущностей Сокращения Copyright: ©right; Разбиение XML на файлы &books; &magazines;
18 18Georgiy KorneevJava Advanced / Описание и проверка структуры XML Применение сущностей-параметров Структура программы Разбиение DTD на файлы %books;
19 19Georgiy KorneevJava Advanced / Описание и проверка структуры XML DTD и пространства имен В DTD можно указывать название элементов и атрибутов с двоеточиями Пространства имен задаются с помощью fixed-атрибутов
20 20Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример: DTD и пространства имен Библиотека
21 XML Schema Часть 2
22 22Georgiy KorneevJava Advanced / Описание и проверка структуры XML XML Schema XML Schema – язык описания структуры XML-документов Описание является XML-документом XML Schema предназначена для описания документов с пространствами имен XML Schema позволяет выразить все то же, что и DTD Пространство имен
23 23Georgiy KorneevJava Advanced / Описание и проверка структуры XML Типы Описывают множество значений Простые типы (simpleType) Строка символов Атрибуты, Элементы Сложные типы (complexType) Элементы и текст Элементы
24 24Georgiy KorneevJava Advanced / Описание и проверка структуры XML Простые типы Стандартные Ограниченные (restricted) Ограничение другого типа Списочные (list) Список элементов другого типа Объединение (union) Объединение простых типов
25 25Georgiy KorneevJava Advanced / Описание и проверка структуры XML Стандартные типы (1) Строковые string, normalizedString, token Неограниченные целые integer, positiveInteger, nonPositiveInteger, negativeInteger, nonNegativeInteger Ограниченные целые (unsigned)Byte, (unsigned)Short, (usigned)Int, (unsigned)Long Дробные decimal, float, double
26 26Georgiy KorneevJava Advanced / Описание и проверка структуры XML Стандартные типы (2) Дата и время dateTime, date, time, duration Имена name, QName, NCName Из DTD ID, IDREF, NMTOKEN Специальные boolean, anyURI, language
27 27Georgiy KorneevJava Advanced / Описание и проверка структуры XML Объявление ограниченного типа Синтаксис Ограничения
28 28Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример: объявление типа Серийный номер Телефон
29 29Georgiy KorneevJava Advanced / Описание и проверка структуры XML Объявление списочного типа Синтаксис Примеры
30 30Georgiy KorneevJava Advanced / Описание и проверка структуры XML Объявление типа-объединения Синтаксис Пример
31 31Georgiy KorneevJava Advanced / Описание и проверка структуры XML Объявление сложного типа Синтаксис ОписаниеСодержимого ОписаниеАтрибута*
32 32Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание атрибута Синтаксис ОбявлениеПростогоТипа Пример
33 33Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание содержимого Синтаксис Описание содержимого Содержимое Содержимое ОписаниеЭлемента ОписаниеГруппы
34 34Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание элемента Синтаксис ОбявлениеТипа Пример
35 35Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание групп Синтаксис ОписаниеСодержимого Пример
36 36Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример: описание сложного типа Адрес
37 37Georgiy KorneevJava Advanced / Описание и проверка структуры XML Описание структуры Синтаксис Описание Типов, Атрибутов, Элементов
38 38Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример: пространства имен
39 39Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример: пространства имен elementFormDefault="unqualified" St. Petersburg,... elementFormDefault="qualified"
40 40Georgiy KorneevJava Advanced / Описание и проверка структуры XML Разбиение на файлы Возможно включения одних схем в другие Синтаксис Пример
41 41Georgiy KorneevJava Advanced / Описание и проверка структуры XML Аннотации Определение типов, элементов, атрибутов могут содержать аннотации Синтаксис Описания текст
42 42Georgiy KorneevJava Advanced / Описание и проверка структуры XML Связывание документа со схемой Пример ...
43 Проверка структуры XML Часть 3
44 44Georgiy KorneevJava Advanced / Описание и проверка структуры XML Проверка по DTD Свойство DocumentBuilderFactory validating – производить ли проверку Метод DocumentBuilder isValidating() – производиться ли проверка Свойство SAXParserFactory validating – производить ли проверку Свойство SAXParser isValidating() – производиться ли проверка
45 45Georgiy KorneevJava Advanced / Описание и проверка структуры XML Проверка по XML Schema Пакет javax.xml.validation Класс Shema Установка схемы Свойство DocumentBuilderFactory.schema Свойство SAXParserFactory.schema
46 46Georgiy KorneevJava Advanced / Описание и проверка структуры XML Создание Shema Класс SchemaFactory Методы static newInstance(type) – создание фабрики newSchema(…) – создание экземпляра схемы setFeature(uri, value) – установить настройку Типы схем Класс XMLConstants W3C_XML_SCHEMA_NS_URI
47 47Georgiy KorneevJava Advanced / Описание и проверка структуры XML Пример: задание схемы SchemaFactory sfactory = SchemaFactory.newInstance( XMLConstants.W3C_XML_SCHEMA_NS_URI); Schema schema = sfactory.newSchema( new File("books.xsd")); SAXParserFactory factory = SAXParserFactory.newInstance(); factory.setSchema(schema); factory.setNamespaceAware(true); factory.setValidating(true); SAXParser parser = factory.newSAXParser();
48 Заключение Часть 6
49 49Georgiy KorneevJava Advanced / Описание и проверка структуры XML Ссылки (1) Extensible Markup Language 1.1 // XML Schema Part 0: Primer // / / XML Schema Part 1: Structures // / / XML Schema Part 2: Datatypes // / /
50 50 СПбГУ ИТМО Georgiy KorneevJava Advanced / Описание и проверка структуры XML Вопросы
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.