Offene Verpackungskonventionen

Offene Verpackungskonventionen (OPC)
Abkürzung OPC
Einheimischer Name
Office Open XML -Dateiformate - Open Verpackungskonventionen
Status Veröffentlicht
Erstmals veröffentlicht 7. Dezember 2006
Letzte Version ISO/IEC 29500-2: 2012
22. August 2012
Organisation Microsoft, ECMA, ISO/IEC
Grundstandards ECMA-376, ISO/IEC 29500-2
Verwandte Standards Xml, POSTLEITZAHL
Domain Elektronische Dokumente
Webseite ECMA-376,
ISO/IEC 29500-2: 2012

Das Offene Verpackungskonventionen (OPC) ist eine Container-File-Technologie, die ursprünglich von erstellt wurde von Microsoft eine Kombination von zu speichern Xml und Nicht-XML-Dateien, die zusammen eine einzelne Entität wie eine bilden Offene XML -Papierspezifikation (OpenXPS) Dokument. OPC-basierte Dateiformate kombinieren die Vorteile, die unabhängigen Dateientitäten in das Dokument intakt zu lassen und zu viel kleineren Dateien im Vergleich zur normalen Verwendung von XML zu führen.

Spezifikationen

Der OPC ist in Teil 2 der angegeben Office Open XML Standards ISO/IEC 29500: 2008 und ECMA-376.[1][2]

Die Spezifikation der ISO/IEC 29500-2: 2008 und die zweite Ausgabe von ECMA-376 beziehen sich normativ auf PKware, Inc.'s .ZIP -Dateiformatspezifikation Version 6.2.0 (2004) und ergänzt es mit einer normativen Reihe von Klarstellungen. Hinweis: Die ältere Erstausgabe von ECMA-376 macht einen informativ (d.h., nicht normativ) Verweis auf die neuere PKware Inc. .zip-Dateiformatspezifikation "Version 6.2.1 (2005).[1] Das ZIP -Format ist nicht von einem internationalen Standard festgelegt, sondern hat eine weit verbreitete Akzeptanz der Gemeinschaft und der Entwickler.

Microsoft hat 2006 einen Entwurf an die eingereicht Internettechnik-Arbeitsgruppe für ein "Pack" URI -Schema (Pack://) für URI-Verweise auf OPC-basierte Pakete verwendet werden. Der Entwurf ist 2009 abgelaufen, die angegebene Syntax ist mit dem nicht kompatibel Internetstandard Für URI -Programme (STD 66, RFC 3986).[3] Das Schema ist jetzt als aufgeführt als historisch.[4]

Die ISO 19165: 1-2018 empfiehlt die Verwendung der offenen Verpackungskonventionen zur Implementierung des in der definierten Geospatial-Pakets Offene Archivinformationssystem.

Verwendungszweck

Beide XML -Papierspezifikation (XPS)[5] und Office Open XML (OOXML) Verwenden Sie offene Verpackungskonventionen (OPC), die ein Profil des gemeinsamen POSTLEITZAHL Format. Zusätzlich zu Daten- und Dokumentinhalten im XML -Markup können Dateien im ZIP -Paket andere Text und binäre Dateien in Formaten wie z. B. enthalten Png, Bmp, Avi, PDF, RTF, oder sogar eine bereits verpackte ODF Datei. OPC definiert auch einige Namenskonventionen und eine indirekte Methode, um die Positionsunabhängigkeit von Binär- und XML -Dateien im ZIP -Archiv zu ermöglichen.

OPC -Dateien können mit gemeinsamen Postleitzahlen geöffnet werden. OPC erlauben Indirektion, Chunking und Relative Indirektion.[6]

Dateiformate mit dem OPC

Das OPC ist die Grundlage für viele neue Dateiformate:[7]

Datei Format Dateiname Erweiterung Inhalt Standard
3MF -Konsortium 3D -Fertigungsformat (3MF) Dateiformat[8] .3mf CAD Entwurfsdaten für die additive Fertigung (3d Drucken))
Autodesk Autocad DWFX -Dateiformat (Design Web Format)[9] .dwfx CAD Entwurfsdaten (2d/3d Computergrafik und technische Zeichnungen))
Automatisierung Containerformat .Amlx Anlagenentwicklungsinformationen
Dokument für Schaltpläne[10] .cddx Schaltplan Layout, Verbindungen und eingebettete Komponenten enthalten
Family.Show Datei Format[11] .familyx genealogisch Familiendaten, Geschichten und Fotos
FDI -Pakete für Feldgeräte Integration[12][13] .fdix Informationen zur Integration von Feldgeräten IEC 62769-4: 2015
Microsoft Application Virtualisierung Datei Format .Appv Tragbare Anwendung
Microsoft Semblio Datei Format .Semblio Interaktives Lernmaterial wie E-Books mit Bildern, Audio und Videos
Microsoft Visual Studio 2010+ Erweiterungsdateiformat .VSIX Integrierte Entwicklungsumgebung Verlängerung
Microsoft Visio 2013 Zeichnungsdateiformat .vsdx Ersetzt .VSD (Visio -Binärdatei) und .VDX (Visio XML Drawing) -Formate, die in früheren Versionen verwendet werden[14]
Microsoft Windows 8, Windows 8.1 und Windows Phone 8.1 App -Paket[15] .Appx Softwarepaket Für Anwendungen, die bei Microsoft's aufgeführt sind Windows Store und Windows Phone Store[16]
Microsoft Windows 8.1 und Windows Phone 8.1 App -Bundle[17] .AppxBundle Softwarepaket Das bündelt Hardware -Plattformen, Sprachen und Ressourcen für eine Anwendung, die bei Microsoft's aufgeführt ist Windows Store und Windows Phone Store
Microsoft Windows Azure C# Paket .cspkg Cloud -Plattform Daten
Microsoft XML -Papierspezifikation .xps Festes Dokument für den Dokumentenaustausch
Miramon Open Compressed Map .mmzx Geografische Informationen (Geospatial Rastergrafiken, Vektorgrafiken und tabellarisch Daten, Symbolisierung und Metadaten In Dateien, Links zu Geoervices usw.) ISO 19165-1: 2018
NuGet Paket .nupkg Softwarepaket Für ein Paketverwaltungssystem
Office Open XML Dokumentieren .docx Textverarbeitung dokumentieren ECMA-376, ISO/IEC 29500: 2008
Office Open XML Präsentation .pptx Präsentation Datei ECMA-376, ISO/IEC 29500: 2008
Office Open XML Arbeitsmappe .xlsx Kalkulationstabelle Arbeitsmappe ECMA-376, ISO/IEC 29500: 2008
Offene XML -Papierspezifikation .oxps Festes Dokument für den Dokumentenaustausch ECMA-388
Plattform Industrie 4.0 - Verwaltungsanlage Shell[18] .aasx Paketdateiformat für administrative Asset Shells (AAS)
Siemens Digital Industries Software Datei Format .Jtx
MathWorks Simulink Modelldatei .Slx Dynamische Systemspezifikation für Modellbasiertes Design
Smpt Medienpaket .Smpk Speicherformat für die Verteilung und Wiedergabe von Multimedia -Video- und Audiodateien SMPTE ST 2053-2011
Spaceclaim 3d Solides Modell Datei[19] .scdoc Eingebettete 3D -CAD -Datendateien enthalten Standard ACIS Binär (SAB) Solide Modelldateien
Microsoft Xaml Paket Keine Spezifikation. Funktion unterstützt von .NET Framework Nur zum Speichern WPF Flowdocument mit Bildern[20]

Programmierung

OPC wird in Microsoft nativ unterstützt .NET Framework 3.0 durch die System.io.packaging Namespace. Open Source -Bibliotheken existieren für andere Sprachen.

Seit Windows 7, OPC wird auch nativ in der unterstützt Windows -API durch eine Reihe von einer Reihe von Com Schnittstellen, die gemeinsam als als bezeichnet werden Verpackungs -API.

Alternativ können ZIP -Bibliotheken zum Erstellen und Öffnen von OPC -Dateien verwendet werden, solange die richtigen Dateien im Reißverschluss und die folgenden Konventionen enthalten sind.

Paket, Teile und Beziehungen

Containerstruktur von Teil 2 des ECMA Office Open XML Standard, ECMA-376

In der OPC -Terminologie der Begriff Paket entspricht einem Zip -Archiv und dem Begriff Teil entspricht einer Datei, die im Reißverschluss gespeichert ist. Jedes Teil eines Pakets hat einen einzigartigen Uri-konformen Teilnamen zusammen mit einem bestimmten Inhaltstyp, der in Form von a ausgedrückt wird MIME Medientyp. Der inhaltliche Typ eines Teils definiert explizit die Art der in der Teil gespeicherten Daten und verringert die Duplikat- und Mehrdeutigkeitsprobleme, die mit inhärent sind Dateierweiterungen.

OPC -Pakete können auch enthalten Beziehungen Das definiert Assoziationen zwischen Paket, Teilen und externen Ressourcen. Zusätzlich zu einer Hierarchie von Verzeichnissen und Teilen verwenden OPC -Pakete üblicherweise Beziehungen um über a auf Inhalte zugreifen zu können gerichteter Graph von Beziehungsverbänden. Beziehungen bestehen aus vier Elementen:

  • eine Kennung (ID)
  • eine optionale Quelle (das Paket oder ein Teil innerhalb des Pakets)
  • Ein Beziehungstyp (ein Ausdruck im URI-Stil, der den Typ der Beziehung definiert)
  • ein Ziel (a Uri zu einem anderen Teil innerhalb des Pakets oder zu einer externen Ressource)

OPC -Pakete können Teile speichern, die alle Arten von Daten enthalten (Text, Bilder, XML, binär, was auch immer). Die Erweiterung ".rels" ist jedoch für die Speicherung von Beziehungsmetadaten innerhalb der Unterordner "/_rels" reserviert. Der Unterordner -Name "_rels", die Dateierweiterung ".rels" innerhalb eines solchen Verzeichnisses und der Dateiname "[content_types] .xml" in jedem Ordner sind die einzigen drei reservierten Namen für Dateien, die in einem OPC -Paket gespeichert sind.

/..Content_types].xml Datei
Diese Datei definiert die MIME Medientypen Für alle im Paket gespeicherten Teile. Die Datei "/° Content_types].xml" definiert Standard-Zuordnungen basierend auf Dateierweiterungen sowie Überschreibungen für bestimmte Teile mit Inhaltstypen, die sich von den Standards der Dateierweiterung unterscheiden. Zum Beispiel ist einer dieser definierten MIME -Typen:
 Erweiterung ="rels" ContentType ="application/vnd.openxmlformats-package.Relationships+xml"/> 
/_rels
Der Ordner "Root Level"/_rels "speichert die Beziehungen für das gesamte Paket. Der Ordner "/_rels" enthält normalerweise eine Datei namens ".rels". "/_rels/.rels" ist eine XML -Datei, in der das Starten Beziehungen auf Paketebene sind gelagert. Normalerweise beginnen Anwendungen beim Öffnen einer OPC-basierten Datei mit der Datei "/_rels/.rels", um die Beziehungen zwischen Paketebene zu lesen.
[Teilname].Rels
Jeder Teil kann seine eigenen Beziehungen haben. Das _rels Bei Ordnern findet man die Beziehungen für einen bestimmten Teil innerhalb des Pakets. Um die Beziehungen für einen bestimmten Teil zu finden, schaut man in den Ordner "_rels", der ein Geschwister dieses Teils ist: Wenn das Teil Beziehungen hat, enthält der Ordner "_rels" eine Datei mit dem ursprünglichen Teilnamen mit einem ". rels "daran angehängt. Wenn beispielsweise die Inhaltstyp -Teildatei irgendwelche Beziehungen hätte, gibt es eine Datei "[content_types] .xml.rels" im Ordner "/_rels".

Alle Beziehungen (einschließlich der dem Stammpaket zugeordneten Beziehungen) werden als XML -Dateien dargestellt. Wenn Sie eine ".rels" -Datei in einem Texteditor öffnen, können Sie das tatsächliche XML -Markup anzeigen, das alle aus diesem Teil abzielenden Beziehungen definiert. Eine typische Beziehungsdatei enthält XML -Code wie folgt:

 xmlns ="http://schemas.openxmlformats.org/package/2006/relationships">   Id ="R0" Typ ="http://schemas.microsoft.com/xps/2005/06/fixedrepesentation" Ziel ="/FixedDocumentsequence.fdseq"/>   Id ="R1" Typ ="http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail" Ziel ="/Documents/1/metadata/page1_thumbnail.jpg"/>  

Dies definiert zwei Beziehungen für das Stammpaket, wobei das erste als Stammpaket betrachtet wird (hier für einen frühen Microsoft XPS Dokument, bevor es als standardisiert wurde als Offene XML -Papierspezifikation Innerhalb der OpenXMLFormats -Sammlung) und der andere, der verwendet wird, um eine alternative Form zu verweisen (hier meldete ein Miniaturbild das Bild der ersten Seite des Dokuments).

Die Hauptteile der eingebetteten Dokumente werden häufig in einem Ordner mit dem Namen "/Dokument" gespeichert (der möglicherweise Unterverzeichnisse selbst enthalten, wenn die Datei jeweils mehrere zugehörige Dokumente mit verschiedenen Teilen enthält) und die optionalen Metadatenteile, die nicht benötigt werden, für die nicht benötigt wird, für die nicht benötigt wird, für die nicht benötigt wird Die Verarbeitung der Hauptteile des Dokuments werden in einem Ordner namens "/metadata" gespeichert. Diese tatsächlichen Ordnernamen werden jedoch in den XML-formatierten Daten in "in" angegeben "[Teilname].Rels "Beziehungsdateien und die OPC -Spezifikation ermöglicht es einer Ordnerorganisation, die für die Anwendung geeignet ist und diese beiden Ordnernamen nicht erforderlich sind.

Chunking

Es ermutigt Dokumente, in kleine Stücke aufgeteilt zu werden. Dies ist besser, um den Effekt der Dateibeschäftigung zu verringern.[21] Und besser für den Datenzugriff: Beispielsweise alle Stilinformationen in einem XML -Teil, jedes separate Arbeitsblatt oder jeder separaten Tabelle in ihren eigenen Teilen. Dies ermöglicht einen schnelleren Zugriff und weniger Objekterstellung für Clients und erleichtert es für mehrere Prozesse, an demselben Dokument zu arbeiten.

Relative Indirektion

In den offenen Verpackungskonventionen hat jede Datei mit Referenz ihre eigene _rels Datei mit den Indirektionslisten. Dies erleichtert das Schneiden und Einfügen von Informationen in einigen Fällen mit allen zugehörigen Ressourcen, bietet den Namens Scoping, um die Chance zu entfernen, dass ein Namen zwischen den Dateien usw.

Verweise

  1. ^ a b ISO/IEC 29500-2: 2008 - Informationstechnologie - Dokumentenbeschreibung und Verarbeitungssprachen - Office Open XML -Dateiformate - Teil 2: Open Packaging Conventions, Iso
  2. ^ ECMA International TC45 (Dezember 2006). "Standard ECMA-376 Office Open XML-Dateiformate". ECMA International. Abgerufen 2007-04-04.
  3. ^ "Packstatus: historisch". Iana. 2011-10-04. Abgerufen 2013-05-12.
  4. ^ "URI -Schemata für einheitliche Ressourcenkennung" ". Protokollregister. Iana. Abgerufen 2013-05-12. {{}}: Externer Link in |work= (Hilfe)
  5. ^ XPS-Team (2006-09-01). "Open Packaging Conventions & Open XML -Markup -Kompatibilität". XPS -Team Blog. Abgerufen 2007-04-04.
  6. ^ Rick Jeliffe (2007-07-29). "Kommentar zu Kann eine Datei ODF und XML gleichzeitig öffnen?". O'Reilly Net XML Blogs.
  7. ^ Abenteuer in der Verpackung - Episode 1, 18. Mai 2009, von Jack Davis, Microsoft Packaging Team Blog: Open Packaging Conventions
  8. ^ "Archivierte Kopie" (PDF). Archiviert von das Original (PDF) am 2016-08-07. Abgerufen 2016-05-26.{{}}: CS1 Wartung: Archiviertes Kopie als Titel (Link)
  9. ^ "Archivierte Kopie". Archiviert von das Original Am 2014-09-03. Abgerufen 2014-08-30.{{}}: CS1 Wartung: Archiviertes Kopie als Titel (Link)
  10. ^ "CDDX -Dateiformat - Schaltplan". www.circuit-diagram.org.
  11. ^ "Codeplex -Archiv". Codeplex -Archiv.
  12. ^ "Technologie - FDI -Kooperation". www.fdi-cooperation.com. Archiviert von das Original 2014-09-19.
  13. ^ "IEC 62769-4: 2015 | IEC Webstore". webstore.iec.ch.
  14. ^ "Entwickler -Tools, technische Dokumentations- und Codierungsbeispiele".
  15. ^ "App -Pakete und Bereitstellungen (Windows Runtime Apps) - Windows App -Entwicklung".
  16. ^ Warren, Tom (11. Februar 2014). "Windows Phone 8.1 enthält universelle Apps und viele Funktionsaktualisierungen". Der Verge.
  17. ^ "Archivierte Kopie". Archiviert von das Original am 2016-10-18. Abgerufen 2015-01-26.{{}}: CS1 Wartung: Archiviertes Kopie als Titel (Link)
  18. ^ Details zur Verabreichungsverwaltung Shell - Teil 1
  19. ^ "SpaceClaim -Dateiformat". 2013-05-06. Archiviert von das Original 2013-09-15. Abgerufen 2017-08-14.
  20. ^ "DataFormats.xamlpackage -Feld (System.Windows)".
  21. ^ "Verwenden Sie OPC zum Speichern Ihrer eigenen Daten: Seite 3". www.devx.com.

Externe Links