ISO/IEC 21320-1
ISO/IEC 21320-1 — это международный стандарт, определяющий формат файлов документов для офисных приложений на основе сжатого ZIP-архива, содержащего XML-файлы. Полное название стандарта — «Information technology — Document Container File — Part 1: Core». Он был разработан совместным техническим комитетом ISO (Международной организации по стандартизации) и IEC (Международной электротехнической комиссии) — ISO/IEC JTC 1. Стандарт является частью серии ISO/IEC 21320 и описывает базовую структуру контейнера для документов, не зависящую от конкретного прикладного формата.
История создания
Разработка ISO/IEC 21320-1 началась в середине 2000-х годов в ответ на потребность в универсальном, открытом и не проприетарном формате для хранения офисных документов. К тому времени широкое распространение получили форматы, основанные на ZIP-архивах и XML, такие как Office Open XML (OOXML) от Microsoft и Open Document Format (ODF) от OASIS. Однако каждый из них имел собственные спецификации, что затрудняло интероперабельность между различными программными продуктами.
Основной целью создания стандарта было определение минимального, общего набора требований к контейнеру документа, который мог бы быть использован как основа для более специализированных форматов. Работа над стандартом велась в рамках подкомитета SC 34 (Документное описание и обработка языков) технического комитета ISO/IEC JTC 1. Первая редакция стандарта была опубликована в 2015 году. В 2020 году была выпущена вторая редакция, уточнившая некоторые технические детали и расширившая совместимость с существующими реализациями.
Структура и принцип работы
ISO/IEC 21320-1 определяет документный контейнерный файл (Document Container File) как ZIP-архив, соответствующий спецификации PKWARE ZIP Application Note (APPNOTE). Внутри этого архива содержатся XML-файлы, описывающие содержимое документа, а также другие ресурсы (изображения, шрифты, метаданные). Основные принципы:
- Единый контейнер: Все компоненты документа (текст, изображения, стили, метаданные) упаковываются в один файл с расширением, как правило,
.docx,.xlsx,.pptxили другим, определённым прикладным стандартом. - Иерархическая структура: Внутри архива файлы организованы в каталоги. Обязательным является корневой каталог, в котором располагается файл
[Content_Types].xml, описывающий типы содержимого всех элементов архива. - XML-представление: Основное содержимое документа (текст, таблицы, презентации) хранится в виде XML-файлов. Это обеспечивает читаемость, расширяемость и возможность обработки стандартными XML-инструментами.
- Стандартные типы содержимого: Стандарт определяет базовые типы MIME для частей контейнера, такие как
application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xmlдля основного текста документа.
Основные требования стандарта
ISO/IEC 21320-1 устанавливает ряд обязательных и рекомендуемых требований к контейнеру:
- Формат архива: ZIP-архив должен быть совместим с PKWARE APPNOTE версии 6.3.0 или выше. Допускается использование сжатия Deflate, а также хранение без сжатия (Stored). Шифрование и использование многотомных архивов не допускается.
- Файл [Content_Types].xml: Должен присутствовать в корне архива. Он содержит перечень всех частей (файлов) и их типов MIME. Это позволяет приложениям быстро определить, какие типы данных содержатся в документе.
- Отсутствие исполняемого кода: Стандарт явно запрещает включение в контейнер исполняемых файлов, макросов или скриптов, которые могут быть выполнены автоматически. Это повышает безопасность при открытии документов.
- Ссылочная целостность: Все ссылки между частями документа (например, ссылки на изображения) должны быть корректными и указывать на существующие файлы внутри архива.
- Имена файлов: Имена файлов и каталогов внутри архива должны соответствовать требованиям спецификации ZIP, быть уникальными и не содержать некоторых специальных символов (например,
\,:,*).
Отличие от других форматов
ISO/IEC 21320-1 не является самостоятельным форматом документа, а представляет собой базовый слой, на котором строятся более конкретные форматы. Основные отличия от других распространённых форматов:
- От ODF (Open Document Format): ODF (ISO/IEC 26300) также основан на ZIP-архиве и XML, но имеет собственную, более сложную и детализированную схему XML. ISO/IEC 21320-1 является более общим и минималистичным. Он не определяет семантику элементов документа (например, как описывать абзацы или таблицы), а только структуру контейнера.
- От OOXML (Office Open XML): OOXML (ISO/IEC 29500) также использует ZIP-контейнер. Фактически, ISO/IEC 21320-1 во многом основан на опыте OOXML и является его упрощённой и стандартизированной версией. В отличие от OOXML, который содержит тысячи страниц спецификаций, ISO/IEC 21320-1 описывает только контейнер, оставляя детали содержимого другим стандартам.
- От PDF (Portable Document Format): PDF не основан на ZIP-архиве и XML, а использует собственную двоичную структуру. PDF предназначен для фиксации внешнего вида документа, в то время как контейнеры ISO/IEC 21320-1 предназначены для редактируемых документов.
Применение
Основное применение ISO/IEC 21320-1 — это создание интероперабельных форматов офисных документов. На его основе могут быть построены:
- Форматы для офисных пакетов: Многие современные офисные приложения (например, LibreOffice, Apache OpenOffice, Microsoft Office) используют форматы, основанные на ZIP-контейнерах. Хотя они не всегда полностью соответствуют ISO/IEC 21320-1, стандарт предоставляет общую основу для совместимости.
- Архивные форматы: В некоторых системах электронного документооборота и архивации используются контейнеры, соответствующие этому стандарту, для долговременного хранения документов.
- Обмен данными: Стандарт может использоваться для обмена структурированными данными между различными информационными системами, где требуется упаковка XML-файлов и связанных ресурсов в единый файл.
Критика и ограничения
Несмотря на свою полезность, ISO/IEC 21320-1 имеет ряд ограничений:
- Неполнота: Стандарт определяет только контейнер, но не содержимое. Для создания полноценного формата документа необходимо дополнительно определить XML-схему, что может привести к появлению множества несовместимых реализаций.
- Сложность реализации: Хотя концепция проста, полное соответствие стандарту требует строгого соблюдения спецификации ZIP и правил формирования XML-структуры, что может быть нетривиально для небольших разработчиков.
- Отсутствие поддержки потоковой обработки: ZIP-архивы требуют чтения всего файла для доступа к определённым частям, что может быть неэффективно для очень больших документов.
Интересные факты
- Стандарт ISO/IEC 21320-1 активно используется в проекте OpenDocument Format (ODF), начиная с версии 1.3, где он был принят как основа для контейнера.
- В России стандарт ISO/IEC 21320-1 не имеет прямого аналога в виде национального стандарта, однако его принципы используются в разработке отечественных форматов офисных документов.
- Стандарт является частью более широкой экосистемы стандартов ISO/IEC для документов, включая ISO/IEC 29500 (OOXML) и ISO/IEC 26300 (ODF).
Источники
- ISO/IEC 21320-1:2020 — Information technology — Document Container File — Part 1: Core.
- PKWARE Inc. — APPNOTE.TXT — .ZIP File Format Specification.
- OASIS Open Document Format for Office Applications (OpenDocument) Version 1.3.
- ISO/IEC 29500-1:2016 — Information technology — Document description and processing languages — Office Open XML File Formats — Part 1: Fundamentals and Markup Language Reference.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →