speclogo IMS 콘텐츠 패키징 - XML 바인딩
발행일 2008년 00월 00일
최신 버전 IMS 콘텐츠 패키징 - 정보 모델 버전 1.2
이전 버전

1)IMS 지적재산권 웹 페이지 : http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf
심의부회 :
성 명 근 무 처 직 위
원안작성 협력기관 : 한국교육학술정보원(IMS Korea 표준화 포럼)
성 명 근 무 처 직 위
(위 원 장) 황대준 성균관대학교 교수
(실무위원) 김성윤 (주)포씨소프트 이사
(실무위원) 김 현 (주)씨티유니온 과장
(실무위원) 유욱종 (주)다울소프트 부장
(실무위원) 조성현 테크빌닷컴(주) 부사장
(실무위원) 조용상 한국교육학술정보원 팀장
(실무위원) 장근원 (주)크레듀 과장
(실무위원) 차남주 (주)디유넷 부사장
(실무위원) 최성기 SK C&C 과장
(자문위원) 권희춘 수원여대 교수
(자문위원) 김종현 계원예술대학 교수
(자문위원) 김현진 한국교원대학교 교수
(자문위원) 손진곤 한국방송통신대학교 교수
(자문위원) 정광식 한국방송통신대학교 교수
(자문위원) 한태인 (주)메디오피아 부사장
(간 사) 신성욱 한국교육학술정보원 연구원

목 차

머 리 말

이 표준은 한국의 이러닝 분야 디지털 콘텐츠의 공유 및 유통 체제 확립을 위해 IMS Global Learning Consortium(이하 GLC)의 Content Packaging 표준을 기초로 작성한 IMS Korea 단체표준이다. 이 표 준은 한국의 문화적, 교육적, 언어적 특수성 등을 감안하여 현지화 등 확장을 고려하여 작성되었다. 또한 이 표준을 실제 구현할 때 부분적으로 선택하여 적용할 수 있도록 필수와 선택 영역이 구분되어 있으므로 목적에 따라 선별적인 적용이 가능하다. 이 표준은 이러닝 분야 디지털 콘텐츠의 논리적인 구조와 물리적인 파일들을 체계적으로 바인딩 할 수 있도록 정의된 모델로서, 구조정보파일인 매니페스트(manifest) 파일을 포함한 모든 자원들이 하나 의 압축파일(zip, jar, tar 등) 형태로 묶여지도록 설계되었다. 교환 패키지(interchange package)라고 불 리는 이 파일은 실제 유통되는 포맷으로서, 이러닝 플랫폼에 탑재(import) 또는 추출(export)되는 표준 화된 메커니즘을 제공한다. 이 표준은 멀티파트로 구성되며, 다음과 같은 세가지 표준 문서로 구성된다.
  • Part 1 : 정보모델 (Information Model)
  • Part 2 : XML 바인딩(XML Binding)
  • Part 3 : 활용 사례 및 실행 가이드(Best practice & Implementation Guide)
이 표준은 저작권법에서 보호 대상이 되는 저작물이다. 이 표준 문서의 표지에 있는 지적재산권 공지사항을 숙지할 것을 다시 한번 강조한다. 참고로 이 표준은 현재 ISO/IEC JTC1 SC36(Information Technology for Learning, Education, and Training)에도 제출되어 국제 표준(ISO)으로 승인 받기 위한 작업을 진행 중이며, 교육과학기술부의 사이버가정학습 및 디지털 교과서 등과 같은 정책사업에 적용 중인 표준이다.

1. 적용범위

이 표준은 교육분야의 콘텐츠 패키징 정보모델을 XML 스키마를 이용해 XML로 표현하는 방법을 정의한다.

2. 인용 표준

2.1 참조표준

  • [Schematron, 06]: Document Schema Definition Languages (DSDL) - Part 3: Rule-based Validation - Schematron, ISO/IEC, ISO/IEC FDIS 19757-2, 2004. [RFC2119]
  • [CP, 07a]: IMS Content Packaging Information Model Specification Public Draft v2.0
  • [CP, 07b]: IMS Content Packaging Best Practice and Implementation Guide Public Draft v2.0
  • [I-BAT, 06]: IMS Binding Auto-generation Toolkit Manual v1.0
  • VDEX, 04a]: IMS Vocabulary Definition Exchange Information Model Specification Final Release v1.0
  • [VDEX, 04b]: IMS Vocabulary Definition Exchange XML Binding Specification Final Release v1.0

3. 바인딩 플랫폼 종속모델(Platform Specific Model)

3.1 플랫폼 종속모델의 관례

  • IMS UML 프로파일 스테레오 타입(stereotype)은 UML 특성을 XML에 매핑하는 것을 결정할 때 에 사용된다. 스테레오 타입은 다음과 같이 매핑된다 (전체 규칙은 [I-BAT, 06] 참조).
  • 속성(Attributes) – 이 버전에 기술된 모든 데이터에 대한 정의는 클래스에 의해 명명된 요소를 위해 XML 속성에 매핑된다. 예를 들어, 그림 2.1을 보면, 복합유형(complexType) 매니페스트 (manifest)는 식별자(identifier), 버전(version), 기본xml(xmlbase) 그리고 확장자(extension) 와 같 은 속성을 포함하고 있다.
  • 바인딩(Binding) – 데이터모델의 XSD 바인딩에 종속적인 메타데이터를 포함시키기 위해 사용된다.
  • 데이터모델(DataModel) – 모든 내포된 클래스가 XML 구조에 매핑 됨을 표시하기 위해 사용된다.
  • 범례(Legend) – 저자, 버전, 상태 등 데이터모델에 대한 메타데이터를 포함하기 위해 사용된다. 범례는 XSD의 코멘트 구조에 나타내진다.
  • 루트(Root) – XDS의 루트를 표시하고 루트 요소의 선언을 강제하기 위해 사용된다.
  • 시퀀스(Sequence) – 모든 UML 클래스는 XML ‘복합유형’에 매핑된다. 포함된 요소들의 순서는 중요하다. 즉, 시퀀스는 UML 클래스에서 정의된 특정 시퀀스 정보를 따른다.
  • 선택(Selection) – 모든 UML 클래스는 XML ‘복합유형’에 매핑되어 있다. 이는 속성들 중에서의 선택을 가능하게 한다.
  • 임포트(Import) – 다른 데이터모델에 포함된 정의들을 임포트하기 위해 사용된다.

3.2 핵심 콘텐츠 패키지의 IMS UML 프로파일 데이터모델

그림 3.1은 핵심 콘텐츠 패키징 표준의 플랫폼 종속 모델(Platform Specific Model: PSM)을 보여준다. PSM은 콘텐츠 패키징 표준 [CP, 07a]에 대한 정보모델 내에서 생성된 플랫폼 독립 모델(Platform Independent Model)에서부터 파생되었다.
IMS KR 1001-2_3.1

그림 3.1 핵심 콘텐츠 패키징 바인딩에 대한 PSM

3.3 콘텐츠 패키지 확장의 IMS UML 프로파일 데이터모델

그림 3.2는 콘텐츠 패키징 표준에서 새롭게 추가된 새로운 기능들에 대한 플랫폼 종속 모델(PSM)이다. 콘텐츠 패키지 1.2버전은 1.1.4버전에서 제공하는 여러 기능과 다음과 같은 기능들을 추가해 만들어졌다.
  • 여러 유형의 리소스에 대한 호환 및 활용
  • 다중언어로 표기 및 사용이 가능한 타이틀 제공
  • 파일에 대한 포인트 링크 제공
PSM은 콘텐츠 패키징 표준[CP, 07a]을 위한 정보모델 내에서 생산된 플랫폼 독립 모델(Platform Independent Model)로부터 파생되었다.
IMS KR 1001-2_3.2

그림 3.2 콘텐츠 패키징 확장 바인딩을 위한 PSM

3.4 PSM으로부터 XSD 생성하기

XSD 바인딩 생성 절차는 다음과 같다.
  1. 정보모델은 IMS 데이터모델 UML 프로파일 [I-BAT, 06]를 이용해 정의되어야 한다. 이 프로파일은 IMS 자동 생성 툴에 의해 사용될 수 있는 표준들에 대한 기술을 UML 을 사용해 생성하는 법을 기술한다.
  2. UML 에 대한 기술은 XMI 파일, 즉 XMI 표준에 적합한 XML 인스턴스(instance)로 이용 가능하여야 한다. 현재 포세이돈(Poseidon) 툴 2.5 버전 또는 그 이후 버전으로 생성된 XMI 파일들만 유효하다. 포세이돈 툴은 압축 해제해야 하는 ‘zuml’파일과 I-BAT 에 입력되는 데 사용되는 XMI 파일을 생성한다.
  3. XMI 파일은 이제 I-BAT 에 입력되는 데 사용된다. WSDL 파일을 생성하기 위해, 적절한 XSLT 툴 (IMS 에서 가장 권장하는 툴은 Oxygen 이다)을 이용해 XSL 파일 'UMLtoXSDTransform.xsl'이 XMI 파일에 적용된다. WSDL 파일 생성 과정에서, 바인딩 파일들을 생성하면서 I-BAT 가 발견한 문제들을 식별하는 데 사용되는 검증 보고서 텍스트 파일(validation report text file)도 생성된다.
I-BAT을 사용하면서 유의해야 할 점은 다음과 같다.
  • I-BAT는 검증 보고서에 기술된 문제와 관계없이 바인딩 파일을 생성하려고 시도할 것이다.
  • I-BAT는 UML 기술상의 문제를 해결하기 위해 사용될 수 없다. 정보모델상의 문제는 적절한 UML 저작 툴을 이용해 해결되어야 한다. 바인딩 생성 과정은 이후 새로운 XMI 파일을 이용해 반복되어야 한다.
  • 새로운 바인딩 파일들이 생성되면 직접 수정된(hand edits) XSD 파일은 사라진다.
UML PSM의 기능을 XSD 표현으로 매핑하는 규칙은 다음과 같다.
  • UML 클래스 중 ‘속성’, ‘시퀀스’ 그리고 ‘선택’ 의 스테레오 타입을 가진 모든 클래스는 XSD의 복합유형(ComplexType)에 매핑된다.
  • XSD내의 복합유형의 이름은 ‘Type’스트링이 첨부된 동등 UML 클래스와 같다.
  • 전역적 속성 그룹의 이름은 ‘.Attr’ 스트링이 첨부된 UML 속성 스테레오 타입 클래스의 이름이다.
  • XSD내의 속성 이름은 UML ‘속성’ 스테레오 타입 클래스의 속성의 이름으로부터 차용되였다.
  • XSD의 요소 이름은 UML ‘시퀀스’ 스테레오 타입 클래스의 속성의 이름으로부터 차용되였다.
  • UML ‘시퀀스’ 클래스의 속성에 대한 ‘+’ 심볼은 전역적 요소 XSD 정의에 매핑된다.
  • UML ‘시퀀스’ 클래스의 속성에 대한 ‘-‘ 심볼은 로컬 요소 XSD 정의에 매핑된다.
  • UML ‘속성’ 클래스의 속성에 대한 ‘+’심볼은 전역적 속성 그룹 XSD 정의에 매핑된다.
  • UML ‘속성’ 클래스의 속성에 대한 ‘-‘ 심볼은 로컬 속성 그룹 XSD 정의에 매핑된다.
  • UML ‘시퀀스’ 클래스의 속성 다중성은 동등 XSD 요소 다중성에 매핑된다.
  • UML ‘속성’ 클래스의 속성 다중성은 동등 XSD 속성 다중성에 매핑된다.
  • ‘속성’ 스테레오 타입의 ‘확장’ UML 속성은 XML 속성 ‘anyattribute’에 매핑된다.
  • ‘xml’ UML 속성은 XML 속성 ‘xml:base’에 매핑된다.
  • ‘시퀀스’ 스테레오 타입의 ‘확장’ UML 속성은 XML 네임스페이스를 가진 확장에 매핑된다.
  • ‘속성’ 스테레오 타입의 ‘XLinkHref’ UML 속성은 XLink 네임스페이스의 XML 속성 ‘xlink:ref’에 매핑된다.
  • ‘속성’ 스테레오 타입의 ‘XLinkType’ UML 속성은 XLink 네임스페이스의 XML 속성 ‘xlink:type’에 매핑된다.
  • 'String', 'ID', 'IDREF' 유형의 UML 속성은 동등 XSD 기본형(primitive type)에 매핑된다.
이 표준에는 다음 파일들이 바인딩 문서의 일부로 제공된다.
  • imscp_psm_v1p2.zuml – 핵심 콘텐츠 패키지(Content Package)의 바인딩을 위한 PSM포맷의 포 세이돈(버전 3.2)툴 파일
  • imscp_psm_v1p2.xmi – 핵심 콘텐츠 패키지 바인딩을 위한 PSM의 XMI 파일. 이 파일은 I-BAT 툴에 의해 처리된다.
  • imscp_v1p2.xsd – I-BAT을 사용해 XMI 파일로부터 생성된 핵심 콘텐츠 패키지 바인딩 XSD 파 일
  • imscp_extension_psm_v1p2.zuml – 콘텐츠 패키지 확장의 바인딩을 위한 PSM포맷의 포세이돈 (버전 3.2) 툴 파일
  • imscp_extension_psm_v1p2.xmi – 콘텐츠 패키지 확장의 바인딩을 위한 PSM의 XMI 파일. 이 파일은 I-BAT 툴에 의해 처리된다.
  • imscp_extensionv1p2.xsd – I-BAT을 사용해 XMI 파일로부터 생성된 콘텐츠 패키지 확장 바인딩 XSD 파일

4. XML 스키마 문서화

4.1 핵심 콘텐츠 패키징 바인딩 기술

핵심 콘텐츠 패키징 XSD 파일 목록은 첨부 A1 에 제시되어 있다.

4.1.1 스키마 목차

  • 스키마 문서 속성
  • 전역적 선언 ― 요소(Element) : Manifest
  • 전역적 정의 ― 복합 유형(Complex Type) : Dependency.Type ― 복합 유형(Complex Type) : File.Type ― 복합 유형(Complex Type) : Item.Type ― 복합 유형(Complex Type) : Manifest.Type ― 복합 유형(Complex Type) : ManifestMetadata.Type ― 복합 유형(Complex Type) : Metadata.Type ― 복합 유형(Complex Type) : Organization.Type ― 복합 유형(Complex Type) : Organizations.Type ― 복합 유형(Complex Type) : Resource.Type ― 복합 유형(Complex Type) : Resources.Type ― Model Group: grpStrict.any

4.1.2 스키마 문서 속성

타겟네임스페이스 http://www.imsglobal.org/xsd/imscp_v1p1
버전 IMS CP 1.2
요소와 속성 네임스페이스
  • 전역적(Global) 요소와 속성 선언은 이 스키마의 타겟 네임스페이스에 속한다.
  • 디폴트에 의해, 로컬 요소 선언은 이 스키마의 타겟 네임스페이스에 속한다.
  • 디폴트에 의해, 로컬 속성 선언은 네임스페이스를 가지지 않는다.
스키마 구성
문서화 XSD 데이터 파일 정보 저자: Colin Smythe 일자: 2006 년 10월 31일 버전: 2.0 상태: CM/DN 출시 기술: 이 문서는 바인딩을 목적으로 IMS CP 1.2 정보모델의 규범적 표현이다. 플랫폼 독립 모델 표현을 참조하려면 관련 IMS CP 정보모델을 참조할 것. 개정이력: 이 문서는 IMS CP 1.2 버전 XSD의 1 버전이며, IMS CP 1.14 버전 XSD를 대체한다. 타겟 네임스페이스가 변경되지 않았다는 점에 주의할 것. 기능적 추가사항 외의 주요 구조적 변화는 다음과 같다. (1) 모든 요소와 속성들은 호스트 객체에 대해 로컬로 정의된다. (2) 복합유형 정의에 다음과 같은 코멘트가 추가되었다. Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved. IMS Global Learning Consortium, Inc. ("IMS")는 이 바인딩 (“Specification”)에 포함되어 있는 정보를 출간하나, 관련 정보는 학문적, 과학적, 경험적 협력을 도모 하는데만 활용될 수 있다. IMS는 표준의 정확성과 완전성을 보장하지 않는다. 이 문서는 ‘있는 그대로(As Is)’와 ‘가용한 범위 내에서(As Available)’ 의 조건 하에서만 제공된다. 표준은 사전공지 없이 개정될 수 있다. 표준의 유용성, 정확성, 완전성을 입증할 책임은 표준사용자에게 있다. 이 문서에 관한 의견이나 제안사항이 있는 경우 IMS에 보내주시기 바랍니다. IMS의 웹사이트 주소는 http://www.imsglobal.org이다. 소스 XSLT 파일 정보 XSL 생성자: UMLtoXSDTransformv0p7.xsl XSLT P가공자: Xalan 출시: 1.0 베타 1 일자: 2005 년 11월 30일 자동생성 툴 이 WSDL/XSD는 IMS WSDL/XSD 자동생성 툴을 이용해 자동 생성되었다. 이 툴이 XSD를 제대로 자동 생성하도록 최대한의 노력을 기울였지만, 사용자들은 이 툴이 실험적인 툴임을 유의해야 한다. IMS는 이 툴에 대한 사용을 허가한다., 제 3자가 이 툴을 이용해 생성한 자료에 대한 어떠한 권리도 주장하지 않으며 책임 또한 지지 않는다.. 자세한 툴 사용법은 IMS 웹사이트에 등록된 IMS 문서 ‘IMS 일반 웹서비스: WSDL/XSD 바인딩 자동생성’에서 참고할 수 있다. 툴 저작권: 2005 (c) IMS Global Learning Consortium Inc. All Rights Reserved.

4.1.3 전역적 선언

4.1.3.1 요소: Manifest
이름 Manifest
유형 Manifest.Type
Nillable 해당없음
추상 해당없음
    • 논리적 구성도
IMS KR 1001-2_3.3
    • XML 인스턴스 표현 방식
ManifestMetadata.Type [0..1] Organizations.Type [1] Resources.Type [1] Manifest.Type [0..*] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증) [0..*]
    • 구성도
IMS KR 1001-2_3.4
    • 스키마 구성요소 표현 방식
 

4.1.4 전역적 정의

4.1.4.1 복합 유형(Complex Type) : Dependency.Type
상위유형: 없음
하위유형: 없음
이름 Dependency.Type
사용주체 (동일 스키마 문서 내) Complex Type Resource.Type
추상 해당없음
문서화 의존(Dependency)요소는 의존요서의 상위 자원 요소 내의 다른 자산 참조들을 연계하는 방법을 제공한다. 이 요소는 자산 참조에 대한 간략한 선언(parsimonious declaration)을 허용한다. 공유되는 자산참조는 한 번 선언될 수 있으며 의존성 요소를 통해 여러 번 연계될 수 있다. 는 ims-cp-imDependency: Dependency.[ Extension ].에 정의된 자식 객체들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.5
    • 스키마 구성요소 표현 방식
 
4.1.4.2 복합 유형(Complex Type) : File.Type
상위유형: 없음
하위유형: 없음
이름 File.Type
사용주체 (동일 스키마 문서 내) Complex Type Resource.Type
추상 해당없음
문서화 파일(File)은 한 개의 자산에 참조를 선언한다. 이 참조는 파일 요소를 포함하는 패키지에 직계적(relative)이거나 우회적(패키지 의 외부)일 수 있다. 파일 요소는 자신의 href 속성에 참조 되는 동일한 자원에 대해 또 다른 참조를 선언하는 하위 확장자를 포 함할 수 있다.
는 ims-cp-imFile : File에 정의된 자식 객체의 바인딩을 표현한다. [메타데이터, 확장].
    • XML 인스턴스 표현 방식
Metadata.Type [0..1] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.6
    • 스키마 구성요소 표현 방식
 
4.1.4.3 복합 유형(Complex Type) : Item.Type
상위유형: 없음
하위유형: 없음
이름 Item.Type
사용주체 (동일 스키마 문서 내) Complex Type Organization.Type , Complex Type Item.Type
추상 해당없음
문서화 항목(Item)은 특정한 구성내의 구조를 연결하는 점(구조적 노드[node])이라 할 수 있다. 항목 요소는 다른 항목 요소의 상위(parent) 또는 하위(child)요소일 수 있으며, 각 요소는 고유한 구조적 노드를 나타낸다. 하나의 구성은 최소한 하나의 항목 요소를 가지지 않는 한 그 어떠한 의미도 가지지 않는다.
는 ims-cp-imItem: Item. [ Title, Item, Metadata, Extension ].의 하위 객체의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
xs:string[0..1] Item.Type [0..*] Metadata.Type [0..1] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.7
    • 스키마 구성요소 표현 방식
 
4.1.4.4 복합 유형(Complex Type) : Manifest.Type
상위유형: 없음
하위유형: 없음
이름 Manifest.Type
사용주체 (동일 스키마 문서 내) Complex Type Manifest.Type , Element manifest
추상 해당없음
문서화 구조정보파일(Manifest)은 IMS 콘텐츠 패키징 정보모델의 의미론적으로 완전한 형태의 인스턴스(instance)를 나타내는데 사용되는 여러 데이터 구조를 함유한다. 매니페스트(manifest)는 같은 IMS 구조정보파일 자체 내에서 하위구조정보파일(childmanifest) 을 참조하고 포함할 수 있다. 최상위 매니페스트 (manifest) 는 모든 IMS 패키지를 정의한다. 하위구조정보파일은 해당 패키지의 의미론적으로 완전한 하위집합을 정의한다.
는 of ims-cp-imManifest : Manifest. [ManifestMetadata, Organizations, Resources, Manifest, Extension ].의 하위레벨로 정의된 객체들의 바인딩을 표현한다.
    • XML 인스턴스 확장
ManifestMetadata.Type [0..1] Organizations.Type [1] Resources.Type [1] Manifest.Type [0..*] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.8
    • 스키마 구성요소 표현 방식
 
4.1.4.5 복합 유형(Complex Type) : ManifestMetadata.Type
상위유형: 없음
하위유형: 없음
이름 ManifestMetadata.Type
사용주체 (동일 스키마 문서 내) Complex Type Manifest.Type
추상 해당없음
문서화 이 구조정보메타데이터(ManifestMetadata)는 전체 패키지에 대한 기술적 정보를 선언하는 데이터 구조를 포함한다. 하나 이상의 각기 다른 메타데이터모델들은 메타데이터의 하위레벨로 확장되어 선언될 수 있다. 스키마와 스키마버전의 하위요소들은 사용되는 메타데이터모델들의 종류나 집합을 정의한다.
는 ims-cp-imManifestMetadata: ManifestMetadata. [ Schema, SchemaVersion, MetadataModel ]..에 대해 하위레벨로 정의된 객체(child objects)들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
xs:string [0..1] xs:string [0..1] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.9
    • 스키마 구성요소 표현 방식
 
4.1.4.6 복합 유형(Complex Type) : Metadata.Type
상위유형: 없음
하위유형: 없음
이름 Metadata.Type
사용주체 (동일 스키마 문서 내) Complex Type Organization.Type , Complex Type Resource.Type , Complex Type Item.Type , Complex Type File.Type
추상 해당없음
문서화 메타데이터(Metadata)의 인스턴스(instance)는 메타데이터의 상위객체(parent)에 관한 기술적 정보만을 선언하는 데이터 구조를 포함한다. 하나 이상의 메타데이터모델이 메타데이터 요소의 하위레벨로 확장으로 선언될 수 있다.
는 ims-cp-imMetadata: Metadata.[ Extension ].에 정의된 하위객체의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
xs:string [0..1] xs:string [0..1] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.11
    • 스키마 구성요소 표현 방식
 
4.1.4.7 복합 유형(Complex Type) : Organization.Type
상위유형: 없음
하위유형: 없음
이름 Organization.Type
사용주체 (동일 스키마 문서 내) Complex Type Organizations.Type
추상 해당없음
문서화 구성(Organization)은 최상위(grandparent) 매니페스트 (manifest)에 의해 요약된 정보가 구조를 이루는데 쓰인 특정 방법이나 관점과 관련된 모든 데이터 구조를 포함 및 나타낸다.. 같은 상위(parent) 조직 요소 내의 다중 구성 요소도 같은 목적을 지닌다. 즉, 각 요소는 최상위 매니페스트(manifest) 객체에 선언된 동일 정보를 구성하는 각기 다른 방법을 보여준다.
는 ims-cp-Organization: Organization : Organization [ Title, Item, Metadata, Extension ].에 정의된 하위객체들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
xs:string[0..1] Item.Type [1..*] Metadata.Type [0..1] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.12
    • 스키마 구성요소 표현 방식
 
4.1.4.8 복합 유형(Complex Type) : Organizations.Type
상위유형: 없음
하위유형: 없음
이름 Organizations.Type
사용주체 (동일 스키마 문서 내) Complex Type Manifest.Type
추상 해당없음
문서화 구성집합(Organizations)은 상위(parent) 구조정보파일(manifest) 에 의해 요약된 정보가 구성되는 방법이나 방법들을 기술하는 모든 데이터 구조들을 포함하고 나타낸다..
는 ims-cp-imOrganizations: Organizations. [ Organization, Extension ]. 의 하위 객체들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
Organization.Type [0..*] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.13
    • 스키마 구성요소 표현 방식
 
4.1.4.9 복합 유형(Complex Type) : Resource.Type
상위유형: 없음
하위유형: 없음
이름 Resource.Type
사용주체 (동일 스키마 문서 내) Complex Type Resources.Type
추상 해당없음
문서화 자원(Resource)은 특정 자산(asset)이나 자원들의 집합을 함유하는 컨테이너이다. 자원은 두 같은 유형이거나 다른 유형 (파일 포맷 등)을 가진 자산들에 대한 참조를 포함할 수 있다. IMS 패키지의 범위 또는 경계는 하위(child), 직계 자손(direct escendent), 또는 외부 링크 자손으로 최상위 구조정보파일과 연계된 모든 자원집합(resources) 컨테이너에 집합된 자산참조(asset reference)에 의해 정의된다.
는 ims-cp-imResource: Resource. [ Metadata, File, Dependency, Extension ].에 정의된 하위 객체들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
  Metadata.Type [0..1] File.Type [0..*] Dependency.Type [0..*] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.14
    • 스키마 구성요소 표현 방식
 
4.1.4.10 복합 유형(Complex Type) : Resources.Type
상위유형: 없음
하위유형: 없음
이름 Resources.Type
사용주체 (동일 스키마 문서 내) Complex Type Manifest.Type
추상 해당없음
문서화 자원집합(Resources)은 하나 이상의 자원들에 대한 참조를 포함 하는 데이터 구조를 포함하는 컨테이너이다. 자원 참조(asset reference)는 자신을 포함하는 자원 요소와 최상의 방법으로 그 루핑될 수 있다. 참조 자원의 범위는 자원 요소의 부모 매니페스 트(manifest) 요소에만 해당된다.
는 ims-cp-imResources: Resources. [ Resource, Extension]. 에 정의 된 하위 객체들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
Resource.Type [0..*] 이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.15
    • 스키마 구성요소 표현 방식
 
4.1.4.11 Model Group: grpStrict.any
상위유형: 없음
하위유형: 없음
이름 grpStrict.any
사용주체 (동일 스키마 문서 내) Complex Type Manifest.Type , Complex Type Metadata.Type , Complex Type Organizations.Type , Complex Type Resources.Type , Complex Type Organization.Type ,Complex Type Resource.Type , Complex Type Item.Type ,Complex Type File.Type , Complex Type Dependency.Type ,Complex Type ManifestMetadata.Type
추상 해당없음
문서화 네임스페이스에서 네임스페이스화된 가진 모든 요소는 ‘any’요소 에 포함될 수 있다. 등록된 요소의 네임스페이스는 반드시 인스 턴스(instance)에 정의되어야 하며, 스키마는 등록되어야 한다. 확장은 ‘strict’의 정의를 가지고 있으며, 이는 자신만의 네임스페 이스를 가지고 있어야 함을 뜻한다.
    • XML 인스턴스 표현 방식
이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.16
    • 스키마 구성요소 표현 방식
 

4.2 콘텐츠 패키징 확장 바인딩 기술

4.2.1 목차

    • 스키마문서속성
    • 전역적 선언
― 요소(Element) : ipointer ― 요소(Element) : lingualTitle ― 요소(Element) : variant
    • 전역적정의
― 복합 유형(Complex Type) : IPointer.Type ― 복합 유형(Complex Type) : LingualTitle.Type ― 복합 유형(Complex Type) : Metadata.Type ― 복합 유형(Complex Type) : Variant.Type ― 모델 그룹(Model Group): grpStrict.any

4.2.2 스키마 문서 속성

타겟네임스페이스 http://www.imsglobal.org/xsd/imscp_extensionv1p2
버전 IMS CPX 1.2
요소와 속성 네임스페이스
  • 전역적 요소와 속성 선언은 이 스키마의 타겟 네임스페이 스에 속한다.
  • 디폴트에 의해, 전역적 요소 선언은 이 스키마의 타겟 네임 스페이스에 속한다.
  • 디폴트에 의해, 로컬 속성 선언은 네임스페이스를 가지지 않는다.
스키마 구성
문서화 XSD 데이터 파일 정보 저자: Colin Smythe (IMS, UK) 일자: 2006 년 10월 31일 버전: 2.0 상태: CN/DN 출시 기술: 이 문서는 바인딩을 목적으로 하는 IMS 패키징 확장 1.0 정보모델의 규범적 표현이다. 플랫폼 독립 모델 표현에 대해서는 관련 IMS 콘텐츠 패키징 정보모델을 참조한다. 개정이력: 2버전은 IMS 패키징 유틸리티 1.2 버전 XSD 공개 초안의 LingualTitle. Version 1에 대한 수정된 정의를 포함한다. 수정된 정의는 http://www.imsglobal.org/xsd/imscp_extensionv1p2 의 타겟 네임스페이스를 가진다. 이 유틸리티는 모델링에 대해 일반적인 접근법을 사용한다. (1) 모든 요소와 속성은 호스트 객체에 대해 로컬로 정의된다. (2) 호스트 객체는 여러 개가 있다. (3) 자원유형 정의에 다음과 같은 코멘트가 추가되었다. Copyright: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved. IMS Global Learning Consortium, Inc. ("IMS")는 이 바인딩 (“Specification”)에 포함되어 있는 정보를 출간하나, 관련 정보는 학문적, 과학적, 경험적 협력을 도모하는데만 활용될 수 있다. IMS는 표준의 정확성과 완전성을 보장하지 않는다. 이 문서는 ‘있는 그대로(As Is)’와 ‘가용한 범위 내에서(As Available)’의 조건 하에서만 제공된다. 표준은 사전공지 없이 개정될 수 있다. 표준의 유용성, 정확성, 완전성을 입증할 책임은 표준 사용자에게 있다. 이 문서에 관한 의견이나 제안사항이 있는 경우 IMS에 보내주시기 바랍니다. IMS의 웹사이트 주소는 http://www.imsglobal.org이다. 소스 XSLT 파일 정보 XSL 생성자: UMLtoXSDTransformv0p7.xsl XSLT 가공자: Xalan 출시: 1.0 베타 1 일자: 2005 년 11월 30일 자동생성 툴 이 WSDL/XSD는 IMS WSDL/XSD 자동생성 툴을 이용해 자동생성되었다. 이 툴이 XSD를 제대로 자동생성하도록 최대한의 노력을 기울였지만, 사용자들은 이 툴이 실험적인 툴임을 유의해야 한다. IMS는 이 툴을 사용하도록 허가를 득하였으며, 제 3자가 이 툴을 이용해 생성한 자료에 대한 어떠한 권리도 주장하지 않는다. 자세한 툴 사용법은 IMS 웹사이트에 등록된 IMS 문서 “IMS 일반 웹서비스: WSDL/XSD바인딩 자동생성”에서 참고할 수 있다. 툴 저작권: 2006 (c) IMS Global Learning Consortium Inc. All Rights Reserved.

4.2.3 전역적 선언

4.2.3.1 요소(Element): ipointer
이름 ipointer
유형 IPointer.Type
Nillable 해당없음
추상 해당없음
    • 논리적 구성도
IMS KR 1001-2_3.17
    • XML 인스턴스 표현 방식
이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.18
    • 스키마 구성요소 표현 방식
 
4.2.3.2 요소(Element) : lingualTitle
이름 lingualTitle
유형 LingualTitle.Type
Nillable 해당없음
추상 해당없음
    • 논리적 구성도
IMS KR 1001-2_3.20
    • XML 인스턴스 표현 방식
xs:string
    • 구성도
IMS KR 1001-2_3.19
    • 스키마 구성요소 표현 방식
 
4.2.3.3 요소(Element): Variant
이름 Variant
유형 Variant.Type
Nillable 해당없음
추상 해당없음
    • 논리적 구성도
IMS KR 1001-2_3.20
    • XML 인스턴스 표현 방식
Metadata.Type [1]
    • 구성도
IMS KR 1001-2_3.21
    • 스키마 구성요소 표현 방식
 

4.2.4 전역적 정의

4.2.4.1 복합 유형(Complex Type) : IPointer.Type
상위유형: 없음
하위유형: 없음
이름 IPointer.Type
사용주체 (동일 스키마 문서 내) Element ipointere
추상 해당없음
문서화 패키저(packager)는 IPointer 객체의 바인딩된 인스턴스(instance)를 이용해 IPointer 객체를 포함하는 IMS 매니페스트(manifest) 문서 내의 특정 XML 노드 집합, 또는 다른 IMS 매니페스트(manifest) 문서 인스턴스(instance)의 XML 노드 집합을 IMS Pointer 인스턴스(instance)를 포함하는 상위 객체와 연관시킬 수 있다. 참조된 노드 집합은 반드시 유형과 다중성 면에서 참조하는 상위 요소의 유효한 하위레벨이어야 한다.
는 ims-cp-imManifest : Manifest. [ManifestMetadata, Organizations, Resources, Manifest, Extension ]. 의 하위레벨로 정의된 객체들의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.22
    • 스키마 구성요소 표현 방식
 
4.2.4.2 복합 유형(Complex Type) : LingualTitle.Type
상위유형: 없음
하위유형: 없음
이름 LingualTitle.Type
사용주체 (동일 스키마 문서 내) Element lingualTitle
추상 해당없음
    • XML 인스턴스 표현 방식
xs:string
    • 구성도
IMS KR 1001-2_3.23
    • 스키마 구성요소 표현 방식
 
4.2.4.3 복합 유형(Complex Type) : Metadata.Type
상위유형: 없음
하위유형: 없음
이름 Metadata.Type
사용주체 (동일 스키마 문서 내) Complex Type Variant.Type
추상 해당없음
문서화 메타데이터(Metadata)의 인스턴스(instance)는 메타데이터의 상위객체(parent)에 관한 기술적 정보만을 선언하는 데이터 구조를 포함한다. 하나 이상의 메타데이터모델이 메타데이터 요소의 하위레벨로 확장으로 선언될 수 있다.
는 ims-cp-imMetadata: Metadata.[ Extension ]. 에 정의된 하위객체의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격검증). [0..*]
    • 구성도
IMS KR 1001-2_3.24
    • 스키마 구성요소 표현 방식
 
4.2.4.4 복합 유형(Complex Type) : Variant.Type
상위유형: 없음
하위유형: 없음
이름 Variant.Type
사용주체 (동일 스키마 문서 내) Element variant
추상 해당없음
문서화 변형(Variant) 요소는 IMS 콘텐츠 패키징 정보모델의 자원 요소와 매우 유사하다. 변형은 대체 자원의 콘테이너이다. 자원은 모두 같은, 또는 모두 다른 유형 (파일 포맷 등)의 자원들에 대한 참조를 포함할 수 있다. 변형 클래스는 대체 자원을 가르킨다. 메타데이터는 대체 자원 집합의 성격과 용도를 기술하기 위해 사용된다. 예를 들면, 언어 변형(lingual variants), 시각적, 청각적 변형, 교정 변형 (remediation variants), 또는 플랫폼 전달 변형 등이 있다. 참조된 자원의 범위는 변형 객체에만 해당된다. 이들은 변형 인스턴스(instance), 특히 IMS CP 네임스페이스의 자원 객체의 바인딩된 인스턴스(instance)를 포함하는 부모 객체의 맥락 내에서 사용된다.
는 ims-cp-imResource: Resource. [ Metadata, File, Dependency, Extension ]. 에 정의된 자식 객체의 바인딩을 표현한다.
    • XML 인스턴스 표현 방식
Metadata.Type [1]
    • 구성도
IMS KR 1001-2_3.25
    • 스키마 구성요소 표현 방식
 
4.2.4.5 Model Group: grpStrict.any
상위유형: 없음
하위유형: 없음
이름 grpStrict.any
사용주체 (동일 스키마 문서 내) Complex Type IPointer.Type , Complex Type Metadata.Type
추상 해당없음
문서화 모든 네임스페이스에서 네임스페이스화 된 요소는 모두 ‘any’ 요 소에 포함될 수 있다. 등록된 요소의 네임스페이스는 인스턴스 (instance)에서 정의되어야 하며, 스키마는 반드시 등록되어야 한 다. 확장은 ‘strict’로 정의할 수 있으며, 이는 자신만의 네임스페이 스를 가지고 있어야함을 말한다.
    • XML 인스턴스 표현 방식
이 스키마의 네임스페이스 외의 다른 네임스페이스의 그 어떠한 속성이라도 허용할 것 (엄격 검증). [0..*]
    • 구성도
IMS KR 1001-2_3.26
    • 스키마 구성요소 표현 방식
 

5. 스키마트론(schematron)의 사용

두 가지 XSD (핵심과 확장 XSD)는 링크되지 않는다. 즉, 하나의 XSD는 다른 XSD를 임포트(import)하지 않는다. 이는 링크를 하면 확장성 지원으로 인해 모호한(ambiguous) 바인딩을 생성하기 때문이다. 이 두 가지 유형의 XSD가 서로 공식적으로 링크되지 않는 것은 콘텐츠 패키징 정보모델의 확장 기능이 위치할 수 있는 곳에 대한 제약조건이 바인딩에는 적용되지 않음을 의미한다. 유일한 제약조건은 새로운 확장 기능은 콘텐츠 패키징 바인딩 내의 확장점(extensibility point)에만 삽입될 수 있다는 것이다. XSD가 적용하지 못하는 정보모델의 제약조건들을 실행자들이 적용할 수 있도록 하기 위해서, 이 규은 스키마트론[Schematron, 06] 스키마를 제공하고 있다. 스키마트론 스키마는 매니페스트(manifest) 문서에서 확장된 CP 네임스페이스의 요소가 발생할 수 있는 곳에만 제약조건을 인코딩한다. 스키마트론 스키마는 또한 이러한 제약조건이 스키마트론 적합 애플리케이션을 위반하는 경우에 대한 피드백을 제공한다. IMS CP 적합 시스템은 스키마트론을 지원하지 않는다는 점에 유의해야 한다. 스키마트론 스키마는 실행을 위한 추가 지원용도로 제공된다. 스키마트론은 기존 XSLT 파서(parser)외에 추가로 실행가능하다는 점에 유의해야 한다. 스키마트론 스키마를 XML 인스턴스(instance)와 연계하는 정해진 방법이 없기 때문에, 스키마를 인스턴스(instance)에 적용하는 일은 실행자들의 몫이다.

6. 어휘 바인딩(Binding of the Vocabularies)

콘텐츠 패키징 어휘는 외부 파일에 나열되어 있다. 이 파일들은 IMS어휘 정의 교환(VDEX) 표준[VDEX, 04b]의 XML 인스턴스(instance)이다. 어휘의 값은 VDEX ‘용어’에 정의되어 있다.

6.1 구조 속성의 VDEX

구조’ 속성은 항목 인스턴스(instance)들이 구조 인스턴스(instance) 내에서 서로 어떻게 연결되는지에 대해 기술하기 위해 사용된다. ‘구조’ 속성에 대해 IMS에서 정의한 값들의 집합은 다음과 같다.
  • ‘위계적’ – 루트를 가진(rooted)위계적 구조 (디폴트 값이다).
‘구조’ 값을 포함한 VDEX 파일의 목록은 첨부 B1 에 제시되어 있다.

6.2 자원유형 속성을 위한 VDEX

‘자원유형’ 속성은 관련 자원의 성격을 표시하기 위해 사용된다 (자원은 하나 이상의 물리적 파일일 수 있음에 유의할 것). ‘자원유형’ 속성에 대해 IMS에서 정의 값들의 집합은 다음과 같다.
  • 'webcontent' - 표준 HTML 페이지 콘텐츠;
  • 'other' - 일치하는 어휘 엔트리(vocabulary entries)가 없는 자원의 식별자;
  • 'imsldcontent' - IMS 학습 설계 자원(imsld_xmlv1p0로 대체);
  • 'imsacc_xmlv1p0' - IMS 접근성 1.0 버전 XML 인스턴스 자원;
  • 'imsrcd_xmlv1p0' - IMS 재사용 기능 정의 1.0 버전 XML 인스턴스 자원 (imsrdceo_xmlv1p0로 대체);
  • 'imsrdceo_xmlv1p0' - IMS 역량 및 교육 목표 재사용 정의 1.0 버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p0' - IMS 콘텐츠 패키징 1.0 버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p1' - IMS 콘텐츠 패키징 1.1 버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p1p1' - IMS 콘텐츠 패키징 1.1.1버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p1p2' - IMS 콘텐츠 패키징 1.1.2버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p1p3' - IMS 콘텐츠 패키징 1.1.3버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p1p4' - IMS 콘텐츠 패키징 1.1.4버전 XML 인스턴스 자원;
  • 'imscp_xmlv1p2' - IMS 콘텐츠 패키징 1.2버전 XML 인스턴스 자원;
  • 'imsent_xmlv1p0' - IMS 엔터프라이즈 1.0버전 XML 인스턴스 자원;
  • 'imsent_xmlv1p1' - IMS 엔터프라이즈 1.1버전 XML 인스턴스 자원;
  • 'imsld_xmlv1p0' - IMS 학습 설계 1.0버전 XML 인스턴스 자원;
  • 'imslip_xmlv1p0' - IMS 학습자 정보 패키지 1.0버전 XML 인스턴스 자원;
  • 'imslip_xmlv1p0p1' - IMS 학습자 정보 패키지 1.0.1버전 XML 인스턴스 자원;
  • 'imsmd_xmlv1p1' - IMS 메타데이터 1.1버전 XML 인스턴스 자원;
  • 'imsmd_xmlv1p2' - IMS 메타데이터 1.2버전 XML 인스턴스 자원;
  • 'imsmd_rdfv1p2' - IMS 메타데이터 1.2버전 RDF 인스턴스 자원;
  • 'imsqti_xmlv1p0' - IMS QTI 1.0 버전 XML 인스턴스 자원;
  • 'imsqti_xmlv1p1' - IMS QTI 1.1 버전 XML 인스턴스 자원;
  • 'imsqti_xmlv1p2' - IMS QTI 1.2 버전 XML 인스턴스 자원;
  • 'imsqti_xmlv2p0' - IMS QTI 2.0 버전 XML 인스턴스 자원;
  • 'imsqti_xmlv2p1' - IMS QTI 2.1 버전 XML 인스턴스 자원;
  • 'imsvdex_xmlv1p0' - IMS VDEX 1.0 버전 XML 인스턴스 자원;
  • 'imsvdex_xmlv1p0/content/' - IMS VDEX 1.0 버전 XML 콘텐츠 인스턴스 자원;
  • 'imsvdex_xmlv1p0/data/' - IMS VDEX 1.0 버전 XML 데이터 인스턴스 자원;
  • 'imsrli_xmlv1p0' - IMS 자원 목록 1.0 버전 XML 인스턴스 자원;
  • 'process-manifest' - 형제 자원 {Href}에 선언된 URI 참조는 IMS 패키지 리더에 의해 참조를 포 함하는 IMS 매니페스트(manifest) 문서와는 별도로 처리되어야하는 관련 IMS 매니페스트 (manifest) 문서로 다루어져야 함을 나타낸다. URI 참조는 그 외에 다른 방식으로 다루어져서는 안된다;
  • 'control-files+xml' - Resource.File{Href}의 각 값은 XSD, 또는 DTD로 표현된 XML 바인딩에 적합 한 패키지에서 발견된 파일로 변환됨을 표시한다;
  • 'ims-cp-manifest+xml' - Resource.File{Href}의 각 값은 IMS 콘텐츠 패키징 정보모델의 XML 바인 딩에 적합한 패키지의 파일로 변환됨을 나타낸다. 어떠한 버전 정보도 표현되지 않으므로, 자원 객체는 각기 다른 콘텐츠 패키징 XML 스키마 버전에 바인딩된 IMS 매니페스트(manifest) 인스 턴스(instance)를 포함할 수 있다.
자원유형’ 값을 포함하는 VDEX 파일의 목록은 첨부 B2 에 제시되어 있다.