Java 16 XML 1 XML XML root element

  • Slides: 35
Download presentation
Java 16. XML 1

Java 16. XML 1

XML-синтаксис Корневой элемент Каждый XML-документ должен содержать только один корневой элемент (root element или

XML-синтаксис Корневой элемент Каждый XML-документ должен содержать только один корневой элемент (root element или document element) <book> <title> first book </title> </book> <title> second book </title> <book/> <books> <book> <title> first book </title> </book> <book> <title> second book </title> <book/> </books> 5

XML-синтаксис Case-sensitive Наименования тегов чувствительны к регистру (case-sensitive) <author> Petrov </Author> <author> Petrov </author>

XML-синтаксис Case-sensitive Наименования тегов чувствительны к регистру (case-sensitive) <author> Petrov </Author> <author> Petrov </author> 8

namespace В качестве значений namespace часто используются правильные URL (URI). Но только в целях

namespace В качестве значений namespace часто используются правильные URL (URI). Но только в целях обеспечения уникальности имен. <root> <h: table xmlns: h="http: //www. w 3. org/TR/html 4/"> <h: tr> <h: td>Apples</h: td> <h: td>Bananas</h: td> </h: tr> </h: table> <f: table xmlns: f="http: //www. w 3 schools. com/furniture"> <f: name>African Coffee Table</f: name> <f: width>80</f: width> <f: length>120</f: length> </f: table> </root> 17

Схема XSD Пример simple. Type <simple. Type name="Login"> <restriction base="ID"> <pattern value="[a-z. A-Z]{3}[a-z. A-Z

Схема XSD Пример simple. Type <simple. Type name="Login"> <restriction base="ID"> <pattern value="[a-z. A-Z]{3}[a-z. A-Z 0 -9_]+"/> </restriction> </simple. Type> <simple. Type name="Age"> <restriction base="integer"> <min. Inclusive value="12" /> <max. Inclusive value="35" /> </restriction> </simple. Type> <simple. Type name="Facuilty"> <restriction base="string"> <enumeration value="bio" /> <enumeration value="geo" /> <enumeration value="hist" /> <enumeration value="math" /> <enumeration value="phys" /> </restriction> </simple. Type> 25

Схема XSD Пример указания порядка <complex. Type name="Student"> <sequence> <element name="name" type="string" /> <element

Схема XSD Пример указания порядка <complex. Type name="Student"> <sequence> <element name="name" type="string" /> <element name="telephone" type="decimal" /> <element name="address" type="Address" /> </sequence> </complex. Type> <complex. Type name="Teacher"> <all> <element name="chair" type="Chair" /> <element name="position" type="Position" /> </all> </complex. Type> <complex. Type name="Material"> <choice> <element name="cotton" type="string" /> <element name="wool" type="string" /> </choice> </complex. Type> 27

Схема XSD Пример complex. Type <complex. Type name="Student"> <sequence> <element name="name" type="string"/> <element name="telephone"

Схема XSD Пример complex. Type <complex. Type name="Student"> <sequence> <element name="name" type="string"/> <element name="telephone" type="decimal"/> <element name="address" type="tns: Address"/> </sequence> <attribute name="login" type="tns: Login" use="required"/> <attribute name="faculty" type="string" use="required"/> </complex. Type> students. xsd 29

Схема XSD Объявление типов Все типы в схеме могут быть объявлены: l l локально

Схема XSD Объявление типов Все типы в схеме могут быть объявлены: l l локально внутри элемента глобально с использованием атрибута name для ccылки на тип в любом месте схемы <element name = "teacher"> <complex. Type> <all> <element name="chair" type="Chair" /> <element name="position" type="Position" /> </all> </complex. Type> </element> <element name="teacher“ type ="Teacher“/> <complex. Type name="Teacher"> <all> <element name="chair" type="Chair" /> <element name="position" type="Position" /> </all> </complex. Type> 30

XML Schema + namespace Элементы самой схемы (любой) имеют пространство имен "http: //www. w

XML Schema + namespace Элементы самой схемы (любой) имеют пространство имен "http: //www. w 3. org/2001/XMLSchema" <schema xmlns="http: //www. w 3. org/2001/XMLSchema">. . . </schema> При помощи атрибута target. Namespace элемента schema задается namespace элементов, которые описывает текущая схема <schema xmlns="http: //www. w 3. org/2001/XMLSchema" target. Namespace="http: //www. example. com/Students"> Префикс для namespace задается атрибутом xmlns через двоеточие, в качестве значения атрибута указывается значение namespace, для которого вводится префикс <schema xmlns="http: //www. w 3. org/2001/XMLSchema" target. Namespace="http: //www. example. com/Students" xmlns: tns="http: //www. example. com/Students"> 32