Открыть сервис

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).

Источники

  1. ISO/IEC 21320-1:2020 — Information technology — Document Container File — Part 1: Core.
  2. PKWARE Inc. — APPNOTE.TXT — .ZIP File Format Specification.
  3. OASIS Open Document Format for Office Applications (OpenDocument) Version 1.3.
  4. 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 →