XFA (также известный как формы XFA ) означает архитектуру XML-форм , семейство проприетарных спецификаций XML, которые были предложены и разработаны JetForm для улучшения обработки веб-форм . Его также можно использовать в файлах PDF, начиная со спецификации PDF 1.5. На спецификацию XFA ссылаются как на внешнюю спецификацию, необходимую для полного применения спецификации ISO 32000-1 (PDF 1.7). В XML Forms Architecture не стандартизованы в качестве ISO стандарта, [3] и является устаревшим в PDF 2.0. [4]
Расширение имени файла | .pdf, .xdp |
---|---|
Тип интернет-СМИ | приложение / pdf, приложение / vnd.adobe.xdp + xml [1] |
Разработано | JetForm (приобретена Adobe Systems в 2002 г.) |
Первый выпуск | 1999 г. |
Последний релиз | 3.3 (9 января 2012 ) |
Контейнер для | PDF , XML |
Содержится | PDF , XDP , FCDT [2] |
Расширен с | XML , XHTML , CSS , XSL-FO , PDF |
Стандарт | Нет |
Открытый формат ? | Нет |
Веб-сайт | Архитектура форм Adobe XML |
Обзор
Основное расширение XFA для XML - это вычислительно активные теги. Кроме того, все экземпляры, созданные из заданного шаблона формы XFA, сохраняют спецификацию правил сбора, рендеринга и обработки данных из оригинала. Еще одно важное преимущество XFA заключается в том, что его формат данных обеспечивает совместимость с другими системами, а также с изменениями в других технологиях, приложениях и технологических стандартах.
Согласно представлению JetForm Консорциуму World Wide Web , «XFA удовлетворяет потребности организаций в безопасном захвате, представлении, перемещении, обработке, выводе и печати информации, связанной с электронными формами». [5] Предложение XFA было представлено W3C в мае 1999 года.
В 2002 году корпорация JetForm была приобретена Adobe Systems , и последняя представила формы XFA с PDF 1.5 и последующими выпусками Acrobat (6 и 7) в 2003 году [6].
Формы XFA сохраняются внутри в файлах PDF или в файлах XDP ( XML Data Package ), которые можно открыть в программе Adobe LiveCycle Designer. XDP может упаковать файл PDF вместе с данными формы и шаблона XML. [7] XDP предоставляет механизм для упаковки компонентов формы в окружающий контейнер XML.
Хотя XFA может использовать PDF, XFA не привязан к определенному языку описания страницы.
Спецификация XFA включает приложение, в котором обсуждаются детали специфической для Adobe реализации XFA и поведения продуктов Adobe, которые отклоняются от спецификации XFA.
Данные, заполненные в форме XFA, могут быть отправлены на хост с использованием операции HTTP POST в формате XDP, формате PDF, формате XFDF, формате XML 1.0 или в формате с кодировкой URL.
XFA поддерживает использование XSLT для преобразования данных XML перед их загрузкой в DOM данных XFA или после выгрузки из DOM данных XFA.
Один из подходов XFA к разбиению на страницы дублирует логику разбиения на страницы и большую часть синтаксиса XSL-FO.
Формы XFA являются синонимом SmartForms в правительстве Австралии.
Статические и динамические формы
XFA определяет статические формы (начиная с XFA 2.0 и ранее) и динамические формы (начиная с XFA 2.1 или 2.2).
В статической форме внешний вид и макет формы фиксированы, независимо от содержимого поля. В форме присутствуют любые незаполненные поля. По умолчанию статические формы не требуют повторного рендеринга. XFA распознает два типа статических форм: «статические формы старого стиля» (с использованием «полного XFA») и XFAF (подмножество полного XFA, определенного начиная с XFA 2.5).
Динамические формы (определенные начиная с XFA 2.1 или 2.2) могут изменяться по внешнему виду несколькими способами в ответ на изменения данных. Динамическая форма требует рендеринга своего содержимого при открытии файла. Динамические формы также могут быть разработаны для изменения структуры, чтобы приспособиться к изменениям в структуре данных, передаваемых в форму. Например, страница формы может быть пропущена, если для нее нет данных. Другой пример - поле, которое может занимать переменное количество места на странице, изменяя размер для эффективного хранения своего содержимого. Динамическая форма не может полагаться на PDF-представление своего шаблона, потому что расположение и макет шаблона изменяются по мере увеличения и уменьшения полей или по мере того, как подчиненные формы опускаются и включаются.
Использование с форматом переносимого документа
PDF 1.7 поддерживает два разных метода интеграции данных и форм PDF. [3] [8]
- AcroForms (также известные как формы Acrobat ), представленные и включенные в спецификацию формата PDF 1.2.
- Формы Adobe XML Forms Architecture (XFA) , представленные в спецификации формата PDF 1.5 в качестве дополнительной функции (спецификация XFA не включена в спецификацию PDF, на нее есть только ссылки).
Формы Adobe XFA несовместимы с AcroForms. Когда XFA упакован в файл PDF, он помещается в словарь ресурсов документа AcroForm («Shell PDF») или на него делается ссылка из записи AcroForm в каталоге документов.
Для создания форм XFA для использования в Adobe Reader требуется Adobe LiveCycle Designer . [9] Adobe Reader содержит «отключенные функции» для использования форм XFA, которые активируются только при открытии документа PDF, созданного с использованием разрешающей технологии, доступной только от Adobe. [10] [11] Формы XFA несовместимы с Adobe Reader до версии 6.
Профили
Начиная с XFA 2.5 формы могут использовать подмножество полной возможности XFA. В настоящее время указан только профиль XFAF.
XFA можно использовать как:
- полный XFA - которые выражают всю форму, включая шаблон, непосредственно в XFA (без какого-либо PDF или без полного фона PDF). Его можно упаковать в «оболочку PDF» с минимальной разметкой PDF или как отдельный XDP. Он используется для динамических форм XFA (начиная с XFA 2.1), а также для так называемых «традиционных» (старых) статических форм XFA. При желании он может включать предварительно обработанное изображение формы XFA в виде страниц PDF, но это полезно только для традиционных статических форм. Динамический XFA должен отображаться при открытии файла.
- Подмножество XFAF (XFA Foreground) - (введено в XFA 2.5) - форма, в которой каждая страница формы XFA накладывается на фон PDF. Его можно использовать только для статических форм XFA. Эта архитектура использует только подмножество XFA. [12] Его можно упаковать в обычный PDF-документ или как отдельный файл XDP со встроенным PDF-файлом. В XFAF каждое поле XFA соответствует интерактивному полю PDF (поле AcroForm).
Упаковка
Формы XFA можно создавать и использовать как файлы PDF 1.5–1.7 или как XDP ( пакет данных XML ). Формат ресурса XFA в PDF описан в спецификации пакета данных XML. [13] PDF может содержать XFA в формате XDP, но XFA может также содержать PDF. [7]
Когда грамматики XFA (архитектура XML-форм), используемые для формы XFA, перемещаются из одного приложения в другое, они должны быть упакованы как пакет данных XML. XDP может быть отдельным документом или, в свою очередь, храниться в документе PDF. [12]
Варианты упаковки XFA Form (с использованием XDP):
- как отдельный пакет данных XML (XDP) (файл .xdp), который может дополнительно включать файл PDF
- внутри обычного PDF-документа - используется для статических форм - XFAF.
- внутри «Shell PDF» - используется для «полной формы XFA» (динамической или традиционной статической). Файл Shell PDF содержит только минимальный скелет разметки PDF плюс полное содержимое XFA, любые шрифты и изображения, необходимые для визуализации формы. . Это минимизирует размер файла, а накладные расходы на рендеринг переносятся с сервера на клиент.
Упаковка XDP в PDF имеет то преимущество, что она более компактна, потому что PDF сжат. XDP в PDF может быть подписан цифровой подписью способами, недоступными для автономного XDP.
Напротив, упаковка компонентов формы в XML-контейнер (XDP) упрощает стандартным XML-приложениям работу с формами XFA. Компоненты XML удобочитаемы и легко редактируются (в отличие от исходного кода PDF). В форме XDP документ XFA может быть проверен с использованием схем, прилагаемых к спецификации XFA.
Совместимость
Большинство процессоров PDF не обрабатывают содержимое XFA. При создании оболочки PDF рекомендуется включать в разметку PDF простое одностраничное изображение PDF с предупреждением (например, «Для просмотра всего содержимого этого документа вам потребуется более поздняя версия программы просмотра PDF». Полное содержание этого файла не может быть отображено в текущей программе просмотра PDF. "," Подождите ... Если это сообщение в конечном итоге не будет заменено правильным содержимым документа, ваша программа просмотра PDF не сможет отобразить этот тип документ. "и т. д.). Обработчики PDF, которые могут отображать содержимое XFA, должны либо не отображать предоставленное изображение страницы с предупреждением, либо быстро заменять его содержимым динамической формы.
В 2013 году в качестве решения для мобильных платформ и настольных платформ без поддержки XFA компания Adobe создала программное обеспечение, которое создает онлайн-заполняемые формы HTML5 из XFA (известные как Adobe «Мобильные формы»). Мобильные формы - это не один файл, как PDF или XDP. [14] [15]
Богатый текст
Форматированный текст может отображаться в данных, поставляемых в формы XFA, в шаблонах XFA как текстовые значения по умолчанию, как заголовки полей или как шаблонное (рисованное) содержимое.
Начиная с PDF 1.5 (XFA 2.02), текстовое содержимое полей формы с переменным текстом, а также аннотации разметки могут включать информацию о форматировании (информацию о стиле). Эти строки форматированного текста представляют собой XML-документы, соответствующие соглашениям с форматированным текстом, указанным для спецификации архитектуры XML-форм, которая сама является подмножеством спецификации XHTML 1.0, дополненной ограниченным набором атрибутов стиля CSS2. [13]
В PDF 1.6 PDF поддерживает элементы и атрибуты форматированного текста, указанные в спецификации архитектуры XML-форм (XFA), 2.2. В PDF 1.7 PDF поддерживает элементы и атрибуты форматированного текста, указанные в спецификации архитектуры XML-форм (XFA), 2.4. [13] В 2011 году было объявлено, что PDF 2.0 (ISO 32000, часть 2) будет ссылаться на XFA 3.1, [16], но после публикации PDF 2.0 отказался от него. [4]
PDF / A
Когда форма XFA конвертируется в PDF / A , как шаблон, так и содержимое поля объединяются в поток представления PDF. PDF / A запрещает активное содержимое и все содержимое XFA, кроме, необязательно, XML-документа данных (данные форм, созданные пользователем).
Стандартизация
Спецификация архитектуры XML Forms не включена в стандарт PDF 1.7 (ISO 32000-1: 2008), и на нее ссылаются только как на внешнюю частную спецификацию, созданную и опубликованную Adobe. Тем не менее, ISO 32000-1 ссылается на XFA как на обязательный и обязательный для применения спецификации ISO 32000-1. XFA не был стандартизирован как стандарт ISO.
С 2007 года разработка стандарта PDF ведется Техническим комитетом 171 ИСО / Подкомитетом 2 / Рабочей группой 8 (TC 171 / SC 2 / WG 8).
В 2011 году комитет ISO призвал Adobe Systems предоставить спецификацию XFA, архитектуру XML-форм (XFA), в ISO для стандартизации и попросил Adobe Systems стабилизировать спецификацию XFA. Комитет выразил озабоченность по поводу стабильности спецификации XFA. [16]
В 2017 году комитет ISO отказался от поддержки XFA из PDF 2.0. [4]
Версии XFA
Версия XFA | Год публикации | Ссылка в PDF-версии | Новые возможности | Версия Adobe Acrobat | Версия Adobe Designer |
---|---|---|---|---|---|
2,02 | 2003 г. | 1.5 | XFA 2.0 поддерживает только статические формы | 6.0 | 6 |
2.1 | DOM набора подключений, DOM данных подключения, DOM описания данных, DOM макета, DOM набора подключений, DOM данных подключения, DOM описания данных, DOM макета, специальные объектные модели, расширенные возможности элемента группы исключений, скрытие / отображение контейнеров в зависимости от актуальности, расширяемые контейнеры , Форматирование абзацев, форматирование штрих-кода, аспект изображения, неинтерактивные поля, поддержка веб-служб («doc-literal» операции SOAP через HTTP; WSDL веб-службы определяет операции привязки SOAP), отправка частей формы на целевой URI, подчиненные формы могут включать вычисления, вычисления могут указывать условия переопределения, сценарии указывают, должны ли они выполняться на клиенте, сервере или на обоих, переменные документа, валидационные проверки на соответствие специфическим для валидации предложениям изображения, источник события включен как атрибут события, использование описания данных при записи XML, динамические формы , повторяющиеся подчиненные формы, явные ссылки на данные, наборы подчиненных форм, обработка записей, глобальные поля, элемент описания данных nt, привязка данных по умолчанию для включения данных атрибутов, параметр области подчиненной формы, автоматическое разрушение макета, динамический макет, стратегия плавного макета, поддержка текучего макета для таблиц и строк таблиц, форматированный текст: встроенные объекты, поддержка нижнего и верхнего индекса, новые типы виджетов, Поддержка представлений на азиатском языке, объектная модель сценариев: ссылки на объекты по именам их классов, FormCalc: новые функции для доступа к языку | ||||
2.2 | 2004 г. | 1.6 | DOM набора подключений, DOM данных подключения, событие для заполнения виджетов раскрывающегося списка выбора, цифровые подписи XML W3C, шаблоны с уникальной идентификацией, переменные документа, используемые в качестве именованных объектов сценария | 7.0 | 7 |
2,4 | 2006 г. | 1.7 и ISO 32000-1 | Фрагменты форм, шифрование штрих-кода, кодирование символов штрих-кода, возможность закодирования URL-адреса для отправки, объединение событий входа и выхода из списка выбора, манифесты как переменные сценария, сложная привязка, условная привязка, поддержка потока текста справа налево, условное разрушение, вложенность таблиц, заголовки могут различаться в разных представлениях | 7.0 | 7.1 |
2,5 | 2007 г. | 1.7 Adobe Extension Level 1 | Безопасная отправка , событие изменения индекса, XFA Foreground (XFAF) , изменение на исходный выбор страницы, явное управление разбивкой на страницы принтера, функциональность виджета: контроль над прокруткой, формы галочки, выделение кнопок, явное управление количеством ячеек в сотах, безопасность и контроль : MDP + подписи документов | 8.0 | 8 |
2,6 | 2008 г. | 1.7 Adobe Extension Level 2 | Документирован Adobe XMP, задокументирован синтаксис конфигурации Adobe, задокументирован контроль версий шаблонов, задокументированы устаревшие флаги Adobe (для обратной совместимости), хранение изображений в PDF (изображения хранятся как ресурсы в контейнере PDF), новые типы штрих-кодов (UPS Maxicode, Aztec, Data Matrix, и семейство RSS14) | 8.1, 8.1.1 | ES 8.1 |
2,7 | 2008 г. | 1.7 Adobe Extension Level 3 | Гарнитуры набора языковых стандартов, Новый набор правил для выбора альтернативных шрифтов | 8.1, 8.1.1 | ES 8.1.2 |
2,8 | 2008 г. | 1.7 Adobe Extension Level 3 | Новый набор данных переменных, Фрагменты форм, объявляющие обходы, Свойство Access расширено до подчиненных форм, Улучшенное управление сиротами и вдовами, Сохранение свойства расширено до полей и отрисовок, Политика аутентификации для веб-сервисов, Отправка через WSDL / SOAP , Стандартизированные события до и после отправки, Добавлены события до и после подписи, Предварительные события могут отменить связанное действие, Изменение поведения сохранения, Поддержка парного кернинга, Поддержка расстановки переносов, Форматированный текст: исходящие гиперссылки | 9.0 | ES 8.2 |
3.0 | 2009 г. | 1.7 Adobe Extension Level 5 | Переопределение флага совместимости в LiveCycle, Неактивное присутствие, Распространение событий (вверх к их наследственным объектам), Добавлены события проверки, Управление обработкой глобальной проверки | 9.1 | |
3.1 | 2009 г. | 1.7 Adobe Extension Level 6 | Поддержка реляционных данных, Внедрение данных в описание данных, Примеры штрих-кодов расширены и проиллюстрированы, Примеры автоматизации расширены и исправлены, Управление дуплексным наложением, Визуализация: Поддержка двусторонней печати по длинной или короткой кромке, Поддержка большего количества принтеров этикеток | Х (10) | ES 2 |
3.3 | 2012 г. | 1.7 Adobe Extension Level 8 | Маркированный список, нумерованный список и поддержка вложенных списков, поддержка подчиненных форм и таблиц с перемещением справа налево, поддержка устаревшего рендеринга, поддержка шифрования и дешифрования XML, добавлен элемент автосохранения, добавлены элементы ADBE_JSConsole и ADBE_JSDebugger, интеграция Flash ( SWF ) в XFA | Х (10) | ES 3 |
Смотрите также
- Формат переносимого документа
- Пакет данных XML
Рекомендации
- ^ Типы носителей приложений IANA - Дерево поставщиков - vnd.adobe.xdp + xml , получено 9 апреля 2014 г.
- ^ Типы носителей приложений IANA - дерево поставщиков - vnd.adobe.formscentral.fcdt , получено 9 апреля 2014 г.
- ^ а б «GNU PDF - Знание PDF - Формат данных форм» . Проверено 19 февраля 2010 .
Очевидно, Adobe представила что-то новое, называемое XFA (XML Forms Architecture), которое не кажется стандартизованным.
- ^ а б в «PDF 2.0: Всемирный стандарт для электронных документов эволюционировал - Ассоциация PDF» . Проверено 5 декабря 2018 .
- ^ Представление W3C (по состоянию на 14 августа 2006 г.)
- ^ Краткое введение в технологию Acrobat Forms (формат PDF)
- ^ а б Adobe Systems Incorporated. «Архитектура форм Adobe XML (XFA)» . Проверено 19 февраля 2010 .
- ^ «О формах PDF» . Проверено 19 февраля 2010 .
- ^ «Расширения Adobe LiveCycle Reader ES2» . Проверено 19 февраля 2010 .
- ^ Adobe Reader - Лицензионное соглашение на программное обеспечение (PDF) , получено 19 февраля 2010 г.
- ^ «Возможности и преимущества LiveCycle Reader Extensions ES» . Проверено 19 февраля 2010 .
- ^ а б XML Forms Architecture (XFA) Specification Version 2.5 (PDF) , 2007-06-08 , извлечено 2010-02-19
- ^ а б в Adobe Systems Incorporated (1 июля 2008 г.), Управление документами - Формат переносимых документов - Часть 1: PDF 1.7, первое издание (PDF) , получено 19 февраля 2010 г.
- ^ Формы Adobe Reader Mobile и XFA из LiveCycle Designer , 2014-04-16,
Adobe Reader Mobile не поддерживает PDF-файлы на основе
XFA,созданные в LiveCycle Designer, и не будет предоставлять эту поддержку в будущем.
- ^ Различия в функциях мобильных форм и PDF-форм , получено 22 апреля 2014 г.
- ^ а б ISO / TC 171 / SC 2 / WG 8 N 603 - Отчет о совещании (PDF) , 2011-06-27,
XFA еще не стал стандартом ISO. ... Комитет настоятельно призывает Adobe Systems предоставить спецификацию XFA, XML Forms Architecture (XFA), в ISO для стандартизации ... Комитет обеспокоен стабильностью спецификации XFA ... Часть 2 будет ссылаться на XFA 3.1
Внешние ссылки
- Adobe XML Forms Architecture (XFA) - ресурсы для разработчиков [ мертвая ссылка ]