Структура документа. Представление документа в РОМИП представляет собой XML документ. В этом документе различаются три основные части: -- Описание исходного документа в коллекции РОМИП, -- Список исходящих ссылок из исходного документа, -- Адаптированный текст исходного документа. В случае представления множества документов одним описанием некоторые части первого раздела могут быть объединены в общем заголовке. Описание исходного документа. В разделе описания документа содержится информации как о самом документе так и о его регистрации в РОМИП. Этот раздел, в свою очередь, делится на две части: первая относится собственно к отношениям документа и коллекции, вторая же напротив содержит мета информацию о исходном документе. Элементами первой части этого раздела являются такие данные как идентификатор документа и идентификатор коллекции или коллекций к которым он относится. Вторая часть описания содержит всевозможную информацию, которую можно извлечь из исходного документа. Такой информацией является заголовок документа, его автор, включённые в описание ключевые слова вынесенные в раздел метаданных, дата последней модификации и размер исходного файла. Раздел ссылок. Список ссылок документа вынесен в отдельный раздел описания по двум причинам: часто анализ структуры ссылок не требует анализа самого текста и в этом случае наличие такого раздела резко сокращает количество необходимой для этого работы. Вторая цель такой организации связана с потерей некоторых данных в процессе переформатирования документа (см. раздел текст документа) в частности такие данные как JavaScript или ImageMap не входят в множество разметки, но при этом могут содержать дополнительные ссылки, полезные при анализе. Текст документа. Для представления текста исходного документа было выбрано подмножество языка XHTML состоящие из следующих модулей (более подробно см. XHTML 1.1. Module-based XHTML http://www.w3.org/TR/2001/xhtml11): Text module List module Hypertext module Presentation module Table module Image module Base module Такое ограничение связано с тем, что представленное множество практически полностью покрывает разметку текстовых данных, а так же большинство ссылок, поддающихся простому анализу, в отличии от ссылок применяющихся в таких секциях как script или image map. Для элементов исходного документа, не относящихся к этому множеству применяется адекватное преобразование в это множество. В случае отсутствия такого преобразования элементы опускаются. Ссылки. В РОМИП в отличии от других семинаров по тестированию применяется более сложная система кодирования ссылок, учитывающее как исходное расположение документа так и его тип. Для сохранения структуры ссылок используется механизм кодирования ссылки по частям. Для этого ссылка разделяется на составные части, такие как: имя веб сервера, первый подкаталог считая от корня, второй, и т.п.. Далее полученные части независимо кодируются и затем складываются в прежнем порядке. Необходимость кодирования ссылок обуславливается возможностью получения по некодированной ссылке дополнительной информации, такой как содержание документа, доступного по ссылке, если этот документ не содержится в коллекции. Реализация этой возможности напрямую зависит от ресурсов доступных участникам, что ставит их в неравные условия. Пространства имён. В РОМИП принято различать теги, относящиеся к различным частям РОМИП с помощью механизма пространств имён. Так же этот механизм удобен для разделения информации относящейся к РОМИП и являющийся внешней. Так на сегодняшний момент используются следующие пространства имён: http://www.romip.ru/data/common --- общие для всех треков данные http://www.romip.ru/data/track/name --- данные, специфичные для конкретного трека. http://www.w3.org/1999/xhtml --- стандартное пространство имён XHTML.