
- •Структурная организация эвм. Организация связи между блоками эвм. Типы интерфейсов
- •Структурная таблица переходов автомата
- •Синтез микропрограммного автомата Мура по граф-схеме алгоритма.
- •Структура и функционирование микропрограммируемого управляющего автомата. Основные поля микрокоманды
- •Структура памяти эвм. Запоминающие устройства, их основные параметры
- •Оперативная память эвм. Структура запоминающего устройства с произвольным доступом
- •Оперативная память эвм. Структура запоминающего устройства с двухкоординатной выборкой
- •Оперативная память эвм. Структура запоминающего устройства со стековой организацией
- •Оперативная память эвм. Структура запоминающего устройства с магазинной организацией
- •Организация оперативной памяти. Многоблочная память
- •Организация оперативной памяти с многоканальным доступом. Схема анализа приоритета при подключении каналов
- •Организация памяти. Иерархические уровни. Двух- и трехуровневая организация памяти
- •Организация прямого доступа к памяти
- •Принципы защиты информации. Защита информации при страничной адресации
- •Организация виртуальной памяти
- •Сегментно-страничная организация вп.
- •Области применения языка xml: организация и функции платформы xml, моделирование данных
- •Правильно построенный документ xml: общие правила синтаксиса xml
- •Интерфейсы анализаторов xml: доступ и манипулирование содержанием и структурой xml
- •Образец подстановки xslt: модель документа, трансформация деревьев, подстановками
- •Открытая архитектура компьютера: понятие архитектуры вычислительного устройства, принцип открытости архитектуры
- •Работа шины pci: стандарты подключения периферийных компонентов, пассивное и активное устройства шины pci
- •Программная модель pci: команды ассемблера для управления вводом/выводом, драйверы, отображение регистров периферийных устройств
- •Систематика Флинна: высокопроизводительные вычисления, архитектуры суперкомпьютеров
- •Протокол пересылки файлов ftp. Назначение протокола, схема работы. Список команд и кодов ответов
- •Общие сведения об ip-адресах. Классы ip-адресов. Связь ip адреса с доменом посредством службы доменных имен. Подсеть, маска подсети
- •Протокол передачи гипертекста http. Общие сведения. Url, заголовок http-запроса. Http-ответ, заголовки http-ответа
- •Служба почты как пример распределенной системы: понятие распределенной системы, организация взаимодействия пространственно распределенных агентов
- •Коммутация сообщений, коммутация пакетов: подходы к выполнению коммутации, обеспечение связи абонентов между собой в вычислительных сетях
- •Доставка сообщений в модели osi: модель взаимодействия открытых систем, роль уровней модели в процессе доставки сообщений
- •Коммутация в локальных сетях Ethernet: адресация компьютеров вычислительной сети, разделяемая среда передачи данных
Интерфейсы анализаторов xml: доступ и манипулирование содержанием и структурой xml
XML как набор байт в памяти, запись в базе или текстовый файл представляет собой данные, которые еще предстоит обработать. То есть из набора строк необходимо получить данные, пригодные для использования в программе. Поскольку ХML представляет собой универсальный формат для передачи данных, существуют универсальные средства его обработки – XML-анализаторы (парсеры). Парсер – это библиотека, которая читает XML-документ, а затем предоставляет набор методов для обработки информации этого документа.
Существует три подхода (API) к обработке XML-документов:
DOM (DocumentObjectModel – объектная модель документов) – платформенно-независимый программный интерфейс, позволяющий программам и скриптам управлять содержимым документов HTML и XML, а также изменять их структуру и оформление. Модель DOM не накладывает ограничений на структуру документа. Любой документ известной структуры с помощью DOM может быть представлен в виде дерева узлов, каждый узел которого содержит элемент, атрибут, текстовый, графический или любой другой объект. Узлы связаны между собой отношениями родитель-потомок.
SAX (Simple API for XML) базируется на модели последовательной одноразовой обработки и не создает внутренних деревьев. При прохождении по XML вызывает соответствующие методы у классов, реализующих интерфейсы, предоставляемые SAX-парсером.
StAX (Streaming API for XML) не создает дерево объектов в памяти, но,в отличие от SAX-парсера, за переход от одной вершины XML к другой отвечает приложение, которое запускает разбор документа.
Анализаторы, которые строят древовидную модель, – это DOM-анализаторы. Анализаторы, которые генерируют события, – это SAX-анализаторы.
Анализаторы, которые ждут команды от приложения для перехода к следующему элементу XML – StAX-анализаторы.
В первом случае анализатор строит в памяти дерево объектов, соответствующее XML-документу. Далее вся работа ведется именно с этим деревом. Во втором случае анализатор работает следующим образом: когда происходит анализ документа, анализатор вызывает методы, связанные с различными участками XML-файла, а программа, использующая анализатор, решает, как реагировать на тот или иной элемент XML-документа. Так, анализатор будет генерировать событие о том, что он встретил начало документа либо его конец, начало элемента либо его конец, символьную информацию внутри элемента и т.д.
StAX работает как Iterator, который указывает на наличие элемента с помощью метода hasNext() и для перехода к следующей вершине использует метод next().
Когда следует использовать DOM-, а когда – SAX, StAX -анализаторы?
DOM-анализаторы следует использовать тогда, когда нужно знать структуру документа и может понадобиться изменять эту структуру либо использовать информацию из XML-файла несколько раз.
SAX/StAX-анализаторы используются тогда, когда нужно извлечь информацию о нескольких элементах из XML-файла либо когда информация из документа нужна только один раз.
DOM – это специальная, языково-независимая интерфейсная модель разбора XML и HTML документов. Существует три уровня моделей DOM: DOM Level 1 – описывает основные интерфейсы, DOM Level 2 – вводит дополнение XML Namespaces, DOM Level 3 – определяет методы Load и Save.
Модель DOM Level 1 – описана выше.
Модель DOM Level 2 вводит использование стилевых таблиц, определяет модель сообщений и XML Namespaces. В сущности namespaces (пространства имен) используются для того чтобы разрешить многократный доступ к словарям XML при этом используясь в одном XML документе. Для того чтобы присвоить какому либо элементу универсальный идентификатор нужно к тегу стоящему выше его по иерархии DOM добавить параметр вида "xmlns:indentefier="URI", где indentefier это имя идентификатора, а URI – сам идентификатор. Для его использования надо к используемому элементу добавить спереди имя идентификатора indentefier и двоеточие.
<?xml version="1.0"?>
<html xmlns:xhtml="www.w3c.org/tr/xhtml"
xmlns:books="www.piter-press.ru">
<xhtml:title>Это заголовок документа XHTML</xhtml:title>
<book>
<books:title>А здесь должен быть заголовок книжки</books:title>
</book>
</html>
В даном случае в корневом теге <html> описано два пространства имен – xhtml и books. Теперь в этом документе можно использовать одни и те же элементы, но с разным значением, ставя перед ними имя пространства имен и двоеточие.
DOM Level 3
На данный момент это последняя версия DOM. Спецификация этой модели состоит из трех частей: DOM3-ASLS, DOM3-Core, DOM3-Events, DOM3-XPath.
DOM ASLS (Abstract Schemas and Load and Save specification) – эта спецификация определяет схемы DTD и XML Schemas, а также методы Load and Save. Методы LoadandSave, как можно догадаться из названия должны загружать и сохранять содержимое DOM-модели. Спецификация DOM3 Events – описывает модель сообщений и в основном базируется на DOM2 Events. Особенного внимания заслуживает спецификация DOM3-XPath. Эта спецификация определяет простой набор интерфейсов для доступа к дереву DOM через XPath 1.0.
SAX 2.0 (Simple API for XML)
Когда мы не собираемся работать со структурой xml документа, добавлять и удалять элементы и т.п., построение дерева DOM объектов парсером излишне. На это тратиться время и память. Для подобных случаев предусмотрен упрощенный API для разбора xml документа основанный на событиях разбора. Например, пусть парсер встретил начало xml элемента, т.е. открывающий тег. Тогда парсер генерирует соответствующее событие. Далее приложение по своему усмотрению может обработать его на основе полученной информации, например, имени элемента.
Метод |
Описание |
documentLocator |
Метод, возвращающий имя файла, путь или URL обрабатываемого документа XML |
startDocument |
Метод, вызываемый при достижении обработчиком начала Объекта XMLdocument |
endDocument |
Метод, вызываемый при достижении обработчиком конца Объекта XMLdocument |
startElement |
Метод, вызываемый при достижении обработчиком открывающего дескриптора элемента |
endElement |
Метод, вызываемый при достижении обработчиком закрывающего дескриптора элемента |
characters |
Метод, вызываемый при достижении обработчиком текстовых данных или знаков пробела |
processing Instruction |
Метод, вызываемый при обнаружении инструкции обработки |