Соглашения об открытой упаковке
Аббревиатура | ОПК |
---|---|
Родное имя | Форматы файлов Office Open XML — открытая упаковка
Конвенции |
Статус | Опубликовано |
Впервые опубликовано | 7 декабря 2006 г. |
Последняя версия | ИСО/МЭК 29500-2:2021 август 2021 г. |
Организация | Microsoft , Ecma , ISO / IEC |
Базовые стандарты | ЕСМА-376, ИСО/МЭК 29500-2 |
Сопутствующие стандарты | XML , ZIP |
Домен | Электронные документы |
Веб-сайт | ЭКМА-376 , ИСО/МЭК 29500-2:2012 |
Open Packaging Conventions (OPC) — это технология файлов-контейнеров, первоначально созданная Microsoft для хранения комбинации файлов XML и файлов, не являющихся XML, которые вместе образуют единый объект, такой как документ Open XML Paper Specification (OpenXPS). Форматы файлов на основе OPC сочетают в себе преимущества, заключающиеся в том, что независимые файловые объекты, встроенные в документ, остаются нетронутыми, что приводит к значительному уменьшению размеров файлов по сравнению с обычным использованием XML. [ сомнительно – обсудить ]
Технические характеристики [ править ]
OPC указан в Части 2 Office Open XML стандартов ISO / IEC 29500:2008 и ECMA -376 . [1] [2]
Спецификация ISO/IEC 29500-2:2008 и второе издание ECMA-376 содержат нормативную ссылку на PKWARE, Inc. компании спецификацию формата файлов .ZIP версии 6.2.0 (2004 г.) и дополняют ее нормативным набором разъяснения. Примечание. В старом первом издании ECMA-376 содержится информативная ( т. е . ненормативная) ссылка на более новую «Спецификацию формата файла .ZIP» компании PKWARE Inc, версия 6.2.1 (2005 г.). [1] Формат ZIP не указан ни в одном международном стандарте, но широко принят сообществом и разработчиками.
В 2006 году Microsoft представила в Целевую группу по проектированию Интернета проект «пакетной» схемы URI ( pack://
), который будет использоваться для ссылок URI на пакеты на основе OPC. Срок действия проекта истек в 2009 году, указанный синтаксис несовместим со стандартом Интернета для схем URI (STD 66, RFC 3986). [3] Схема теперь числится как историческая . [4]
ISO 19165:1-2018 рекомендует использовать соглашения об открытой упаковке для реализации геопространственного пакета, определенного в открытой архивной информационной системе .
Использование [ править ]
Как Спецификация XML Paper (XPS), так и [5] и Office Open XML (OOXML) используют соглашения об открытой упаковке (OPC), которые предоставляют профиль общего формата ZIP . Помимо данных и содержимого документа в разметке XML, файлы в ZIP-пакете могут включать в себя другие текстовые и двоичные файлы в таких форматах, как PNG , BMP , AVI , PDF , RTF или даже уже упакованный ODF файл . OPC также определяет некоторые соглашения об именах и метод косвенного обращения, позволяющие обеспечить независимость положения двоичных и XML-файлов в ZIP-архиве.
Файлы OPC можно открыть с помощью обычных ZIP-утилит. OPC допускает косвенность, фрагментацию и относительную косвенность . [6]
Форматы файлов с использованием OPC [ править ]
OPC является базовой технологией для многих новых форматов файлов: [7]
Формат файла | Расширение имени файла | Содержание | Стандартный |
---|---|---|---|
консорциума 3MF Формат файла 3D Manufacturing Format (3MF) [8] | .3мф | Данные проектирования САПР для аддитивного производства ( 3D-печать ) | |
Формат файла Autodesk AutoCAD Design Web Format (DWFX) [9] | .dwfx | САПР Данные проектирования ( 2D / 3D компьютерная графика и технические чертежи ) | |
AutomationML Формат контейнера | .amlx | Инженерная информация по установке | |
Документ с принципиальной схемой [10] | .cddx | Принципиальная схема, содержащая компоновку, соединения и встроенные компоненты. | |
Семья.Показать формат файла [11] | .familyx | генеалогические семейные данные, рассказы и фотографии | |
для интеграции полевых устройств Пакеты FDI [12] [13] | .fdix | Информация об интеграции полевых устройств | МЭК 62769-4 :2015 |
виртуализации приложений Microsoft Формат файла | .appv | Портативное приложение | |
Microsoft Power BI Формат файла отчета | .pbix | о визуализации данных и информации Файл отчета | |
Microsoft Power BI Формат файла шаблона | .pbit | Файл шаблона визуализации данных и информации | |
Microsoft Semblio Формат файла | .semblio | Интерактивные учебные материалы, например электронные книги, содержащие изображения, аудио и видео. | |
Microsoft Visual Studio Формат файла расширений 2010+ | .vsix | интегрированной среды разработки Расширение | |
Microsoft Visio Формат файла чертежа 2013 | .vsdx | Заменяет форматы .vsd (двоичный файл Visio) и .vdx (рисунок Visio XML), использовавшиеся в более ранних версиях. [14] | |
Microsoft Windows 8 , Windows 8.1 и Windows Phone 8.1 Пакет приложений [15] | .appx | Пакет программного обеспечения для приложений, перечисленных в Microsoft Windows Store и Windows Phone Store. [16] | |
Microsoft Windows 8.1 и Windows Phone 8.1 Пакет приложений [17] | .appxbundle | Пакет программного обеспечения , объединяющий аппаратные платформы, языки и ресурсы для приложения, представленного в Microsoft Windows Store и Windows Phone Store. | |
Microsoft Windows Azure Пакет C# | .cspkg | облачной платформы Данные | |
Microsoft XML Спецификация бумаги | .xps | Фиксированный документ для обмена документами | |
MiraMon открыть сжатую карту | .mmzx | Географическая информация ( геопространственная растровая графика , векторная графика и табличные данные, символы и метаданные в файлах, ссылки на геосервисы и т. д.) | ИСО 19165-1 :2018 |
NuGet Пакет | .nupkg | Программный пакет для системы управления пакетами | |
Office Open XML Документ | .docx | Текстовый документ | ECMA-376, ISO/IEC 29500:2008. |
Office Open XML Презентация | .pptx | презентации Файл | ECMA-376, ISO/IEC 29500:2008. |
Office Open XML Рабочая книга | .xlsx | таблица Электронная | ECMA-376, ISO/IEC 29500:2008. |
Спецификация документа Open XML | .oxps | Фиксированный документ для обмена документами | ЭКМА-388 |
Платформа Industrie 4.0 — оболочка административного актива [18] | .aasx | Формат файла пакета для оболочек административных активов (AAS) | |
программного обеспечения Siemens Digital Industries Формат файла | .jtx | ||
MathWorks Simulink Файл модели | .slx | Спецификация динамической системы для проектирования на основе моделей | |
SMPTE Медиа-пакет | .smpk | Формат хранения для распространения и воспроизведения мультимедийных видео и аудио файлов. | СМПТЭ СТ 2053-2011 |
SpaceClaim 3D твердотельной модели Файл [19] | .scdoc | Встроенные файлы данных 3D CAD включают ACIS Binary (SAB). стандартные файлы твердотельных моделей | |
Microsoft XAML Пакет | – | Не спецификация. Функция, поддерживаемая .NET Framework, только для сохранения WPF FlowDocument с изображениями. [20] |
Программирование [ править ]
OPC изначально поддерживается в Microsoft .NET Framework 3.0 Пространство имен System.IO.Packaging . Библиотеки с открытым исходным кодом существуют для других языков.
Начиная с Windows 7 , OPC также изначально поддерживается в Windows API через набор COM- интерфейсов, которые вместе называются Packaging API .
В качестве альтернативы для создания и открытия файлов OPC можно использовать библиотеки ZIP, при условии, что в ZIP включены правильные файлы и соблюдены соглашения.
Пакет, части и отношения [ править ]

терминов В терминологии OPC пакет соответствует ZIP-архиву, а часть термина соответствует файлу, хранящемуся в ZIP. Каждая часть в пакете имеет уникальное имя части, совместимое с URI, а также указанный тип контента, выраженный в форме MIME медиа-типа . Тип содержимого части явно определяет тип данных, хранящихся в этой части, и уменьшает проблемы дублирования и неоднозначности, присущие расширениям файлов .
Пакеты OPC также могут включать отношения , определяющие связи между пакетом, частями и внешними ресурсами. Помимо иерархии каталогов и частей, пакеты OPC обычно используют отношения для доступа к контенту через направленный граф ассоциаций отношений. Отношения состоят из четырех элементов:
- идентификатор (ID)
- необязательный источник (пакет или часть пакета)
- тип связи (выражение в стиле URI, определяющее тип связи)
- цель ( URI другой части пакета или внешнего ресурса)
Пакеты OPC могут хранить части, содержащие данные любого типа (текст, изображения, XML, двоичные файлы и т. д.). Однако расширение «.rels» зарезервировано для хранения метаданных отношений в подпапках «/_rels». Имя подпапки «_rels», расширение файла «.rels» в таком каталоге и имя файла «[Content_Types].xml» в любой папке — единственные три зарезервированных имени для файлов, хранящихся в пакете OPC.
- Файл /[Content_Types].xml
- Этот файл определяет MIME типы мультимедиа для всех частей, хранящихся в пакете. Файл «/[Content_Types].xml» определяет сопоставления по умолчанию на основе расширений файлов, а также переопределения для определенных частей с типами контента, которые отличаются от значений расширения файла по умолчанию. Например, один из этих определенных типов MIME:
<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
- /_rels
- В папке корневого уровня «/_rels» хранятся связи пакета в целом. Папка «/_rels» обычно содержит файл с именем «.rels». начальные отношения уровня пакета «/_rels/.rels» — это XML-файл, в котором хранятся . Обычно при открытии файла на основе OPC приложения начинают с доступа к файлу «/_rels/.rels» для чтения начальных связей на уровне пакета.
- [имя детали] .rels
- Каждая часть может иметь свои собственные отношения. Папки _rels — это место, куда можно найти связи для любой конкретной части пакета. Чтобы найти связи для конкретной детали, нужно просмотреть папку «_rels», которая является родственной этой детали: если у детали есть связи, папка «_rels» будет содержать файл с исходным именем детали с расширением «. rels», добавленный к нему. Например, если файл части типов контента имеет какие-либо связи, в папке «/_rels» будет файл с именем «[Content_Types].xml.rels».
Все отношения (включая отношения, связанные с корневым пакетом) представлены в виде файлов XML. Если вы откроете файл «.rels» в текстовом редакторе, вы сможете просмотреть фактическую разметку XML, которая определяет все связи, на которые нацелена эта часть. Типичный файл отношений содержит такой XML-код:
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
<Relationship Id="R0" Type="http://schemas.microsoft.com/xps/2005/06/fixedrepresentation" Target="/FixedDocumentSequence.fdseq"/>
<Relationship Id="R1" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail" Target="/Documents/1/Metadata/Page1_Thumbnail.JPG"/>
</Relationships>
который определяет два отношения для корневого пакета, первое из которых считается корневым пакетом (здесь для раннего документа Microsoft XPS , до того, как он был стандартизирован как спецификация Open XML Paper в коллекции openxmlformats), а другое используется для ссылки альтернативная форма (здесь миниатюра первой страницы документа).
Основные части встроенных документов часто хранятся в папке с именем «/Document» (которая может содержать сами подкаталоги, если файл содержит несколько связанных документов, каждый из которых состоит из различных частей), а необязательные части метаданных, которые не нужны для при обработке основные части документа сохраняются в папке с именем «/Metadata»; однако эти фактические имена папок фактически указаны в данных в формате XML в файлах отношений « [partname] .rels», а спецификация OPC допускает любую организацию папок, удобную для приложения, и эти два имени папок не требуются.
Разделение [ править ]
Он рекомендует разбивать документы на небольшие фрагменты. Это лучше для уменьшения эффекта повреждения файлов. [21] И лучше для доступа к данным: например, вся информация о стиле в одной части XML, каждый отдельный лист или таблица в своих разных частях. Это обеспечивает более быстрый доступ и меньшее количество создания объектов для клиентов, а также упрощает работу нескольких процессов над одним и тем же документом.
Относительная косвенность [ править ]
В соглашениях об открытой упаковке каждый файл, на который есть ссылка, имеет собственный файл _rels со списками косвенных адресов. В некоторых случаях это упрощает вырезание и вставку некоторой информации со всеми связанными с ней ресурсами, обеспечивает определение области имен, чтобы исключить вероятность конфликта имен между файлами и т. д.
Ссылки [ править ]
- ^ Jump up to: Перейти обратно: а б ISO/IEC 29500-2:2008 - Информационные технологии. Языки описания и обработки документов. Форматы файлов Office Open XML. Часть 2. Соглашения об открытой упаковке , ISO
- ^ Ecma International TC45 (декабрь 2006 г.). «Стандартные форматы файлов Office Open XML ECMA-376» . Экма Интернешнл . Проверено 4 апреля 2007 г.
{{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ) - ^ «Статус пакета: исторический» . ИАНА . 04.10.2011 . Проверено 12 мая 2013 г.
- ^ «Схемы унифицированных идентификаторов ресурсов (URI)» . Реестры протоколов . ИАНА . Проверено 12 мая 2013 г.
{{cite web}}
: Внешняя ссылка в
( помощь )|work=
- ^ Команда XPS (01 сентября 2006 г.). «Соглашения об открытой упаковке и совместимость разметки Open XML» . Блог команды XPS . Проверено 4 апреля 2007 г.
- ^ Рик Джелиф (29 июля 2007 г.). «Комментарий: Может ли файл быть ODF и Open XML одновременно?» . Сетевые XML-блоги O'Reilly.
- ^ Приключения в упаковке — Эпизод 1 , 18 мая 2009 г., Джек Дэвис, Блог группы упаковки Microsoft: Соглашения об открытой упаковке
- ^ «Архивная копия» (PDF) . Архивировано из оригинала (PDF) 7 августа 2016 г. Проверено 26 мая 2016 г.
{{cite web}}
: CS1 maint: архивная копия в заголовке ( ссылка ) - ^ «Что такое файл AutoCAD DWF | DWG в DGN» . Архивировано из оригинала 3 сентября 2014 г. Проверено 30 августа 2014 г.
- ^ «Формат файла CDDX — принципиальная схема» . www.circuit-diagram.org .
- ^ «Архив CodePlex» . Архив CodePlex .
- ^ «Технологии – ПИИ-сотрудничество» . www.fdi-cooperation.com . Архивировано из оригинала 19 сентября 2014 г.
- ^ «МЭК 62769-4:2015 | Интернет-магазин МЭК» . webstore.iec.ch .
- ^ «Инструменты разработчика, техническая документация и примеры кодирования» .
- ^ «Пакеты и развертывание приложений (приложения среды выполнения Windows) — разработка приложений для Windows» . 6 октября 2015 г.
- ^ Уоррен, Том (11 февраля 2014 г.). «Windows Phone 8.1 включает универсальные приложения и множество обновлений функций» . Грань .
- ^ «Содержимое перемещено (Windows)» . Архивировано из оригинала 18 октября 2016 г. Проверено 26 января 2015 г.
- ^ Подробности об оболочке управления активами. Часть 1.
- ^ «Формат файла SpaceClaim» . 06.05.2013. Архивировано из оригинала 15 сентября 2013 г. Проверено 14 августа 2017 г.
- ^ «Поле DataFormats.XamlPackage (System.Windows)» .
- ^ «Использование OPC для хранения собственных данных: страница 3» . www.devx.com .
Внешние ссылки [ править ]
- Скачать спецификацию ISO/IEC 29500-2:2012
- OPC: новый стандарт упаковки ваших данных
- Основы соглашений об открытой упаковке
- Цифровые подписи OPC: рекомендации по применению для общих критериев безопасности
- Блог команды упаковки
- Соглашения об открытой упаковке (OPC) Форум MSDN
- Модель адресации соглашений об открытой упаковке
- Документы по тестированию реализации OPC
- Обозреватель пакетов OPC для редактирования частей XML
- ISO 19165-1:2018 ISO 19165 Географическая информация. Сохранение цифровых данных и метаданных. Часть 1. Основы.