Соглашения об открытой упаковке - Open Packaging Conventions
Родное имя | Форматы файлов Office Open XML - Open PackagingConventions |
---|---|
Статус | Опубликовано |
Впервые опубликовано | 7 декабря 2006 г. |
Последняя версия | ИСО / МЭК 29500-2: 2012 22 августа 2012 г. |
Организация | Microsoft, Экма, ISO /IEC |
Базовые стандарты | ECMA-376, ISO / IEC 29500-2 |
Связанные стандарты | XML, ZIP |
Домен | Электронные документы |
Сокращение | OPC |
Интернет сайт | ECMA-376, ИСО / МЭК 29500-2: 2012 |
В Соглашения об открытой упаковке (OPC) - это технология контейнерных файлов, изначально созданная Microsoft хранить комбинацию XML и файлы в формате, отличном от XML, которые вместе образуют единый объект, например Спецификация Open XML Paper (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 содержится информативный (т.е., ненормативная) ссылка на новую версию PKWARE Inc. «Спецификация формата файла .ZIP» версии 6.2.1 (2005).[1] Формат ZIP не определен ни одним международным стандартом, но получил широкое признание сообщества и разработчиков.
Microsoft представила проект в 2006 г. Инженерная группа Интернета за "пачку" Схема URI (pack: //
), который будет использоваться для ссылок URI на пакеты на основе OPC. Срок действия черновика истек в 2009 г., указанный синтаксис несовместим с Интернет Стандарт для схем URI (STD 66, RFC 3986 ).[3] Схема теперь отображается как исторический.[4]
ISO 19165: 1-2018 рекомендует использовать соглашения об открытой упаковке для реализации геопространственного пакета, определенного в Открытая архивная информационная система.
Применение
Оба Спецификация XML Paper (XPS)[5] и Office Open XML (OOXML) используют Open Packaging Conventions (OPC), которые обеспечивают профиль общих ZIP формат. Помимо данных и содержимого документа в разметке XML, файлы в пакете ZIP могут включать другие текстовые и двоичные файлы в таких форматах, как PNG, BMP, AVI, PDF, RTF, или даже уже упакованный ODF файл. OPC также определяет некоторые соглашения об именах и метод косвенного обращения, чтобы обеспечить независимость положения двоичных файлов и файлов XML в ZIP-архиве.
Файлы OPC можно открывать с помощью обычных утилит ZIP. OPC разрешает косвенное обращение, дробление и относительная косвенность.[6]
Форматы файлов с использованием OPC
OPC является базовой технологией для многих новых форматов файлов:[7]
Формат файла | Расширение имени файла | Содержание | Стандарт |
---|---|---|---|
Консорциум 3MF Формат 3D-производства (3MF) формат файла[8] | .3mf | CAD проектные данные для аддитивного производства (3D печать ) | |
Autodesk AutoCAD Формат файлов Design Web Format (DWFX)[9] | .dwfx | CAD проектные данные (2D /3D компьютерная графика и технические чертежи ) | |
Документ принципиальной схемы[10] | .cddx | Принципиальная электрическая схема содержащий макет, соединения и встроенные компоненты | |
Семья. Показать формат файла[11] | .familyx | генеалогический семейные данные, истории и фотографии | |
Интеграция полевых устройств Пакеты ПИИ[12][13] | .fdix | Информация об интеграции полевого устройства | МЭК 62769-4: 2015 |
Виртуализация приложений Microsoft формат файла | .appv | Портативное приложение | |
Microsoft Semblio формат файла | .semblio | Интерактивные учебные материалы, например электронные книги, содержащие изображения, аудио и видео. | |
Microsoft Visual Studio Формат файлов 2010+ Extensions | .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 и Магазин Windows Phone[16] | |
Microsoft Windows 8.1 и Windows Phone 8.1 Пакет приложений[17] | .appxbundle | Пакет программного обеспечения который объединяет аппаратные платформы, языки и ресурсы для приложения, указанного в Microsoft Магазин Windows и Магазин Windows Phone | |
Microsoft Windows Azure Пакет C # | .cspkg | Облачная платформа данные | |
Microsoft Спецификация XML Paper | .xps | Фиксированный документ для обмена документами | |
Открытая сжатая карта MiraMon | .mmzx | Географическая информация (Геопространственный Растровая графика, векторная графика и табличный данные, символизация и метаданные в файлах, ссылках на геосервисы и т. д.) | ISO 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 Paper | .oxps | Фиксированный документ для обмена документами | ECMA-388 |
Платформа Industrie 4.0 - оболочка административных активов | .aasx | Формат файла пакета для административных оболочек активов (AAS) | |
Программное обеспечение Siemens PLM формат файла | .jtx | ||
MathWorks Simulink файл модели | .slx | Спецификация динамической системы для Модельно-ориентированный дизайн | |
SMPTE Медиа-пакет | .smpk | Формат хранения для распространения и воспроизведения мультимедийных видео и аудио файлов | СМПТЭ СТ 2053-2011 |
SpaceClaim 3D твердотельная модель файл[18] | .scdoc | Встроенные файлы данных 3D CAD включают Стандартный двоичный ACIS (SAB) файлы твердых моделей | |
Microsoft XAML Пакет | – | Не спецификация. Функция поддерживается .NET Framework только для экономии WPF FlowDocument с изображениями[19] |
Программирование
OPC изначально поддерживается в Microsoft .NET Framework 3.0 от System.IO.Packaging пространство имен. Существуют библиотеки с открытым исходным кодом для других языков.
поскольку Windows 7, OPC также изначально поддерживается в Windows API через набор COM интерфейсы, вместе именуемые API упаковки.
В качестве альтернативы можно использовать библиотеки ZIP для создания и открытия файлов OPC, если в ZIP включены правильные файлы и соблюдаются соглашения.
Пакет, части и отношения
В терминологии OPC термин пакет соответствует ZIP-архиву и термину часть соответствует файлу, хранящемуся в ZIP-архиве. Каждая часть в пакете имеет уникальное имя части, совместимое с URI, вместе с указанным типом содержимого, выраженным в форме MIME тип СМИ. Тип содержимого части явно определяет тип данных, хранящихся в части, и уменьшает проблемы дублирования и неоднозначности, присущие расширения файлов.
Пакеты OPC также могут включать отношения которые определяют связи между пакетом, частями и внешними ресурсами. В дополнение к иерархии каталогов и частей, пакеты OPC обычно используют отношения для доступа к контенту через ориентированный граф ассоциаций отношений. Отношения состоят из четырех элементов:
- идентификатор (ID)
- необязательный источник (пакет или часть внутри пакета)
- тип отношения (выражение в стиле URI, определяющее тип отношения)
- цель (а URI в другую часть пакета или на внешний ресурс)
Пакеты OPC могут хранить части, содержащие данные любого типа (текст, изображения, XML, двоичные файлы и т. Д.). Однако расширение «.rels» зарезервировано для хранения метаданных отношений в подпапках «/ _rels». Имя подпапки «_rels», расширение файла «.rels» в таком каталоге и имя файла «[Content_Types] .xml» в любой папке - единственные три зарезервированных имени для файлов, хранящихся в пакете OPC.
- /[Content_Typespting.xml файл
- Этот файл определяет MIME типы медиа для всех деталей, хранящихся в упаковке. В файле «/[Content_Typespting.xml» определены сопоставления по умолчанию на основе расширений файлов, а также переопределения для определенных частей с типами содержимого, которые отличаются от значений по умолчанию для расширений файлов. Например, один из этих определенных типов MIME:
<По умолчанию Расширение ="rels" ContentType ="приложение / 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-код:
<Отношения xmlns ="http://schemas.openxmlformats.org/package/2006/relationships"> <Отношения Id =«R0» Тип ="http://schemas.microsoft.com/xps/2005/06/fixedpresentation" Цель ="/FixedDocumentSequence.fdseq"/> <Отношения Id =«R1» Тип ="http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail" Цель ="/Documents/1/Metadata/Page1_Thumbnail.JPG"/></Relationships>
который определяет два отношения для корневого пакета, первое из которых рассматривается как корневой пакет (здесь для раннего Microsoft XPS документ, прежде чем он был стандартизирован как Спецификация Open XML Paper в коллекции openxmlformats), а другой используется для ссылки на альтернативную форму (здесь миниатюрное изображение первой страницы документа).
Основные части встроенных документов часто хранятся в папке с именем «/ Document» (которая может содержать сами подкаталоги, если файл содержит несколько связанных документов, каждый из которых имеет различные части), а также дополнительные части метаданных, которые не нужны для обработка основных частей документа хранится в папке с именем «/ Metadata»; однако эти фактические имена папок фактически указаны в данных в формате XML в "[часть названия].rels "файлы отношений, а спецификация OPC допускает любую организацию папок, удобную для приложения, и эти два имени папки не требуются.
Разбивка
Он побуждает разбивать документы на небольшие части. Это лучше для уменьшения эффекта повреждения файлов.[20] И лучше для доступа к данным: например, вся информация о стилях в одной части XML, каждый отдельный рабочий лист или таблица в своих разных частях. Это позволяет клиентам быстрее получать доступ и создавать меньше объектов, а также упрощает работу нескольких процессов над одним и тем же документом.
Относительное косвенное обращение
В Open Packaging Conventions каждый файл, имеющий ссылку, имеет свой собственный _rels файл со списками косвенного обращения. В некоторых случаях это упрощает вырезание и вставку некоторой информации со всеми связанными с ней ресурсами, обеспечивает определение области видимости имен, чтобы исключить вероятность конфликта имен между файлами и т. Д.
использованная литература
- ^ а б ISO / IEC 29500-2: 2008 - Информационные технологии - Языки описания и обработки документов - Форматы файлов Office Open XML - Часть 2: Соглашения об открытой упаковке, ISO
- ^ Ecma International TC45 (декабрь 2006 г.). «Стандартные форматы файлов Office Open XML ECMA-376». Ecma International. Получено 2007-04-04.
- ^ «Статус упаковки: исторический». IANA. 2011-10-04. Получено 2013-05-12.
- ^ «Схемы универсального идентификатора ресурса (URI)». Реестры протоколов. IANA. Получено 2013-05-12. Внешняя ссылка в
| работа =
(Помогите) - ^ Команда XPS (01.09.2006). «Соглашения об открытых упаковках и совместимость разметки Open XML». Блог команды XPS. Получено 2007-04-04.
- ^ Рик Джелифф (2007-07-29). «Комментарий: Может ли файл быть одновременно ODF и Open XML?». O'Reilly чистые XML-блоги.
- ^ Приключения в упаковке - Эпизод 1, 18 мая 2009 г., Джек Дэвис, Блог группы разработчиков упаковки Microsoft: Open Packaging Conventions
- ^ http://3mf.io/wp-content/uploads/2016/03/3MFcoreSpec_1.1.pdf
- ^ «Архивная копия». Архивировано из оригинал на 2014-09-03. Получено 2014-08-30.CS1 maint: заархивированная копия как заголовок (ссылка на сайт)
- ^ «Формат файла CDDX - Принципиальная схема». www.circuit-diagram.org.
- ^ «Архив CodePlex». Архив CodePlex.
- ^ http://www.fdi-cooperation.com/technology.html
- ^ «IEC 62769-4: 2015 | Интернет-магазин IEC». webstore.iec.ch.
- ^ https://msdn.microsoft.com/en-us/library/office/jj228622%28v=office.15%29.aspx
- ^ https://msdn.microsoft.com/en-us/library/windows/apps/hh464929(v=VS.85).aspx
- ^ Уоррен, Том (11 февраля 2014 г.). «Windows Phone 8.1 включает универсальные приложения и множество обновлений функций». Грани.
- ^ «Архивная копия». Архивировано из оригинал на 2016-10-18. Получено 2015-01-26.CS1 maint: заархивированная копия как заголовок (ссылка на сайт)
- ^ "Формат файла SpaceClaim". 2013-05-06. Архивировано из оригинал на 2013-09-15. Получено 2017-08-14.
- ^ https://msdn.microsoft.com/en-us/library/system.windows.dataformats.xamlpackage(v=vs.110).aspx
- ^ «Использование OPC для хранения ваших данных: страница 3». www.devx.com.
внешние ссылки
- Скачать спецификацию ISO / IEC 29500-2: 2012
- OPC: новый стандарт упаковки ваших данных
- Основы соглашений об открытой упаковке
- Цифровые подписи OPC: руководство по применению для обеспечения безопасности общих критериев
- Блог команды разработчиков упаковки
- Open Packaging Conventions (OPC) Форум MSDN
- Модель адресации соглашений об открытой упаковке
- Документы тестирования реализации OPC
- Проводник пакетов OPC для редактирования частей XML
- ISO 19165-1: 2018 ISO 19165 Географическая информация - Сохранение цифровых данных и метаданных - Часть 1: Основы