오픈 패키징 규칙

Open Packaging Conventions
오픈 패키징 규약(OPC)
줄임말OPC
네이티브 네임
Office Open XML 파일 형식 - 오픈 패키징 규칙
상황출판된
초판2006년 12월 7일 (2006-12-07)
최신 버전ISO/IEC 29500-2:2012
2012년 8월 22일 (2012-08-22)
조직Microsoft, Ecma, ISO/IEC
기본 규격ECMA-376, ISO/IEC 29500-2
관련 기준XML, ZIP
도메인전자 문서
웹 사이트ECMA-376,
ISO/IEC 29500-2:2012

OPC(Open Packaging Conventions)는 Open XML Paper Specification(OpenXPS) 문서와 같은 단일 엔티티를 형성하는 XML 파일과 비 XML 파일의 조합을 저장하기 위해 마이크로소프트가 최초로 작성한 컨테이너 파일 기술입니다.OPC 기반 파일 형식은 문서에 포함된 독립 파일 엔티티를 그대로 유지하여 XML을 정상적으로 사용할 때보다 훨씬 작은 파일을 만들 수 있다는 장점을 결합합니다.

사양

OPC는 Office Open XML 표준 ISO/IEC 29500:2008 및 ECMA-376 [1][2]파트2에 규정되어 있습니다.

ISO/IEC 29500-2:2008 사양 및 ECMA-376 제2판은 PKWARE, Inc.의 규범적인 참조를 하고 있습니다.ZIP 파일 형식 사양 버전 6.2.0(2004)은 규범적인 설명 세트를 보완합니다.주의: ECMA-376의 구판 초판은 새로운 PKWARE Inc.의 ".Z"에 대한 정보(비표준)를 제공합니다.IP 파일 포맷 사양」버전 6.2.1(2005)[1]을 참조하십시오.ZIP 형식은 어떤 국제 표준에도 규정되어 있지 않지만 커뮤니티와 개발자가 폭넓게 수용하고 있습니다.

Microsoft는 2006년에 「팩」URI 스킴의 초안을 Internet Engineering Task Force 에 제출했습니다.pack://OPC 기반 패키지에 대한 URI 참조에 사용됩니다.초안은 2009년에 만료되었으며 지정된 구문은 URI 방식의 인터넷 표준(STD 66, RFC 3986)[3]과 호환되지 않습니다.스킴이 이력 [4]리스트가 되었습니다.

ISO 19165:1-2018에서는 개방형 보관 정보 시스템에 정의된 지리 공간 패키지를 구현하기 위해 개방형 패키징 규약을 사용할 것을 권장합니다.

사용.

XML Paper Specification(XPS;[5] XML 종이 사양)과 Office Open XML(OOXML; Office Open XML)은 모두 Open Packaging Conventions(OPC; 개방형 패키징 규칙)을 사용합니다.OPC는 일반적인 ZIP 형식의 프로파일을 제공합니다.ZIP 패키지의 파일에는 XML 마크업 내의 데이터 및 문서 내용 외에 PNG, BMP, AVI, PDF, RTF, 또는 이미 패키지화된 ODF 파일 등의 형식의 다른 텍스트 및 바이너리 파일을 포함할 수 있습니다.또한 OPC는 ZIP 아카이브에서 바이너리 및 XML 파일의 위치에 의존하지 않는 몇 가지 명명 규칙과 간접 방식을 정의합니다.

OPC 파일은 일반적인 ZIP 유틸리티를 사용하여 열 수 있습니다.OPC는 간접, 청킹 및 상대적인 [6]간접을 허용합니다.

OPC를 사용한 파일 형식

OPC는 많은 새로운 파일 [7]형식의 기반 기술입니다.

파일 형식 파일 이름 확장자 콘텐츠 표준.
3MF 컨소시엄 3D 제조 형식(3MF) 파일[8] 형식 3mf 적층 제조용 CAD 설계 데이터(3D 프린팅)
Autodesk AutoCAD Design Web Format(DWFX) 파일[9] 형식 .sqfx CAD 설계 데이터(2D/3D 컴퓨터 그래픽스 및 기술 도면)
자동화ML 컨테이너 형식 .amlx 플랜트 엔지니어링 정보
회로도[10] 문서 .cdx 레이아웃, 연결 및 내장 컴포넌트를 포함하는 회로도
Family. 파일 형식[11] 표시 .패밀리 족보, 이야기, 사진
필드 디바이스 통합 FDI 패키지[12][13] .discix 필드 디바이스 통합 정보 IEC 62769-4:2015
Microsoft 응용 프로그램 가상화 파일 형식 .appv 휴대용 응용 프로그램
Microsoft Semblio 파일 형식 .semblio 이미지, 오디오, 비디오가 포함된 전자책과 같은 대화형 학습 자료
Microsoft Visual Studio 2010+ 확장자 파일 형식 .vsix 통합 개발 환경 확장
Microsoft Visio 2013 도면 파일 형식 .vsdx 이전[14] 버전에서 사용된 .vsd(Visio 이진 파일) 및 .vdx(Visio XML Drawing) 형식을 대체합니다.
Microsoft Windows 8, Windows 8.1 및 Windows Phone 8.1 응용[15] 프로그램 패키지 .appx Microsoft Windows Store 및 Windows Phone[16] Store에 나열된 응용 프로그램용 소프트웨어 패키지
Microsoft Windows 8.1 및 Windows Phone 8.1 응용[17] 프로그램번들 .appxbundle Microsoft Windows Store 및 Windows Phone Store에 나열된 응용 프로그램의 하드웨어 플랫폼, 언어 및 리소스를 번들하는 소프트웨어 패키지
Microsoft Windows Azure C# 패키지 .150kg 클라우드 플랫폼 데이터
Microsoft XML 종이 사양 .xps 문서교환용고정문서
MiraMon 열린 압축 지도 .mmzx 지리정보(지리공간 래스터 그래픽스, 벡터 그래픽스 및 표 형식 데이터, 파일 내 기호화 및 메타데이터, 지오서비스 링크 등) ISO 19165-1:2018
NuGet 패키지 .nupkg 패키지 관리 시스템용 소프트웨어 패키지
Office Open XML 문서 .docx 워드프로세서 문서 ECMA-376, ISO/IEC 29500: 2008
Office Open XML 프레젠테이션 .sqx 프레젠테이션 파일 ECMA-376, ISO/IEC 29500: 2008
Office Open XML 워크북 .xlsx 스프레드시트 워크북 ECMA-376, ISO/IEC 29500: 2008
오픈 XML 용지 사양 .oxps 문서교환용고정문서 ECMA-388
Platform Industrie 4.0 - 관리자산[18] 셸 .aasx 관리자산 쉘(AAS)용 패키지 파일 형식
Siemens 디지털 산업 소프트웨어 파일 형식 .sqx
MathWorks Simulink 모델 파일 .slx 모델 기반 설계를 위한 동적 시스템 사양
SMPTE 미디어 패키지 .smpk 멀티미디어 비디오 및 오디오 파일 배포 및 재생을 위한 스토리지 형식 SMPTE ST 2053-2011
SpaceClaim 3D 솔리드 모델[19] 파일 .scdoc 내장형 3D CAD 데이터 파일에는 표준 ACIS 바이너리(SAB) 솔리드 모델 파일이 포함됩니다.
Microsoft XAML 패키지 – 사양이 아닙니다.에 의해 지원되는 기능.이미지와 함께[20] WPF FlowDocument를 저장하기 위한 NET Framework만

프로그래밍

OPC는 Microsoft에서 기본적으로 지원됩니다.NET Framework 3.0은System.IO.네임스페이스를 패키징하고 있습니다.다른 언어에는 오픈 소스 라이브러리가 있습니다.

Windows 7 이후 OPC는 패키징 API라고 불리는 일련의 COM 인터페이스를 통해 Windows API에서 기본적으로 지원됩니다.

또는 ZIP에 올바른 파일이 포함되어 있고 규칙을 따르는 한 ZIP 라이브러리를 사용하여 OPC 파일을 만들고 열 수 있습니다.

패키지, 부품 및 관계

Ecma Office Open XML 표준, ECMA-376 Part 2 컨테이너 구조

OPC 용어에서 패키지라는 용어는 ZIP 아카이브에 대응하고 부품이라는 용어는 ZIP 내에 저장된 파일에 대응합니다.패키지의 각 부품에는, MIME 미디어 타입의 형식으로 표현되는 특정의 컨텐츠 타입과 함께, 일의의 URI 준거의 부품명이 있습니다.부품의 내용 유형은 부품에 저장된 데이터 유형을 명시적으로 정의하고 파일 확장자에 고유한 중복 및 모호성 문제를 줄입니다.

OPC 패키지에는 패키지, 부품 및 외부 리소스 간의 연결을 정의하는 관계도 포함될 수 있습니다.디렉토리 및 부품의 계층과 더불어 OPC 패키지는 일반적으로 관계를 사용하여 관계 연관성의 방향 그래프를 통해 컨텐츠에 액세스합니다.관계는 다음 4가지 요소로 구성됩니다.

  • 식별자(ID)
  • 옵션 소스(패키지 또는 패키지 내의 일부)
  • 관계형(관계의 유형을 정의하는 URI 형식의 표현)
  • 타깃(패키지 내의 다른 부분 또는 외부 자원에 대한 URI)

OPC 패키지는 모든 유형의 데이터(텍스트, 이미지, XML, 바이너리 등)를 포함하는 부품을 저장할 수 있습니다.그러나 확장자 ".rels"는 "/_rels" 하위 폴더에 관계 메타데이터를 저장하기 위해 예약되어 있습니다.하위 폴더 이름 "_rels", 이러한 디렉토리 내의 파일 확장자 ".rels" 및 파일 이름 "[Content_"폴더에 있는 Types.xml"은 OPC 패키지에 저장된 파일의 예약된 이름 3개뿐입니다.

/[콘텐츠_]Types.xml 파일
이 파일은 패키지에 저장된 모든 부품의 MIME 미디어 유형을 정의합니다./[내용]Types.xml" 파일은 파일 확장자 기본값과 다른 내용 유형을 가진 특정 부분에 대한 재정의와 함께 파일 확장자를 기반으로 기본 매핑을 정의합니다.예를 들어, 다음의 몇개의 MIME 타입이 정의되어 있습니다.
<디폴트> 확장 ="관계" Content Type ="application/vnd.openxml formats-modelations.relations+xml"/> 
/_rels
루트 수준 "/_rels" 폴더는 패키지 전체의 관계를 저장합니다."/_rels" 폴더에는 일반적으로 ".rels"라는 이름의 파일이 포함되어 있습니다./_rels/.rels는 시작 패키지 수준의 관계가 저장되는 XML 파일입니다.일반적으로 OPC 기반 파일을 열 때 응용 프로그램은 "/_rels/.rels" 파일에 액세스하여 시작 패키지 수준의 관계를 읽습니다.
[파트네임]릴
각 부품은 고유한 관계를 가질 수 있습니다._rels 폴더는 패키지 내의 특정 부품에 대한 관계를 찾는 곳입니다.특정 부품에 대한 관계를 찾으려면 해당 부품의 형제인 "_rels" 폴더를 찾습니다. 부품에 관계가 있는 경우 "_rels" 폴더에는 원래 부품 이름에 ".rels"가 추가된 파일이 포함됩니다.예를 들어 콘텐츠유형 part file에 관계가 있는 경우 [Content_]라는 파일이 있습니다./_rels" 폴더 내의 Types.xml.rels"를 선택합니다.

모든 관계(루트 패키지와 관련된 관계 포함)는 XML 파일로 표시됩니다.텍스트 편집기에서 ".rels" 파일을 열면 해당 부분을 대상으로 하는 모든 관계를 정의하는 실제 XML 마크업을 볼 수 있습니다.일반적인 관계 파일에는 다음과 같은 XML 코드가 포함되어 있습니다.

<관계> xmlns="http://schemas.openxmlformats.org/package/2006/relationships">   <관계> 아이디='R0' 타입="http://schemas.microsoft.com/xps/2005/06/fixedrepresentation" 대상="/Fixed Document Sequence.fdseq"/>   <관계> 아이디='R1' 타입="http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail" 대상="/문서/1/메타데이터/페이지1_섬네일JPG/> </관계> 

루트 패키지의 2개의 관계를 정의합니다.첫 번째 관계는 루트 패키지로 간주되며(여기서는 Openxmlformats 컬렉션 내에서 Open XML Paper Specification으로 표준화되기 전의 초기 Microsoft XPS 문서의 경우), 다른 하나는 대체 폼 참조에 사용됩니다(여기서는 첫 번째 pa의 썸네일 렌더링 이미지).를 참조해 주세요).

임베디드 문서의 주요 부분은 "/Document"라는 이름의 폴더에 저장되며(파일에 여러 개의 관련 문서가 포함된 경우 하위 디렉토리 자체를 포함할 수 있음), 문서의 주요 부분을 처리하는 데 필요하지 않은 선택적 메타데이터 부분은 "/Metada"라는 이름의 폴더에 저장됩니다.ta"; 단, 이러한 실제 폴더 이름은 실제로 "partname"의 XML 형식 데이터 내에서 지정됩니다.rels" 관계 파일 및 OPC 사양은 애플리케이션에 편리한 모든 폴더 구성을 허용하며 이 두 폴더 이름은 필요하지 않습니다.

청킹

문서를 작은 덩어리로 분할할 수 있습니다.이것은 파일 파손의 [21]영향을 줄이는 데 도움이 됩니다.또한 데이터 액세스에 더 적합합니다. 예를 들어, 모든 스타일 정보를 하나의 XML 부품에 포함시키고, 각 워크시트 또는 테이블을 서로 다른 부품에 포함시킵니다.이렇게 하면 클라이언트의 접근 속도가 빨라지고 오브젝트 작성 횟수가 줄어들며 여러 프로세스가 동일한 문서에서 더 쉽게 작업할 수 있습니다.

상대적인 간접

Open Packaging Conventions에서는 참조가 있는 각 파일에는 인다이렉션목록이 있는 자체 _rels 파일이 있습니다.따라서 일부 정보를 모든 관련 리소스와 쉽게 자르고 붙여넣을 수 있으며 파일 간에 이름이 충돌할 가능성을 제거하기 위한 이름 범위를 제공합니다.

레퍼런스

  1. ^ a b ISO/IEC 29500-2:2008 - 정보기술 - 문서 설명 및 처리 언어 - Office Open XML 파일 형식 - Part 2: 오픈 패키징 규약, ISO
  2. ^ Ecma International TC45 (December 2006). "Standard ECMA-376 Office Open XML File Formats". Ecma International. Retrieved 2007-04-04.
  3. ^ "pack Status: historical". IANA. 2011-10-04. Retrieved 2013-05-12.
  4. ^ "Uniform Resource Identifier (URI) Schemes". Protocol Registries. IANA. Retrieved 2013-05-12. {{cite web}}:외부 링크 work=(도움말)
  5. ^ XPS team (2006-09-01). "Open Packaging Conventions & Open XML Markup Compatibility". XPS team blog. Retrieved 2007-04-04.
  6. ^ Rick Jeliffe (2007-07-29). "Comment on Can a file be ODF and Open XML at the same time?". O'Reilly net XML blogs.
  7. ^ 패키징의 모험 - 2009년 5월 18일 제1화, Microsoft 패키징 팀 블로그: 오픈 패키징 규약
  8. ^ "Archived copy" (PDF). Archived from the original (PDF) on 2016-08-07. Retrieved 2016-05-26.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  9. ^ "Archived copy". Archived from the original on 2014-09-03. Retrieved 2014-08-30.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  10. ^ "CDDX File Format - Circuit Diagram". www.circuit-diagram.org.
  11. ^ "CodePlex Archive". CodePlex Archive.
  12. ^ "Technology - FDI-Cooperation". www.fdi-cooperation.com. Archived from the original on 2014-09-19.
  13. ^ "IEC 62769-4:2015 IEC Webstore". webstore.iec.ch.
  14. ^ "Developer tools, technical documentation and coding examples".
  15. ^ "App packages and deployment (Windows Runtime apps) - Windows app development".
  16. ^ Warren, Tom (February 11, 2014). "Windows Phone 8.1 includes universal apps and lots of feature updates". The Verge.
  17. ^ "Archived copy". Archived from the original on 2016-10-18. Retrieved 2015-01-26.{{cite web}}: CS1 maint: 제목으로 아카이브된 복사(링크)
  18. ^ 자산 관리 셸 세부 사항 - 1부
  19. ^ "SpaceClaim file format". 2013-05-06. Archived from the original on 2013-09-15. Retrieved 2017-08-14.
  20. ^ "DataFormats.XamlPackage Field (System.Windows)".
  21. ^ "Using OPC to Store Your Own Data: Page 3". www.devx.com.

외부 링크