Обзоры Обзоры 20.10.2003 в 21:00 comment

XML в офисе

author avatar
https://secure.gravatar.com/avatar/2f8d57cddfeb455ba418faa11ee01bb0?s=96&r=g&d=https://itc.ua/wp-content/uploads/2023/06/no-avatar.png *** https://secure.gravatar.com/avatar/2f8d57cddfeb455ba418faa11ee01bb0?s=96&r=g&d=https://itc.ua/wp-content/uploads/2023/06/no-avatar.png *** https://itc.ua/wp-content/themes/ITC_6.0/images/no-avatar.svg

ITC.UA

автор

Оба подхода оказались востребованными и нашли свои ниши — структурный применяется
в специализированных системах (в том же TeX) и Web, "фристайл" прекрасно
прижился на наших рабочих местах. Там, где было нужно нечто среднее, постепенно
придумали частные решения. Скажем, использование предопределенных стилей заголовков
в Microsoft Word позволяет работать именно со структурой документов, автоматически
собирать оглавления и т. д.

Цель или самоцель?

XML в офисе
XML-cхемы обеспечивают не
только средства разметки, но и правила проверки введенных данных

Кажется, больше не из-за чего копья ломать,
однако с недавних пор все разработчики офисных пакетов в один голос ратуют не
просто за поддержку XML (что было бы совершенно понятно), а за использование этого
формата в качестве базового. Тут вам и Corel, и Sun/OpenOffice.org, и, фактически
с сегодняшнего дня, Microsoft. Наверняка каждая компания преследует какие-то свои
цели, однако во многих случаях они так и остаются неизвестными простым смертным.
Скажем, совершенно очевидна полезность импорта/экспорта XML-документов в электронных
таблицах и программах баз данных. В Access 2003, к примеру, можно получить не
только XML-представление какой-либо таблицы, но и готовую описывающую ее схему
(XSD). Несомненно, удобен XML и для обмена данными между разнородными приложениями,
тем более что с недавних пор он фактически принят de facto в качестве стандарта
в этой области. Но зачем XML в текстовом процессоре?

На самом деле аргументов выдвигается немало, но до большинства из них конечному пользователю нет никакого дела. Так, сторонники открытого ПО утверждают, что plain-text-формат по всем показателям лучше бинарного — с точки зрения и переносимости, и надежности, и по многим другим причинам. Парадокс же состоит в том, что SXW-файл (текстовый документ OpenOffice.org) представляет собой обычный ZIP-архив (мера эта вынужденная, поскольку в XML слишком велики "накладные расходы"). Внутри действительно находится plain text, но "снаружи" он самый что ни на есть бинарный. При этом как раз архивы особенно чувствительны к повреждению (нарушению целостности), ведь вполне возможно, что тогда не просто будет потеряна часть информации, а ее вовсе не получится извлечь. С другой стороны, "добыть" хотя бы текст из испорченного DOC-файла можно практически всегда.

XML в офисе
Работа с XML-структурой настолько
проста и интуитивна, что не отпугнет даже начинающего пользователя

Сам факт применения XML подразумевает открытость спецификации документа, благодаря
чему вроде бы заметно упрощается создание конвертеров, а кое-где от них и вовсе
удается отказаться. Уже сейчас обычные броузеры могут использоваться в качестве
примитивных программ просмотра. Однако пока при этом возникают многочисленные
нюансы. Скажем, относительно свежие версии Opera и Mozilla уверенно отображают
неформатированный текст из XML-документов Word 2003 и OpenOffice.org (CONTENT.XML,
содержащихся внутри каждого SXW-файла), тогда как Internet Explorer в первом случае
(в отсутствие Word 2003) выводит всю XML-структуру целиком, а во втором — сообщение
об ошибке (судя по всему, из-за "кросс-платформенного" оформления ссылок).
Для действительно качественной визуализации различных офисных документов в броузерах
и других приложениях необходима поддержка специализированных языков разметки,
таких, как WordML в случае Word 2003, реализовать которую непросто.

Тем не менее в последнее время стали появляться и более красивые примеры, наглядно демонстрирующие, что усилия разработчиков офисных приложений не пропадут даром. С одним из них мы уже знакомили наших читателей — в статье о новой версии FineReader 7. Данный продукт умеет сохранять оцифрованные документы в XML-формате Word 2003, дополняя их собственными тегами. Благодаря этому в процессе редактирования на специальной панели выводится фрагмент бумажного оригинала, соответствующий позиции курсора в окне Word 2003. Следует, однако, отметить, что размеры подобных документов весьма велики, из-за чего в FineReader 7 и предусмотрена функция удаления вспомогательной информации. Это же является одной из главных причин, почему XML не стал основным форматом в Word 2003. В "конторской" среде размер пока еще имеет значение…

Онлайн-курс Frontend-разробник від Powercode academy.
Курс на якому ти напишеш свій чистий код на JavaScript, попрацюєш із різними видами верстки, а також адаптаціями проектів під будь-які екрани. .
Зарееструватися

Разработчики могут. Пользователи не должны

XML в офисе
Средства защиты документа
очень пригодятся при работе с XML-структурой

Microsoft, конечно же, не была бы сама
самой, если бы оставила реализацию столь многообещающих идей полностью на откуп
сторонним разработчикам. В действительности Word 2003 содержит несколько чрезвычайно
интересных механизмов, "завязанных" именно на XML. Впрочем, познакомиться
с ними воочию смогут далеко не все, поскольку дополнительная XML-функциональность
будет распространяться только в профессиональной версии Office 2003. И это вовсе
не случайно. Непосредственно конечным пользователям XML как инструмент структурирования
вряд ли нужен. Зато с его помощью можно создавать технологичные (т. е. легко обрабатываемые)
документы-формы или даже "сквозные" системы документооборота, когда
сам пользователь или оператор (но не дизайнер или программист) выполняет часть
работы по окончательной разметке текста/данных.

Мы не случайно главное внимание уделяем именно текстовым процессорам, и конкретно Word 2003 (поскольку главная тема сегодня — Office 2003). XML в той или иной мере находит применение в различных офисных приложениях (скажем, концепция "умных" документов присутствует и в Excel 2003), но наиболее полно и наглядно эта функциональность реализована именно в Word 2003.

Более того, Microsoft прямо объявляет: "Word 2003 — программная платформа для создания XML-решений. Она позволяет создавать структурированные документы и шаблоны, которые систематизируют и обрабатывают ввод с помощью XML. При этом конечные пользователи могут по-прежнему наслаждаться богатыми и привычными возможностями редактирования вроде автозамены, проверки правописания, контроля за изменениями. Другими словами, они могут продолжать применять Word 2003 так же, как и прежде. Им нет необходимости знать что-либо о XML, чтобы пользоваться его поддержкой в Word 2003".

Онлайн-курс Frontend-разробник від Powercode academy.
Курс на якому ти напишеш свій чистий код на JavaScript, попрацюєш із різними видами верстки, а також адаптаціями проектів під будь-які екрани. .
Зарееструватися

Неудивительно также, что приведенная цитата взята из материалов, размещенных на сайте Microsoft для программистов. Именно там следует искать самые интересные технические статьи об Office 2003 и дополнительные ресурсы наподобие различных SDK, примеров применения, справочных материалов и пр. Безусловно, XML нужен и важен в первую очередь для разработчиков.

XML изнутри

Работая в Office 2003 — с формами InfoPath или теми же оцифрованными документами FineReader 7, — пользователь даже не задумывается об их внутренней организации. Однако в более сложных случаях с XML и структурным подходом вообще познакомиться все же придется.

Использование любой XML-функциональности в Word 2003 начинается с присоединения схемы, XSD-файла, соответствующего спецификации XML Schema (сам WordML сформирован таким же образом). В ней описаны теги, с помощью которых размечается документ. Процесс этот достаточно простой, вся иерархия атрибутов располагается на специальной панели задач XML Structure — достаточно выделять необходимые фрагменты и щелкать по подходящим тегам.

Чего таким образом можно добиться? Прежде всего действительно разметить документ (отдельные фрагменты), что принципиально упростит его последующую автоматическую обработку. Если раньше для этого требовалось самое тщательное оформление (специальные стили для каждого атрибута, определенный порядок их следования и т. д.), то теперь авторам предоставляется полная свобода — новая объектная модель XML обеспечивает чрезвычайно простой программный доступ к любым элементам.

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

Более того, схема (XSD) может содержать определенные ограничения для содержимого различных тегов, например количество символов или диапазон дат, список допустимых адресатов и т. п. Word 2003 автоматически выполнит необходимые проверки, пометит ошибки на панели XML Structure и выдаст подсказки, что именно сделано неправильно. Таким образом, некоторая довольно полезная функциональность реализуется даже без программирования. Важно и то, что готовые документы допускается сохранять несколькими различными способами: в WordML с учетом новых тегов; только привнесенную структуру (т. е. "просто" в XML) либо собственно введенные данные — каждый хорош для определенных применений.

В некотором смысле венцом XML-технологии являются "умные" документы, создаваемые не только для Word 2003, но и для Excel 2003. На самом деле "интеллект" содержится не в них самих, а в специальной DLL, которая должна быть подключена к приложению в составе XML Expansion Pack. Библиотека, в свою очередь, ассоциируется с конкретной XML-схемой (XSD) и предоставляет контекстно-зависимую функциональность — специфическую для каждого тега. На практике это может выглядеть как еще одна панель задач, призванная, скажем, упростить заполнение формы и выдающая соответствующие подсказки, демонстрирующая пользователю наложенные ограничения, обеспечивающая выбор из списков. В общем, хватило бы фантазии.

Естественно, создание "умных" документов — дело программиста. Однако никаких особых инструментов для этого ему не потребуется — вполне подойдет даже Visual Basic 6, не говоря уже о более современных средствах разработки. Достаточно лишь загрузить с сайта Microsoft и установить необходимые SDK. Нет недостатка и в документации. Остается только дождаться появления новых оригинальных расширений Office 2003, которые превратят приложения пакета в настоящих "интеллектуальных" помощников.

Продолжается конкурс авторов ИТС. Напиши статью о развитии игр, гейминг и игровые девайсы и выигрывай профессиональный игровой руль Logitech G923 Racing Wheel, или одну из низкопрофильных игровых клавиатур Logitech G815 LIGHTSYNC RGB Mechanical Gaming Keyboard!


Loading comments...

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: