Составные документы на основе XML

 

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«КУБАНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

(ФГБОУ ВПО «КубГУ»)

Физико-технический факультет

Кафедра теоретической физики и компьютерных технологий







КУРСОВАЯ РАБОТА

СОСТАВНЫЕ ДОКУМЕНТЫ НА ОСНОВЕ XML














Краснодар 2012

Реферат


Огаркова В.В. СОСТАВНЫЕ ДОКУМЕНТЫ НА ОСНОВЕ XML. Курсовая работа: 27 с., 4 источника.

Объект изучения XML-редактор Serna Free, предназначенный для визуализации и редактирования XML-документов.

Цель работы изучить структуру XML-документа и его редактор Serna Free.

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


Содержание


Введение

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

2.Структура XML-документа

.1 Конструкция языка

.2 Элементы данных

.3 Комментарии

.4 Атрибуты

.5 Специальные символы

.6 Директивы анализатора

.7 CDATA

3.XML-редакторы

4.Редактор Serna Free

.Пример документа XML

Заключение

Список литературы


Введение


В вычислительной технике составной документ - тип документов, обычно создаваемых с использованием текстовых процессоров, это обычный текстовый документ смешанный с, например, таблицами, рисунками, видео, аудио, и другими мультимедийными объектами. Составной документ также может быть использован для собирания нескольких документов в один.

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

Хорошо известные технологии составных документов:

§Object Linking and Embedding (OLE) от Microsoft

§Bonobo от Ximian (впервые использовано в GNOME)

§KParts в KDE

§Open Document Architecture от ITU-T (не используется)

§OpenDoc от Apple Computer (сейчас не используется)

§Verdantium

§XML и XSL - инкапсулирующие форматы, использующиеся для составных документов любых видов

Происхождение идеи составных документов не ясно, но первая публичная реализация была на рабочих станциях Xerox Star, выпущенных в 1981.

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

Составной документ особенно полезен в том случае, когда используется большое количество графики, крупноформатные таблицы или другой материал, которые занимают много места и делают размер файла документа очень большим.

В данной работе будет рассматриваться одна из технологий составных документов, а именно XML.

За недолгое время своего официального существования язык XML привлек к себе уже достаточно много внимания со стороны разработчиков и пользователей Интернет. Сегодня количество приверженцев этой новой технологии возрастает очень стремительно. Несмотря на то, что XML очень молод (международная организация W3C утвердила спецификацию "Extensible Markup Language(XML) 1.0" в начале февраля 1998 г) и отдельные компоненты этого языка находятся еще в стадии доработки, уже сегодня появляются новые языки, созданные на основе XML, возникают многочисленные Web-сервера, использующие эту технологию для организации хранящейся на них информации.

Цель данной работы изучить и предоставить визуализированный XML-документ. В этом нам поможет редактор XML-документов.

Редактор XML - это редактор для языка разметки, функциональность которого позволяет упростить работу с документами в формате XML. Редактировать XML можно и с помощью текстовых редакторов, в которых видно код, однако редакторы XML предлагают дополнительные возможности, такие как автоматическое завершение тегов, а также меню и кнопки для выполнения типичных задач при работе с XML.

Существуют графические редакторы XML, которые скрывают код и представляют контент в более удобном виде. Это позволяет людям, не разбирающимся в коде XML, вводить информацию в документы, основанные на XML, например, в ведомости отработанного времени и отчеты о расходах. Редакторы XML полезны и пользователям, хорошо знакомым с XML, так как применение таких редакторов в любом случае ускоряет разработку XML документов.


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


Язык разметки документов - это набор специальных инструкций, называемых тэгами, предназначенных для формирования в документах какой-либо структуры и определения отношений между различными элементами этой структуры. Тэги языка, или, как их иногда называют, управляющие дескрипторы, в таких документах выделяются относительно основного содержимого документа и служат в качестве инструкций для программы, производящей показ содержимого документа на стороне клиента. В самых первых системах для обозначения этих команд использовались символы < и >, внутри которых помещались названия инструкций и их параметры. Сейчас такой способ обозначения тэгов является стандартным.

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

Самый популярный на сегодняшний день язык гипертекстовой разметки - HTML, был создан специально для организации информации, распределенной в сети Интернет, и является одной из ключевых составляющих технологии WWW. С использованием гипертекстовой модели документа способ представления разнообразных информационных ресурсов в сети стал более упорядочен, а пользователи получили удобный механизм поиска и просмотра нужной информации. является упрощенной версией стандартного общего языка разметки - SGML (Standart Generalised Markup Language), который был утвержден ISO в качестве стандарта еще в 80-х годах. Этот язык предназначен для создания других языков разметки, он определяет допустимый набор тэгов, их атрибуты и внутреннюю структуру документа. Контроль над правильностью использования дескрипторов осуществляется при помощи специального набора правил, называемых DTD-описаниями, которые используются программой клиента при разборе документа. Для каждого класса документов определяется свой набор правил, описывающих грамматику соответствующего языка разметки. С помощью SGML можно описывать структурированные данные, организовывать информацию, содержащуюся в документах, представлять эту информацию в некотором стандартизованном формате. Но в виду некоторой своей сложности, SGML использовался, в основном, для описания синтаксиса других языков (наиболее известным из которых является HTML), и немногие приложения работали с SGML- документами напрямую.

Гораздо более простой и удобный, чем SGML, язык HTML позволяет определять оформление элементов документа и имеет некий ограниченный набор инструкций - тэгов, при помощи которых осуществляется процесс разметки. Инструкции HTML, в первую очередь, предназначены для управления процессом вывода содержимого документа на экране программы-клиента и определяют этим самым способ представления документа, но не его структуру. В качестве элемента гипертекстовой базы данных, описываемой HTML, используется текстовый файл, который может легко передаваться по сети с использованием протокола HTTP. Эта особенность, а также то, что HTML является открытым стандартом и огромное количество пользователей имеет возможность применять возможности этого языка для оформления своих документов, безусловно, повлияли на рост популярности HTML и сделали его сегодня главным механизмом представления информации в Web.

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


<font color="red">rose</font>


программа просмотра будет знать, каким цветом отобразить текст, содержащийся внутри тэгов <font></font> и, вероятно, отобразит его правильно, но ей абсолютно безразлично, в каком месте документа встретился этот тэг, в какие другие тэги заключен текущий фрагмент, существуют ли вложенные в него фрагменты, правильно ли построены отношения между объектами. Такое "безразличие" к структуре документа приводит к тому, что поиск или анализ информации внутри него ничем не будет отличаться от работы со сплошным, не разбитым на элементы текстовым файлом. А это, как известно, не самый эффективный способ работы с информацией.

Другим существенным недостатком HTML можно назвать ограниченность набора его тэгов. DTD-правила для HTML определяют фиксированный набор дескрипторов и поэтому у разработчика нет возможности вводить собственные, специальные тэги. Хотя время от времени появляются новые расширения языка, но долгий путь их стандартизации, сопровождаемый постоянными разногласиями между основными производителями браузеров делают практически невозможной быструю адаптацию языка, его использование для отображения специализированной информации (например, мультимедийной, математических, химических формул и т.д.).

Подводя итог всему сказанному, можно утверждать, что HTML уже сегодня не удовлетворяет в полной мере требованиям, предъявляемым современными разработчиками к языкам подобного рода. И ему на смену был предложен новый язык гипертекстовой разметки, мощный, гибкий, и, одновременно с этим, удобный язык XML. (Extensible Markup Language) - это язык разметки, описывающий целый класс объектов данных, называемых XML-документами. Этот язык используется в качестве средства для описания грамматики других языков и контроля над правильностью составления документов. Т.е. сам по себе XML не содержит никаких тэгов, предназначенных для разметки, он просто определяет порядок их создания. Таким образом, если, например, мы считаем, что для обозначения элемента rose в документе необходимо использовать тэг <flower>; то XML позволяет свободно использовать определяемый нами тэг и мы можем включать в документ фрагменты, подобные следующему:


<flower>rose</flower>


Набор тэгов может быть легко расширен. Если, предположим, мы хотим также указать, что описание цветка должно по смыслу идти внутри описания оранжереи, в которой он цветет, то просто задаем новые тэги и выбираем порядок их следования:


<conservatory>

<flower>rose</flower>

</conservatory>


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

Еще одним из очевидных достоинств XML является возможность использования его в качестве универсального языка запросов к хранилищам информации. Сегодня в W3C находится на рассмотрении рабочий вариант стандарта XML-QL(или XQL), который, возможно, в будущем составит серьезную конкуренцию SQL. Кроме того, XML-документы могут выступать в качестве уникального способа хранения данных, который включает в себя одновременно средства для разбора информации и представления ее на стороне клиента. В этой области одним из перспективных направлений является интеграция Java и XML - технологий, позволяющая использовать мощь обеих технологий при построении машинно-независимых приложений, использующих, кроме того, универсальный формат данных при обмене информации. позволяет также осуществлять контроль над корректностью данных, хранящихся в документах, производить проверки иерархических соотношений внутри документа и устанавливать единый стандарт на структуру документов, содержимым которых могут быть самые различные данные. Это означает, что его можно использовать при построении сложных информационных систем, в которых очень важным является вопрос обмена информацией между различными приложениями, работающими в одной системе. Создавая структуру механизма обмена информации в самом начале работы над проектом, менеджер может избавить себя в будущем от многих проблем, связанных с несовместимостью используемых различными компонентами системы форматов данных.

Также одним из достоинств XML является то, что программы-обработчики XML-документов не сложны и уже сегодня появились и свободно распространяются всевозможные программные продукты, предназначенные для работы с XML-документами. XML поддерживается в IE5. Было заявлено о его поддержке в последующих версиях Netscape Communicator, СУБД Oracle, DB-2, в приложениях MS-Office. Все это дает основания предполагать, что, скорее всего, в ближайшем будущем XML станет основным языком обмена информации для информационных систем, заменив собой, тем самым, HTML. На основе XML уже сегодня созданы такие известные специализированные языки разметки, как SMIL, CDF, MathML, XSL, и список рабочих проектов новых языков, находящихся на рассмотрении W3C, постоянно пополняется.

Язык XSLT применяется для обработки документов, внесения изменений и необходимых дополнений в разметку. Его можно применять для преобразования XML-кода в отформатированный HTML-код, легко воспринимаемый человеком. Можно также преобразовать XML-документ в простой текст или в иной XML-документ с измененной структурой либо даже в документ JavaScript. Язык XSLT обеспечивает доступ к содержимому XML-документов, а также применяется для создания новых документов на их основе. В силу изложенных причин стоит заняться изучением языка XSL.

Чаще выполняется преобразование XML-документов в HTML-документы, именно эта операция рассматривается в примерах данной главы.

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


2. Структура XML-документа


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

Простейший XML-документ может выглядеть так:


<?xml version="1.0"?>

<list_of_items>

<item id="1">

<first/>Первый</item>

<item id="2">Второй <sub_item>подпункт 1</sub_item>

</item><item id="3">Третий</item>

<item id="4"><last/>Последний</item>

</list_of_items>


Этот документ очень похож на обычную HTML-страницу. Так же, как и в HTML, инструкции, заключенные в угловые скобки называются тэгами и служат для разметки основного текста документа. В XML существуют открывающие, закрывающие и пустые тэги (в HTML понятие пустого тэга тоже существует, но специального его обозначения не требуется).

Тело документа XML состоит из элементов разметки(markup) и непосредственно содержимого документа - данных(content). XML - тэги предназначены для определения элементов документа, их атрибутов и других конструкций языка.

Любой XML-документ должен всегда начинаться с инструкции <?xml?>, внутри которой также можно задавать номер версии языка, номер кодовой страницы и другие параметры, необходимые программе-анализатору в процессе разбора документа.

В общем случае XML-документы должны удовлетворять следующим требованиям:

·В заголовке документа помещается объявление XML, в котором указывается язык разметки документа, номер его версии и дополнительная информация;

·Каждый открывающий тэг, определяющий некоторую область данных в документе обязательно должен иметь закрывающий тэг;

·В XML учитывается регистр символов;

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

·Вложенность тэгов в XML строго контролируется, поэтому необходимо следить за порядком следования открывающих и закрывающих тэгов;

·Вся информация, располагающаяся между начальным и конечными тэгами, рассматривается в XML как данные, и поэтому учитываются все символы форматирования (т.е. пробелы, переводы строк, табуляции не игнорируются, как в HTML).

Если XML-документ не нарушает приведенные правила, то он называется формально-правильным и все анализаторы, предназначенные для разбора XML- документов, смогут работать с ним корректно. Однако кроме проверки на формальное соответствие грамматике языка, в документе могут присутствовать средства контроля над содержанием документа, за соблюдением правил, определяющих необходимые соотношений между элементами и формирующих структуру документа. Для того, чтобы обеспечить проверку корректности XML- документов, необходимо использовать анализаторы, производящие такую проверку и называемые верифицирующими. На сегодняшний день существует два способа контроля правильности XML-документа: DTD - определения(Document Type Definition) и схемы данных(Semantic Schema). В отличии от SGML, определение DTD-правил в XML не является необходимостью.

2.1 Конструкции языка


Содержимое XML-документа представляет собой набор элементов, секций CDATA, директив анализатора, комментариев, спецсимволов, текстовых данных.


.2 Элементы данных


Элемент - это структурная единица XML-документа. Заключая слово rose в в тэги <flower> </flower> , мы определяем непустой элемент, называемый <flower>, содержимым которого является rose. В общем случае в качестве содержимого элементов могут выступать как просто какой-то текст, так и другие, вложенные, элементы документа, секции CDATA, инструкции по обработке, комментарии, - т.е. практически любые части XML-документа. Любой непустой элемент должен состоять из начального, конечного тэгов и данных, между ними заключенных. Например, следующие фрагменты будут являться элементами:


<flower>rose</flower>

<city>Saratov</city>


Набором всех элементов, содержащихся в документе, задается его структура, и определяются все иерархическое соотношения. Плоская модель данных превращается с использованием элементов в сложную иерархическую систему с множеством возможных связей между элементами. Производя в последствии поиск в этом документе, программа клиента будет опираться на информацию, заложенную в его структуру - используя элементы документа. Поиск при этом, естественно, будет гораздо более эффективен, чем нахождение нужной последовательности по всему документу. В XML документе, как правило, определяется хотя бы один элемент, называемый корневым и с него программы-анализаторы начинают просмотр документа. В некоторых случаях тэги могут изменять и уточнять семантику тех или иных фрагментов документа, по разному определяя одну и ту же информацию и тем самым предоставляя приложению-анализатору этого документа сведения о контексте использования описываемых данных. Например, прочитав фрагмент <city>Holliwood</city> мы можем догадаться, что речь в этой части документа идет о городе, а вот во фрагменте <restaurant>Holliwood</restaurant> - о забегаловке. В случае, если элемент не имеет содержимого, т.е. нет данных, которые он должен определять, он называется пустым. Примером пустых элементов в HTML могут служить такие тэги HTML, как <br>, <hr>, <img>.


.3 Комментарии


Комментариями является любая область данных, заключенная между последовательностями символов <!-- и --> Комментарии пропускаются анализатором и поэтому при разборе структуры документа в качестве значащей информации не рассматриваются.


.4 Атрибуты


Если при определении элементов необходимо задать какие-либо параметры, уточняющие его характеристики, то имеется возможность использовать атрибуты элемента. Атрибут - это пара "название" = "значение", которую надо задавать при определении элемента в начальном тэге. Пример:


<color RGB="true">#ff08ff</color>

<color RGB="false">white</color>

или


<author id=0>Ivan Petrov</author>


2.5 Специальные символы


Для того, чтобы включить в документ символ, используемый для определения каких-либо конструкций языка (например, символ угловой скобки) и не вызвать при этом ошибок в процессе разбора такого документа, нужно использовать его специальный символьный либо числовой идентификатор. Например, &lt; , &gt; &quot; или &#036;(десятичная форма записи), &#x1a (шестнадцатеричная) и т.д. Строковые обозначения спецсимволов могут определяться в XML документе при помощи компонентов (entity).


.6 Директивы анализатора


Инструкции, предназначенные для анализаторов языка, описываются в XML документе при помощи специальных тэгов - <? и ?>;. Программа клиента использует эти инструкции для управления процессом разбора документа. Наиболее часто инструкции используются при определении типа документа (например, <? Xml version=1.0?>) или создании пространства имен.


.7 CDATA


Чтобы задать область документа, которую при разборе анализатор будет рассматривать как простой текст, игнорируя любые инструкции и специальные символы, но, в отличии от комментариев, иметь возможность использовать их в приложении, необходимо использовать тэги <![CDATA] и ]]>. Внутри этого блока можно помещать любую информацию, которая может понадобится программе- клиенту для выполнения каких-либо действий (в область CDATA, можно помещать, например, инструкции JavaScript).

программа документ визуальный редактор


3. XML-редакторы


Для создания XML-документов требуется стандартный текстовый редактор, например vi, emacs, pico, BBEdit для платформы Macintosh, SimpleText, Windows Notepad или Windows WordPad. По умолчанию предполагается, что при написании XML-документов используется стандарт Unicode, хотя фактически может применяться ASCII (по крайней мере, последняя кодировка применялась чаще всего в недавнем прошлом). Убедитесь в том, что созданный XML-документ был сохранен в обычном текстовом формате редактора.

Написание ХМL-кода значительно упрощается в случае использования специализированного XML-редактора. Ниже приводится перечень наиболее распространенных программ:

.Adobe FrameMaker- фирма Adobe предлагает расширенную, но дорогостоящую поддержку XML в своей программе FrameMaker.

.XML Prо - сложный в применении, но мощный XML-редактор.

.XML Writer- цветовое выделение синтаксиса, приятный для глаза интерфейс.

.XML Notepad - бесплатно распространяемый редактор XML-кода от фирмы Microsoft, хотя его применение несколько затруднительно.

.eNotepad - заменитель WordPad, хорошо обрабатывающий XML-код, которому присущ тщательно продуманный пользовательский интерфейс.

.XML Spy - хорошо продуманный пользовательский интерфейс, который прост в применении.

7.Serna Free - XML редактор Serna обладает интуитивно-понятным и удобным интерфейсом пользователя и во многом напоминает традиционный текстовый редактор.


4. Редактор Serna Free


Графические редакторы с графическим пользовательским интерфейсом считаются более легкими в применении, чем текстовые редакторы, и могут не требовать знания синтаксиса XML. Такие редакторы часто называют визуальными, или WYSIWYG, но не все графические редакторы являются визуальными - существуют также графические редакторы типа WYSIWYM («Ты видишь то, что имеешь в виду»). Графические редакторы XML называются WYSIWYM, когда они стараются отобразить фактическое значение элементов XML. WYSIWYM редакторы не отображают графически конечный вид документа, а вместо этого фокусируются на передаче смысла текста. Они используют DTD или схемы XML и/или конфигурационные файлы, чтобы отображать элементы XML с помощью графических компонентов.

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

Визуальные редакторы (WYSIWYG) позволяют редактировать файлы напрямую, отображая теги не в виде кода, а в виде графического изображения. Зачастую визуальные редакторы пытаются эмулировать конечный результат некоторой трансформации или применения стиля CSS.

Неосмысленное использование визуального редактора может привести к созданию документов, не обладающих семантикой, присущей определённому языку XML. Такое происходит, когда пользователь сосредоточен на попытке добиться определенного визуального представления с помощью редактора, а не использует визуальный редактор для упрощения редактирования документа. Например, кто-то создает веб-страницу и использует элемент H2 (значение: заголовок второго уровня) вместо H1 (значение: заголовок первого уровня), потому что он отображается более мелким шрифтом в текущем используемом визуальном редакторе. В данном случае автор делает выбор на основе видимого визуального представления, но посетитель веб-сайта может увидеть это отображенным по-другому в своем браузере.

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

Обычно визуальные редакторы поддерживают CSS, а не XSLT, так как трансформации XSLT могут быть очень сложными, и бывает невозможно понять, что имел в виду пользователь при смене конечного результата. Визуальные редакторы с поддержкой XSLT, среди которых можно выделить редактор Syntext Serna, вносят изменения непосредственно в исходный код XML и обновляют отображаемый вид документа, запуская XSLT для каждого изменения.

Serna Free - определенно лучший выбор, если вы ищете бесплатный визуальный XML редактор с открытым кодом для использования в личных, образовательных или других некоммерческих целях.редактор Serna использует настраиваемые шаблоны XML документов, чтобы вы могли проще создавать и открывать документы. Документы можно открыть одним щелчком мыши, так как Serna автоматически определяет XML шаблон для данного типа XML документа и применяет соответствующую XML схему, таблицу стилей XSL для его отображения и т.д.

XML редактор Serna поставляется с готовыми шаблонами для XML документов различных популярных XML форматов - DITA, Docbook, Docbook Lite, TEI, XHTML, GCA proceedings и NITF. Вы можете создать XML шаблоны для своих собственных XML форматов или изменить существующие шаблоны для своего удобства.шаблон может содержать множество параметров, среди которых способ ассоциации шаблона с XML документом, стиль XSLT/XSL-FO для отображения документа, XML схема, список разрешенных корневых элементов, внешние приложения для публикации и многое другое.

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

Зачастую количество элементов в промышленных DTD и схемах очень велико, и это мешает писателю, который работает над небольшой задачей. В XML редакторе Syntext Serna есть возможность указать элементы с атрибутами, которые не должны показываться пользователю в списке разрешенных для вставки элементов и атрибутов при работе с электронными документами определенного типа.

Шаблоны документов написаны в формате XML. Для удобства пользователей, XML редактор Serna включает в себя таблицу стилей XSL и XML схему для создания и редактирования шаблонов XML документов.

Визуальный XML редактор Serna использует таблицы стилей XSLT/XSL-FO для отображения XML документов в близком к печатному виде. Такой подход не только облегчает процесс написания XML документов, но и скрывает от автора сложности технологии XML. Гибкость отображения и профилированные виды документа упрощают работу писателей со сложными XML документами.

В XML редакторе Serna используется единственная в мире кросс-платформенная реализация отображения документов при помощи языка преобразований XSLT и языка стилей XSL-FO, выполненная на языке С++.

Практически полная реализация стандарта языка преобразований XSLT и поддержка большинства инструкций XSL-FO позволяет использовать в XML редакторе Serna готовые стили для публикации XML документов с минимальными изменениями. Например, при отображении XML документов формата Docbook используется слегка модифицированный стиль, созданный Норманом Уолшем (Norman Walsh) для публикации Docbook XML в PDF.

В XML редакторе Serna язык преобразований XSLT используется для трансформации редактируемого XML документа в формат XSL-FO для последующего отображения на экране. Все это происходит на лету, незаметно для пользователя, однако возможности, которые дает такой подход, переоценить невозможно.

Язык преобразований XSLT позволяет трансформировать XML документ различными способами, добавить искусственно созданный и локализованный контент по определенным правилам (например, подсказки для писателей), показать или спрятать часть контента, и многое другое. В XML редакторе Serna полностью поддержан стандарт XSLT версий 1.0 и 1.1, за исключением xsl:key, xsl:number при значении count-level ANY иxsl:output.

В XML редакторе Serna можно изменять значения параметров языка преобразований XSLT и переключаться между наборами параметров в процессе редактирования документа. Например, можно изменить размеры шрифта или переключить режимы редактирования мета-данных в XML документах Docbook.

Традиционно язык XSL-FO применяется в связке с языком преобразований XSLT для конвертации XML в PDF. В XML редакторе Serna язык XSL-FO используется для отображения XML документов в процессе их редактирования. Это позволяет отображать XML документы максимально похожими на их опубликованную версию.редактор Serna поддерживает большинство основных инструкций XSL-FO и некоторые инструкции из расширенного и полного наборов, такие как списки и таблицы. Поддерживаются таблицы CALS, XSL-FO и HTML.редактор Syntext Serna дает возможность любому человеку принимать участие в создании структурированного XML контента, вне зависимости от опыта работы с XML.

Режимы работы c XML документами

·Режим визуальный (WYSIWYG).Этот режим очень близок к обычному текстовому редактору. Отображение электронного документа XML очень близко к печатному виду.

·Режим разметки. Хотя таблицы стилей XSL приводят XML документ к лучшему виду без отображения XML разметки, иногда требуется посмотреть на XML теги, например, редактируя документы-скрипты или произвольные XML файлы (для которых нет специальной таблицы стилей и/или схемы XML), преобразованные с помощью таблицы стилей XSL по умолчанию.

·Текстовый режим. Текстовый режим с подсветкой синтаксиса XML удобен, когда XML редактор Serna не может проанализировать XML документ или когда необходимо продвинутое вмешательство (особое редактирование XML кода, такое как вручную исправить неправильный XML документ, изменить объявление DOCTYPE и так далее).

Поддержка больших XML документов

·Автоматическое свертывание больших XML документов.XML редактор Serna старается определить размер XML документа, который вы открываете. Если размер очень большой, то Serna может открыть данный XML документ свернутым, чтобы сэкономить время и объем памяти компьютера. Пользователь сможет при необходимости развернуть определенную часть XML документа и работать с ней.

·Список сворачиваемых элементов в большом XML документе. Можно указать, какие элементы должны быть свернуты в определенном типе XML документа, если документ большой.

·Плотность элементов и критерии больших XML документов. Можно указать, сколько элементов обычно содержится на странице определенного типа XML документа. Также можно задать количество страниц, начиная с которого документ будет считаться большим.

Проверка орфографии в XML редакторе Serna осуществляется при помощи библиотеки словарей Aspell и доступна для всех языков, которые поддерживаются Aspell (около 30 языков). Однако, только английский язык включен в дистрибутив. Пользователи могут скачать дополнительные словари по желанию.

·Настраиваемые пользователем словари. Пользователи могут создавать свои собственные словари (добавлять слова в словари) в процессе проверки орфографии.

·Пропуск элементов. Serna позволяет пропускать не только слова, но и весь текущий элемент целиком (удобно для таких элементов, как program listing - распечатка кода).

·Язык для проверки орфографии зависит от контекста. Корректор орфографии автоматически сменяет орфографический словарь, ориентируясь на значения атрибутов xml:lang и lang.


5. Пример программы XML


Приведем пример законченного XML-документа, содержащего прейскурант книжного магазина.


<?xml version=1.0encoding=windows-1251standlone=yes?>

<!DOCTYPE bookstore[

<!ENTITY po поэзия>

<!ENTITY pr проза>

<!ENTITY dr драматургия>

]>

<!-Этот файл содержит фрагмент базы данных книжного магазина-->

<bookstore>

<book genre=?>

<title>Марш обреченных</title>

<author>

<first-name>Сергей</first-name>

<last-name>Довлатов</last-name>

</author>

<price>60.00</price>

</book>

<book genre="&po;">

<title>Часть речи</title>

<author>

<first-name>Иосиф</first-name>

<last-name>Бродский</last-name>

</author>

<price>55.00</price>

</book>

<book genre="&dr;">

<title>Антигона</title>

<author>

<name>Софокл</name>

</author>

<price>103.50</price>

</book>

</bookstore>


Заключение


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

Процесс создания XML документа очень прост и требует лишь базовых знаний.редактор Syntext Serna (Serna Free) дает возможность любому человеку принимать участие в создании структурированного XML контента, вне зависимости от опыта работы с XML.


Список использованных источников


1.Рей Э. Изучаем XML/ Э. Рей - Спб.: Символ-Плюс, 2001.- 403 с.

.Кузнецов С. Мифы и реальности XML/ С. Кузнецов - ИСП РАН, Центр информационных технологий, 2000.

3.Serna Free. XML-редактор - Все о продукте.

.Гарольд Э.Р. XML справочник / Э.Р. Гарольд, У. Скотт Минс - Спб.: Символ-Плюс, 2002. - 574 с.


МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образован

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ