Тест по структуризации данных с помощью XML

Этот тест предназначен для проверки знаний по структуризации данных с использованием XML. В нём рассматриваются ключевые темы: DTD и XML Schema (XSD), XPath и XQuery, а также работа с XML в программировании через DOM, SAX и StAX.

структуризации данных с помощью XML

структуризации данных с помощью XML

Вопросы включают выбор вариантов, задания на соответствие, последовательности и открытые вопросы, что позволяет комплексно оценить понимание структуры и обработки XML-документов.

Тест идеально подходит студентам, программистам и специалистам по обработке данных, желающим закрепить или проверить навыки работы с XML. Он помогает освоить стандарты разметки, типы данных, способы валидации документов и методы программной работы с XML в различных языках и средах разработки.

Тема 1. Основы структуризации данных при помощи XML.

1. Что такое XML?

1)

Язык программирования

2)+

Язык разметки для данных

3)

СУБД

ⓘ XML (Extensible Markup Language) — это язык разметки для хранения и передачи структурированных данных. Он позволяет описывать данные без жёсткой структуры

2. Какой тег в XML используется для обозначения корневого элемента?

1)

<head>

2)+

<root>

3)

<body>

ⓘ Корневой элемент является обязательным и охватывает все другие элементы документа. Он обозначает начало структуры XML

3. Как обозначаются атрибуты в XML?

1)

Через специальные теги

2)+

Внутри тега элемента, как name="value"

3)

Через комментарии

ⓘ Атрибуты помещаются внутри тега элемента и задают свойства элемента. Например:

4. Какая особенность XML делает его удобным для обмена данными между системами?

1)

Он бинарный

2)+

Платформонезависимый текстовый формат

3)

Только для веб-страниц

ⓘ XML является текстовым и платформонезависимым форматом, что позволяет системам с разной архитектурой обрабатывать данные одинаково

5. Что означает «валидный XML-документ»?

1)

Документ открывается в браузере

2)

Документ содержит только текст

3)+

Соответствует синтаксису и схеме

ⓘ Документ является валидным, если он соответствует заданной структуре и правилам синтаксиса, а также соответствует DTD или XSD (схеме)

6. Какой символ используется для закрытия элемента в XML?

1)

/start

2)+

</tag> или <tag/>

3)

{end}

ⓘ Элементы закрываются либо парным тегом , либо с помощью короткой записи

7. Что такое CDATA в XML?

1)

Специальный тег для комментариев

2)

Элемент для атрибутов

3)+

Секция для необработанного текста

ⓘ CDATA используется для вставки текста, который не должен обрабатываться как разметка. Все символы внутри CDATA трактуются как данные

8. Какой символ используется для комментариев в XML?

1)

//

2)

/* */

3)+

<!-- -->

ⓘ Комментарии в XML записываются в формате , чтобы их игнорировали парсеры

9. Какой стандарт используется для описания структуры XML-документа?

1)

HTML

2)+

DTD/XSD

3)

CSS

ⓘ DTD (Document Type Definition) и XSD (XML Schema) описывают допустимые элементы, их атрибуты и вложенность

10. Какая особенность XML делает его самодокументируемым?

1)

Он хранит только числа

2)+

Теги описывают содержимое

3)

Только атрибуты важны

ⓘ Теги описывают смысл данных, поэтому даже без документации понятно, что обозначает каждый элемент

11. Что определяет интерфейс структуры данных XML?

1)

Физический способ хранения

2)+

Набор допустимых элементов и атрибутов

3)

Размер памяти

ⓘ Интерфейс (элементы и атрибуты) определяет, какие данные и в каком виде допустимы для обработки программой

12. Что такое well-formed XML?

1)

Документ прошёл валидацию по схеме

2)+

Документ соответствует правилам синтаксиса

3)

Документ содержит только текст

ⓘ Документ считается well-formed, если соблюдаются базовые правила синтаксиса: корректные теги, закрытие элементов и вложенность

13. Какая кодировка обычно используется в XML-документах?

1)

ASCII

2)+

UTF-8

3)

ISO-8859-1

ⓘ UTF-8 обеспечивает совместимость и поддержку всех символов, что важно для межплатформенного обмена

14. Как XML обрабатывает пробелы между элементами?

1)

Всегда игнорируются

2)+

Игнорируются между тегами, значимы внутри

3)

Всегда сохраняются

ⓘ Пробелы в XML значимы только в содержимом элементов, а между тегами игнорируются парсером

15. Какой инструмент используется для трансформации XML в другие форматы, например HTML?

1)

CSS

2)

JSON

3)+

XSLT

ⓘ XSLT (Extensible Stylesheet Language Transformations) позволяет преобразовывать XML в различные форматы для отображения или обработки

16. Соотнесите элементы XML с их назначением

Элемент

Хранение данных

Атрибут

Свойства элемента

CDATA

Необработанный текст

Комментарий

Примечания для человека

ⓘ Элементы, атрибуты, CDATA и комментарии имеют разные роли в описании структуры и содержания документа XML

17. Соотнесите этапы создания XML-документа с их функцией

Определение корневого элемента

Начало документа

Добавление дочерних элементов

Создание структуры

Добавление атрибутов

Задание свойств

Сохранение документа

Финализация и проверка

ⓘ Процесс создания XML включает определение структуры, элементов, атрибутов и сохранение документа в корректном формате

18. Расставьте этапы обработки XML-документа при парсинге

1

Чтение документа

2

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

3

Проверка соответствия схеме

4

Передача данных приложению

ⓘ Парсинг XML включает чтение документа, проверку синтаксиса, обработку схемы и передачу данных приложению

19. Расставьте уровни вложенности элементов XML от корня к листовым элементам

1

Корневой элемент

2

Дочерний элемент

3

Подэлемент

4

Листовой элемент

ⓘ Элементы XML могут быть вложены, начиная с корневого, затем дочерние и подэлементы, формируя иерархию

20. Какой тег в XML используется для обозначения одного пустого элемента?

ⓘ Пустой элемент можно записать в форме , что сокращает запись и сохраняет корректность XML

Тема 2. Атрибуты и элементы XML.

1. Что такое атрибут в XML?

1)

Отдельный элемент документа

2)+

Свойство элемента

3)

Комментарий

ⓘ Атрибут — это свойство элемента, записанное внутри тега, которое задаёт дополнительную информацию о нём

2. Как правильно записать несколько атрибутов в одном элементе?

1)

Отдельными тегами

2)+

В одном теге через пробел

3)

Внутри CDATA

ⓘ Атрибуты перечисляются через пробел внутри открывающего тега, каждый в форме name="value"

3. Что происходит, если атрибут дублируется в одном элементе?

1)

Первый атрибут игнорируется

2)

Второй перезаписывает первый

3)+

Документ становится некорректным

ⓘ Дублирование атрибутов недопустимо и делает XML-документ некорректным

4. Какой тип данных можно задавать для атрибутов в XML Schema?

1)

Только string

2)+

Любой тип, поддерживаемый схемой

3)

Только числа

ⓘ XML Schema позволяет указывать тип данных для атрибутов (string, integer, boolean и др.), что обеспечивает валидацию данных

5. Что такое элемент с текстовым содержимым?

1)

Атрибут внутри тега

2)+

Данные между тегами

3)

Комментарий

ⓘ Элемент содержит данные между открывающим и закрывающим тегом, например John

6. Какой способ записи пустого элемента является корректным?

1)

<tag></tag>

2)+

<tag/>

3)

<tag>NULL</tag>

ⓘ Пустой элемент можно записать как , это сокращает запись и соответствует стандарту XML

7. Как объединяются элементы и атрибуты?

1)

Элементы заменяют атрибуты

2)

Атрибуты содержат дочерние элементы

3)+

Элементы хранят данные, атрибуты задают свойства

ⓘ Элементы хранят основное содержимое, а атрибуты уточняют свойства элементов, вместе формируя полную структуру XML

8. Что такое вложенные элементы?

1)

Атрибуты, заданные внутри тега

2)+

Элементы внутри других элементов

3)

Комментарии внутри элемента

ⓘ Вложенные элементы находятся внутри других элементов, создавая иерархию и структурируя данные

9. Какая разница между элементом и атрибутом в плане данных?

1)

Элемент хранит только числа

2)+

Атрибут хранит строку, элемент — структуру

3)

Атрибут хранит структуру, элемент — строку

ⓘ Элемент может содержать текст, другие элементы и CDATA, тогда как атрибут содержит только строковое значение

10. Какой элемент XML может содержать несколько дочерних элементов одного типа?

1)

Только корневой

2)

Только листовой

3)+

Любой элемент

ⓘ Любой элемент может содержать несколько дочерних элементов одного и того же имени, что позволяет создавать списки данных

11. Соотнесите атрибуты с их ролью

id

Уникальный идентификатор

class

Классификация элемента

href

Ссылка на другой элемент

type

Указание типа данных

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

12. Соотнесите элементы с их содержимым

leaf

Текстовое содержимое

container

Дочерние элементы

cdata

Необработанный текст

comment

Примечания для человека

ⓘ Элементы могут содержать текст, другие элементы или CDATA, что важно для структуризации XML

13. Расставьте этапы обработки атрибутов XML при парсинге

1

Чтение тега

2

Выделение атрибутов

3

Сохранение значений атрибутов

4

Использование в приложении

ⓘ Парсер сначала читает тег, затем выделяет атрибуты и их значения для дальнейшей обработки или валидации

14. Расставьте типы данных XML-атрибутов по увеличению сложности проверки

1

string

2

integer

3

decimal

4

boolean

ⓘ Простая строка проверяется легко, числа требуют проверки формата, а boolean — проверки значения на true/false

15. Какой атрибут отвечает за уникальность элемента в XML?

id

ⓘ Атрибут id уникально идентифицирует элемент, что важно для ссылок и структуры документа

Тема 3. DTD и XML Schema.

1. Что такое DTD в XML?

1)

Язык программирования

2)+

Определение структуры XML

3)

Формат хранения данных

ⓘ DTD (Document Type Definition) задаёт правила структуры XML-документа: допустимые элементы, их порядок и атрибуты

2. Что такое XML Schema (XSD)?

1)

Только для комментариев

2)+

Описание структуры и типов XML

3)

Модель базы данных

ⓘ XSD — современный способ описания структуры XML-документов, включая типы данных, ограничения и повторяемость элементов

3. Какая разница между DTD и XSD?

1)

DTD поддерживает типы данных, XSD — нет

2)+

XSD поддерживает типы данных, DTD — нет

3)

DTD и XSD полностью идентичны

ⓘ DTD задаёт только структуру и порядок элементов, XSD позволяет определять типы данных и более сложные ограничения

4. Как задать обязательный элемент в DTD?

1)

<!ATTRIBUTE name CDATA>

2)+

<!ELEMENT name (#PCDATA)>

3)

<!ELEMENT name OPTIONAL>

ⓘ Используется , где элемент должен присутствовать согласно определению

5. Как задать повторяющийся элемент в DTD?

1)

Используется + для 1 элемент

2)+

Используется * для 0 или более

3)

Используется ?

ⓘ Используется символ * для обозначения 0 или более вхождений элемента

6. Какой элемент в XSD определяет сложные типы данных с дочерними элементами?

1)

xs:simpleType

2)+

xs:complexType

3)

xs:element

позволяет объединять несколько элементов и атрибутов в одной структуре

7. Что делает в XSD?

1)

Создаёт дочерний элемент

2)+

Задаёт атрибут

3)

Определяет комментарий

ⓘ Определяет атрибут элемента, включая имя, тип и обязательность

8. Как в XSD задать элемент, который может повторяться?

1)

minOccurs

2)+

maxOccurs

3)

count

ⓘ Используется атрибут maxOccurs, чтобы указать количество повторений элемента

9. Что такое тип данных string в XSD?

1)

Числовой формат

2)+

Текстовая строка

3)

Дата

ⓘ Определяет, что значение элемента или атрибута должно быть строкой текста

10. Что такое простые типы данных в XSD?

1)

Элементы с вложенными тегами

2)+

Элементы без дочерних элементов

3)

Комментарии

ⓘ Простые типы не содержат дочерних элементов и включают строки, числа, даты и булевы значения

11. Как задать элемент с ограниченным набором значений в XSD?

1)

xs:list

2)+

xs:restriction

3)

xs:pattern

ⓘ Используется с перечислением для задания допустимых значений

12. Как объявить глобальный элемент в XSD?

1)

Внутри complexType

2)+

На верхнем уровне схемы

3)

Внутри simpleType

ⓘ Глобальные элементы определяются на верхнем уровне схемы и могут использоваться в любом месте документа

13. Что означает minOccurs="0" в XSD?

1)

Элемент обязателен

2)+

Элемент необязателен

3)

Элемент должен повторяться

ⓘ Элемент не обязательно присутствует в документе XML

14. Как DTD проверяет атрибуты элементов?

1)

Через <attribute>

2)+

Через <!ATTLIST>

3)

Через <xs:attribute>

ⓘ DTD использует для определения имени, типа и обязательности атрибута

15. Как XSD проверяет значения элементов?

1)

Только синтаксис тегов

2)+

По типу данных и структуре

3)

Только по имени элемента

ⓘ XSD проверяет данные по типу, ограничениям, повторяемости и схемам вложенности, обеспечивая строгую валидацию

16. Соотнесите элементы DTD и XSD с их функцией

<!ELEMENT>

Определяет элемент

<!ATTLIST>

Определяет атрибут

xs:element

Определяет элемент

xs:attribute

Определяет атрибут

ⓘ DTD и XSD используют разные теги/определения для описания структуры, но выполняют схожие функции

17. Соотнесите типы данных XSD с примерами

string

Текстовое значение

integer

123

boolean

true/false

date

2025-12-12

ⓘ Каждый тип данных задаёт допустимое значение для элемента или атрибута

18. Расставьте шаги валидации XML по XSD

1

Загрузка схемы

2

Проверка структуры

3

Проверка типов

4

Формирование отчёта

ⓘ Валидация выполняется по определённой последовательности: загрузка схемы, проверка структуры, проверка типов, отчёт о результатах

19. Расставьте этапы создания DTD

1

Определение элементов

2

Определение атрибутов

3

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

4

Сохранение DTD

ⓘ Создание DTD включает определение элементов, их атрибутов, правил повторения и связей

20. Какой тег в XSD задаёт сложный тип данных для элемента с вложенными дочерними элементами?

xs:complexType

используется для создания структурированных элементов с дочерними тегами и атрибутами

Тема 4. XPath и XQuery.

1. Что такое XPath?

1)

Язык для изменения XML

2)+

Язык для выбора элементов

3)

Язык для стилизации XML

ⓘ XPath — язык для навигации по структуре XML-документа и выбора элементов или атрибутов

2. Что означает выражение //book в XPath?

1)

Выбирает только корневой элемент

2)+

Выбирает все элементы

3)

Выбирает только первый элемент

ⓘ Выражение выбирает все элементы во всём документе, независимо от уровня вложенности

3. в XPath?

1)

Выбирает все книги без атрибута

2)+

Выбирает книгу с id='1'

3)

Создаёт новый элемент

ⓘ Выбирает элемент с атрибутом id, равным 1

4. Что означает text() в XPath?

1)

Выбирает атрибут

2)+

Выбирает текст

3)

Удаляет элемент

ⓘ Функция text() выбирает текстовое содержимое элемента

5. Что делает @ в XPath?

1)

Выбор текста

2)+

Выбор атрибута

3)

Выбор дочернего элемента

ⓘ Символ @ используется для выбора атрибутов элемента

6. Что такое XQuery?

1)

Язык стилей XML

2)+

Язык запросов XML

3)

Язык разметки

ⓘ XQuery — язык запросов для XML, позволяет получать данные, фильтровать и сортировать элементы

7. Что делает функция count() в XPath?

1)

Суммирует числовые значения

2)+

Подсчитывает элементы

3)

Удаляет элементы

ⓘ Функция count() возвращает количество выбранных элементов

8. Что возвращает выражение /library/book[1]?

1)

Выбирает все книги

2)+

Первую книгу внутри <library>

3)

Последнюю книгу

ⓘ Выбирает первый элемент внутри корневого

9. Что делает выражение book[price>30]?

1)

Выбирает книги с ценой меньше 30

2)+

Выбирает книги с ценой больше 30

3)

Удаляет книги

ⓘ Выбирает все элементы, где значение дочернего элемента больше 30

10. Что делает функция contains() в XPath?

1)

Сравнивает числа

2)+

Проверяет наличие текста

3)

Удаляет подстроку

ⓘ Функция проверяет, содержит ли текст элемента указанное значение

11. Как выбрать все атрибуты id элементов ?

1)

//book[id]

2)+

//book/@id

3)

//book/id

ⓘ Используется выражение //book/@id, чтобы получить значения всех атрибутов id

12. Соотнесите XPath выражения с их назначением

//book

Все элементы <book>

/library/book[1]

Первый <book> в <library>

book[@id='1']

Элемент <book> с id='1'

//book/@id

Все атрибуты id элементов <book>

ⓘ Каждое выражение используется для выбора элементов или атрибутов в XML

13. Соотнесите функции XPath с их действием

count()

Подсчёт элементов

contains()

Проверка подстроки

position()

Номер элемента в последовательности

last()

Номер последнего элемента

ⓘ Функции XPath используются для подсчёта, проверки текста или фильтрации элементов

14. Расставьте шаги выполнения XPath запроса

1

Навигация по дереву XML

2

Фильтрация узлов по условиям

3

Применение функций (count, contains)

4

Возврат результата

ⓘ XPath парсер сначала находит узлы, фильтрует их по условиям и возвращает результат

15. Расставьте этапы выполнения XQuery запроса

1

Выбор узлов

2

Фильтрация

3

Сортировка

4

Формирование результата

ⓘ XQuery обрабатывает XML: выбирает узлы, фильтрует, сортирует и возвращает результат в нужной форме

16. Какой символ в XPath используется для выбора всех элементов на любом уровне вложенности?

//

ⓘ Символ // позволяет выбирать элементы независимо от их положения в дереве XML

Тема 5. Работа с XML в программировании (DOM, SAX, StAX).

1. Что такое DOM в работе с XML?

1)

Язык запросов

2)+

Модель объектов документа

3)

Парсер событий

ⓘ DOM (Document Object Model) представляет XML-документ как дерево объектов, позволяя изменять и читать его структуру в памяти

2. Что такое SAX в работе с XML?

1)

Модель объектов документа

2)+

Потоковый парсер событий

3)

Редактор XML

ⓘ SAX (Simple API for XML) — это потоковый парсер событий, который последовательно читает XML и вызывает обработчики событий

3. Что такое StAX в работе с XML?

1)

Язык запросов

2)+

Стриминговый API

3)

Только для чтения

ⓘ StAX (Streaming API for XML) сочетает преимущества DOM и SAX: потоковая обработка с возможностью управления чтением/записью

4. Главное отличие DOM от SAX?

1)

DOM не может изменять XML

2)+

DOM загружает весь документ, SAX — нет

3)

SAX хранит документ как дерево

ⓘ DOM загружает весь XML в память как дерево, SAX обрабатывает документ последовательно без загрузки целиком

5. Какой подход лучше для больших XML-файлов?

1)

DOM всегда лучше

2)+

SAX или StAX

3)

Любой одинаково

ⓘ Для больших файлов предпочтительно использовать SAX или StAX, чтобы избежать перегрузки памяти

6. Что делает метод getElementById() в DOM?

1)

Получает все элементы

2)+

Получает элемент по id

3)

Удаляет элемент

ⓘ Позволяет получить элемент по уникальному атрибуту id

7. Что делает метод startElement() в SAX?

1)

Закрывает тег

2)+

Обрабатывает начало тега

3)

Выбирает элемент по ID

ⓘ Вызывается при начале тега, позволяет обработчику события работать с элементом и его атрибутами

8. Что делает метод characters() в SAX?

1)

Обрабатывает комментарий

2)+

Обрабатывает текст

3)

Создаёт элемент

ⓘ Обрабатывает текстовое содержимое между тегами элемента

9. Как StAX позволяет управлять чтением XML?

1)

Читает весь документ сразу

2)+

Читает по событиям с управлением

3)

Читает только корневой элемент

ⓘ Через вызовы next() или hasNext() можно последовательно читать события и решать, какие обрабатывать

10. Что такое узел (node) в DOM?

1)

Только элемент

2)+

Элемент структуры документа

3)

Строка текста

ⓘ Узел — это элемент структуры XML: элемент, атрибут, текст, комментарий и т.д

11. Что делает метод appendChild() в DOM?

1)

Удаляет узел

2)+

Добавляет дочерний узел

3)

Изменяет атрибут

ⓘ Добавляет новый дочерний узел к существующему элементу

12. Какой метод SAX вызывается при закрытии тега?

1)

startElement()

2)+

endElement()

3)

characters()

ⓘ Метод endElement() вызывается при закрытии элемента, чтобы обработчик мог завершить обработку

13. Соотнесите API с их характеристиками

DOM

Дерево в памяти

SAX

Потоковый парсер событий

StAX

Стриминговый парсер с контролем

JDOM

Упрощённый DOM

ⓘ DOM, SAX и StAX имеют разные модели работы с XML: дерево, поток событий и поток с контролем

14. Соотнесите методы SAX с их функцией

startElement()

Начало тега

endElement()

Закрытие тега

characters()

Текстовое содержимое

startDocument()

Начало документа

ⓘ SAX использует обработчики событий для навигации по XML

15. Расставьте этапы обработки XML через DOM

1

Загрузка XML в память

2

Создание дерева объектов

3

Навигация по узлам

4

Изменение и сохранение

ⓘ DOM сначала загружает документ, затем предоставляет доступ к узлам и их модификации

16. Расставьте этапы обработки XML через SAX

1

Чтение документа

2

Вызов startElement()

3

Обработка characters()

4

Вызов endElement()

ⓘ SAX читает документ последовательно, вызывая события для обработки элементов и текста

17. Какой метод DOM позволяет добавить новый дочерний элемент к существующему узлу?

appendChild()
appendChild

ⓘ Метод appendChild() добавляет новый узел к выбранному элементу в дереве документа

generated at geetest.ru