Açık Ambalaj Sözleşmeleri - Open Packaging Conventions
| Yerel ad | Office Açık XML Dosya Biçimleri - Açık Paketleme Kuralları |
|---|---|
| Durum | Yayınlanan |
| İlk yayınlanan | 7 Aralık 2006 |
| En son sürüm | ISO/IEC 29500-2:2012 22 Ağustos 2012 |
| organizasyon | Microsoft , Ecma , ISO / IEC |
| Temel standartlar | ECMA-376, ISO/IEC 29500-2 |
| İlgili standartlar | XML , ZIP |
| Alan adı | elektronik belgeler |
| Kısaltma | OPC |
| İnternet sitesi |
ECMA-376 , ISO/IEC 29500-2:2012 |
Açık Ambalaj Kuralları (OPC) başlangıçta yarattığı bir kap dosyası teknolojisidir Microsoft'tan bir arada saklamak için XML birlikte böyle bir gibi tek bir öğeyi oluşturur ve non-XML dosyaları Açık XML Kağıt Özelliği (OpenXPS) belgesinde. OPC tabanlı dosya biçimleri, belgeye gömülü bağımsız dosya varlıklarını olduğu gibi bırakmanın avantajlarını birleştirir ve normal XML kullanımına kıyasla çok daha küçük dosyalarla sonuçlanır.
Özellikler
OPC, Office Açık XML standartları ISO / IEC 29500:2008 ve ECMA -376'nın 2. Kısmında belirtilmiştir .
ISO / IEC 29500-2: 2008 şartname ve ikinci baskısı ECMA-376 bir normatif referans yapan PKWARE, Inc. 'in ZIP Dosya Formatı Şartname bir normatif seti ile sürüm 6.2.0 (2004), ve takviyeleri bunu açıklamalar. Not: ECMA-376'nın eski ilk baskısı , daha yeni PKWARE Inc'in ".ZIP Dosya Biçimi Belirtimi" 6.2.1 (2005) sürümüne bilgilendirici ( yani normatif olmayan) bir referansta bulunur. ZIP formatı herhangi bir uluslararası standart tarafından belirtilmemiştir ancak geniş bir topluluk ve geliştirici kabulüne sahiptir.
Microsoft , OPC tabanlı paketlere URI referansları için kullanılacak bir "paket" URI Şeması ( ) için 2006 yılında İnternet Mühendisliği Görev Gücü'ne bir taslak sunmuştur . Taslağın süresi 2009'da sona erdi, belirtilen sözdizimi URI şemaları için İnternet Standardı (STD 66, RFC 3986) ile uyumlu değil. Şema artık tarihsel olarak listeleniyor .
pack://
ISO 19165:1-2018, Açık Arşiv Bilgi Sisteminde tanımlanan Jeo-uzamsal Paketi uygulamak için Açık Paketleme Sözleşmelerinin kullanılmasını önerir .
kullanım
Hem XML Kağıt Belirtimi (XPS) hem de Office Açık XML (OOXML), ortak ZIP biçiminin bir profilini sağlayan Açık Paketleme Kurallarını (OPC) kullanır . XML işaretlemesindeki veri ve belge içeriğine ek olarak, ZIP paketindeki dosyalar PNG , BMP , AVI , PDF , RTF gibi formatlardaki diğer metin ve ikili dosyaları ve hatta önceden paketlenmiş bir ODF dosyasını içerebilir . OPC ayrıca, ZIP arşivindeki ikili ve XML dosyalarının konum bağımsızlığına izin vermek için bazı adlandırma kurallarını ve bir dolaylı yöntemi tanımlar.
OPC dosyaları, yaygın ZIP yardımcı programları kullanılarak açılabilir. OPC, dolaylı, parçalama ve göreli dolaylı yollara izin verir .
OPC kullanan dosya biçimleri
OPC, birçok yeni dosya formatı için temel teknolojidir:
| Dosya formatı | Dosya adı uzantısı | İçerik | Standart |
|---|---|---|---|
| 3MF Konsorsiyumu 3D Üretim Formatı (3MF) dosya formatı | .3mf | Katmanlı üretim için CAD tasarım verileri ( 3D baskı ) | |
| Autodesk AutoCAD Design Web Formatı (DWFX) dosya formatı | .dwfx | CAD tasarım verileri ( 2D / 3D bilgisayar grafikleri ve teknik çizimler ) | |
| AutomationML kapsayıcı biçimi | .amlx | Tesis mühendisliği bilgileri | |
| Devre Şeması Belgesi | .cddx | Düzen, bağlantılar ve gömülü bileşenleri içeren devre şeması | |
| Family.Dosya biçimini göster | .familyx | soy aile verileri, hikayeler ve fotoğraflar | |
| Saha Cihazı Entegrasyonu DYY Paketleri | .fdix | Saha Cihazı Entegrasyon bilgileri | IEC 62769-4:2015 |
| Microsoft Uygulama Sanallaştırma dosya biçimi | .appv | Taşınabilir uygulama | |
| Microsoft Semblio dosya biçimi | .semblio | Resim, ses ve video içeren e-kitaplar gibi etkileşimli öğrenme materyalleri | |
| Microsoft Visual Studio 2010+ Uzantıları dosya biçimi | .vsix | Entegre geliştirme ortamı uzantısı | |
| Microsoft Visio 2013 çizim dosyası formatı | .vsdx | Önceki sürümlerde kullanılan .vsd (Visio ikili dosyası) ve .vdx (Visio XML Çizimi) biçimlerinin yerini alır | |
| Microsoft Windows 8 , Windows 8.1 ve Windows Phone 8.1 Uygulama Paketi | .appx | Microsoft'un Windows Mağazası ve Windows Phone Mağazası'nda listelenen uygulamalar için yazılım paketi | |
| Microsoft Windows 8.1 ve Windows Phone 8.1 Uygulama Paketi | .appxbundle | Microsoft'un Windows Mağazası ve Windows Phone Mağazası'nda listelenen bir uygulama için donanım platformlarını, dilleri ve kaynakları bir araya getiren yazılım paketi | |
| Microsoft Windows Azure C# Paketi | .cspkg | Bulut platformu verileri | |
| Microsoft XML Kağıt Belirtimi | .xps | Belge değişimi için sabit belge | |
| MiraMon sıkıştırılmış haritayı aç | .mmzx | Coğrafi bilgiler ( Geospatial Raster grafikler , vektör grafikleri ve tablo verileri, dosyalarda sembolizasyon ve meta veriler, coğrafi hizmetlere bağlantılar vb.) | ISO 19165-1:2018 |
| NuGet Paketi | .nupkg | Paket yönetim sistemi için yazılım paketi | |
| Office Açık XML Belgesi | .docx | Kelime işlem belgesi | ECMA-376, ISO/IEC 29500:2008 |
| Office Açık XML Sunumu | .pptx | Sunum dosyası | ECMA-376, ISO/IEC 29500:2008 |
| Office Açık XML Çalışma Kitabı | .xlsx | E-tablo çalışma kitabı | ECMA-376, ISO/IEC 29500:2008 |
| Açık XML Kağıt Belirtimi | .oxps | Belge değişimi için sabit belge | ECMA-388 |
| Platform Industrie 4.0 - İdari Varlık Kabuğu | .aasx | Yönetimsel Varlık Kabukları (AAS) için paket dosya biçimi | |
| Siemens PLM Yazılımı dosya formatı | .jtx | ||
| MathWorks Simulink model dosyası | .slx | Model tabanlı tasarım için dinamik sistem özellikleri | |
| SMPTE Medya Paketi | .smpk | Multimedya video ve ses dosyalarının dağıtımı ve oynatılması için depolama formatı | SMPTE ST 2053-2011 |
| SpaceClaim 3D katı model dosyası | .scdoc | Gömülü 3B CAD veri dosyaları, Standart ACIS İkili (SAB) katı model dosyalarını içerir | |
| Microsoft XAML Paketi | - | Spesifikasyon değil. .NET Framework tarafından yalnızca WPF FlowDocument'ı görüntülerle kaydetmek için desteklenen işlev |
Programlama
OPC, Microsoft .NET Framework 3.0'da System.IO.Packaging ad alanı tarafından yerel olarak desteklenir . Diğer diller için açık kaynak kitaplıkları mevcuttur.
Windows 7'den bu yana OPC , topluca Packaging API olarak adlandırılan bir dizi COM arabirimi aracılığıyla Windows API'sinde yerel olarak desteklenir .
Alternatif olarak, doğru dosyalar ZIP'e dahil edildiği ve izlenen kurallar olduğu sürece, OPC dosyaları oluşturmak ve açmak için ZIP kitaplıkları kullanılabilir.
Paket, parçalar ve ilişkiler
OPC terminolojisinde, paket terimi bir ZIP arşivine karşılık gelir ve parça terimi , ZIP içinde saklanan bir dosyaya karşılık gelir. Bir paketteki her parçanın, MIME ortam türü biçiminde ifade edilen belirli bir içerik türüyle birlikte benzersiz bir URI uyumlu parça adı vardır . Bir parçanın içerik türü, parçada depolanan verilerin türünü açıkça tanımlar ve dosya uzantılarının doğasında bulunan yineleme ve belirsizlik sorunlarını azaltır .
OPC paketleri , paket, parçalar ve dış kaynaklar arasındaki ilişkileri tanımlayan ilişkileri de içerebilir . Bir dizin ve parça hiyerarşisine ek olarak, OPC paketleri, yönlendirilmiş bir ilişki ilişkileri grafiği aracılığıyla içeriğe erişmek için yaygın olarak ilişkileri kullanır . İlişkiler dört unsurdan oluşur:
- bir tanımlayıcı (kimlik)
- isteğe bağlı bir kaynak (paket veya paket içindeki bir parça)
- bir ilişki türü (ilişkinin türünü tanımlayan URI tarzı bir ifade)
- bir hedef ( paket içindeki başka bir bölüme veya harici bir kaynağa bir URI )
OPC paketleri, her tür veriyi (metin, resim, XML, ikili, her neyse) içeren parçaları saklayabilir. Ancak ".rels" uzantısı, "/_rels" alt klasörlerinde ilişkiler meta verilerini depolamak için ayrılmıştır. "_rels" alt klasör adı, bu dizindeki ".rels" dosya uzantısı ve herhangi bir klasördeki "[Content_Types].xml" dosya adı, bir OPC paketinde saklanan dosyalar için ayrılmış üç addır.
-
- /[Content_Types].xml dosyası
- Bu dosya , pakette depolanan tüm parçalar için MIME ortam türlerini tanımlar . "/[Content_Types].xml" dosyası, dosya uzantısı varsayılanlarından farklı içerik türlerine sahip belirli bölümler için geçersiz kılmaların yanı sıra dosya uzantılarına dayalı varsayılan eşlemeleri tanımlar. Örneğin, bu tanımlanmış MIME türlerinden biri:
<Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
- /_rels
- Kök düzey "/_rels" klasörü, paketin bir bütün olarak ilişkilerini saklar. "/_rels" klasörü normalde ".rels" adlı bir dosya içerir. "/_rels/.rels", başlangıç paketi düzeyindeki ilişkilerin depolandığı bir XML dosyasıdır . Normalde, OPC tabanlı bir dosyayı açarken, uygulamalar, başlangıç paketi düzeyindeki ilişkileri okumak için "/_rels/.rels" dosyasına erişerek başlar.
- [parça adı] .rels
- Her parçanın kendi ilişkileri olabilir. _Rels klasörleri tek paket içinde herhangi bir kısmı için ilişkiler bulmaya gider nerede. Belirli bir parçanın ilişkilerini bulmak için, o parçanın kardeşi olan "_rels" klasörüne bakılır: Parçanın ilişkileri varsa, "_rels" klasörü, kişinin orijinal parça adına ". rels" eklenir. Örneğin, içerik türleri parça dosyasının herhangi bir ilişkisi varsa, "/_rels" klasörünün içinde "[Content_Types].xml.rels" adlı bir dosya olacaktır.
Tüm ilişkiler (kök paketle ilişkili ilişkiler dahil) XML dosyaları olarak temsil edilir. Bir metin düzenleyicide bir ".rels" dosyası açarsanız, o kısımdan hedeflenen tüm ilişkileri tanımlayan gerçek XML işaretlemesini görüntüleyebilirsiniz. Tipik bir ilişkiler dosyası şuna benzer bir XML kodu içerir:
<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>
bu, kök paket için iki ilişki tanımlar, ilki kök paket olarak kabul edilir (burada , openxmlformats koleksiyonunda Açık XML Kağıt Belirtimi olarak standartlaştırılmadan önce, erken bir Microsoft XPS belgesi için) ve diğeri başvuru için kullanılır. alternatif bir form (burada belgenin ilk sayfasının küçük resim olarak oluşturulmuş görüntüsü).
Gömülü belgelerin ana bölümleri genellikle "/Belge" adlı bir klasörde (dosya her biri çeşitli bölümlere sahip birkaç ilgili belge içeriyorsa alt dizinlerin kendisini içerebilir) ve gerekli olmayan isteğe bağlı meta veri bölümlerinde saklanır. belgenin ana bölümlerinin işlenmesi "/Metadata" adlı bir klasörde saklanır; ancak bu gerçek klasör adları aslında " [partname] .rels" ilişki dosyalarındaki XML biçimli veriler içinde belirtilir ve OPC belirtimi, uygulama için uygun olan herhangi bir klasör organizasyonuna izin verir ve bu iki klasör adı gerekli değildir.
Kümeleme
Belgelerin küçük parçalara ayrılmasını teşvik eder. Bu, dosya bozulmasının etkisini azaltmak için daha iyidir. Ve veri erişimi için daha iyi: örneğin, tüm stil bilgileri tek bir XML bölümünde, her biri kendi farklı bölümlerinde ayrı çalışma sayfası veya tablo. Bu, istemciler için daha hızlı erişime ve daha az nesne oluşturmaya olanak tanır ve birden çok işlemin aynı belge üzerinde çalışmasını kolaylaştırır.
göreli dolaylı
Açık Paketleme Kurallarında, referansı olan her dosyanın, yönlendirme listeleriyle birlikte kendi _rels dosyası vardır. Bu, bazı durumlarda bazı bilgileri tüm ilişkili kaynaklarla birlikte kesmeyi ve yapıştırmayı kolaylaştırır, dosyalar arasında ad çakışması olasılığını ortadan kaldırmak için ad kapsamı sağlar vb.
Referanslar
Dış bağlantılar
- ISO/IEC 29500-2:2012 spesifikasyonunu indirin
- OPC: Verilerinizi Paketlemek İçin Yeni Bir Standart
- Açık Ambalaj Sözleşmelerinin Esasları
- OPC Dijital İmzaları: Ortak Kriterler Güvenliği için Başvuru Yönergeleri
- Paketleme ekibi blogu
- Açık Ambalaj Sözleşmeleri (OPC) MSDN Forumu
- Açık Ambalaj Sözleşmelerinin Adresleme Modeli
- OPC uygulama testi belgeleri
- XML parçalarını düzenlemek için OPC paket gezgini
- ISO 19165-1:2018 ISO 19165 Coğrafi bilgi - Dijital verilerin ve meta verilerin korunması - Bölüm 1: Temel bilgiler