n 이 문서의 원본은 http://www.w3.org/TR/2000/WD-smil20-20000921/ 입니다.
n 이 문서는 W3C 멀티미디어 동기화 워킹 그룹이 작성하였습니다.
n 이 문서는 현재 W3C의 권고안으로서의 지위를 갖고 있습니다.
n 이 문서 원본에 대한 저작권은 W3C에 있습니다.
n 번역 과정에 오류가 포함되어 있을 수 있습니다.
n 이 문서는 ㈜스마일미디어가 영어원문을 한글로 번역하였습니다.
멀티미디어 통합언어(SMIL 2.0) 명세서
(W3C Working Draft –2000년 9월 21일-)
2.0 판:
http://www.w3.org/TR/2000/WD-smil20-20000921/
(다른 포맷:HTML file & )
최신 판:
http://www.w3.org/TR/smil20
이전 판:
http://www.w3.org/TR/2000/WD-smil-boston-20000622
편집:
Jeff Ayars (RealNetworks), Dick Bulterman (Oratrix), Aaron Cohen (Intel), Ken Day (Macromedia), Erik Hodge (RealNetworks), Philipp Hoschka (W3C), Eric Hyche (RealNetworks), Muriel Jourdan (INRIA), Kenichi Kubota (Panasonic), Rob Lanphier (RealNetworks), Nabil Layaïda (INRIA), Philippe Le Hégaret (W3C), Thierry Michel (W3C), Debbie Newman (Microsoft), Jacco van Ossenbruggen (CWI), Lloyd Rutledge (CWI), Bridie Saccocio (RealNetworks), Patrick Schmitz (Microsoft), Warner ten Kate (Philips).
Copyright©2000 W3C® ( MIT, INRIA, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply.
개요
이 문서는 멀티미디어 통합언어인 스마일의 두번째 버전이다. SMIL 2.0의 목적은 다음과 같다.
①인터랙티브한 멀티미디어 프리젠테이션을 제작하는데 쓰이는 XML 기반 언어를 정의한다. 스마일2.0을 사용하여 멀티미디어 프리젠테이션의 시간동작(temporal behavior)을 표현하며 스크린 상에 프리젠테이션의 레이아웃(layout)을 표현하고 각 미디어 객체(media object)에 링크를 건다.
②다른 XML 기반 언어에서 스마일 구문(syntax)과 의미체계(semantics)의 재사용을-특히 타이밍과 동기화를 필요로 하는 언어에서- 가능케 한다. 예를 들어, SMIL 2.0 컴포넌트는 XHTML
[XHTML10] 과 SVG [SVG]로 타이밍을 통합하는 목적으로 사용된다.
스마일 2.0 명세의 지위
이 단락은 이 문서의 발표 당시, 이 문서의 지위에 대해서 설명하고 있다. 따라서 이 후 다른 문서들이 이 문서를 대체할 수도 있다. 최근까지 W3C는 이 문서를 지지하고 있다.
이 문서는 W3C의 워킹 그룹(working group)과 회원 그리고 대중들의 리뷰를 위해 SYMM Working Group (회원전용)이 발표한 SMIL2.0의 공개 작업 초안(Working Draft)이다.
이 문서는 “W3C USER INTERFACE DOMAIN”의 W3C 통합 멀티미디어 활동의 하나로 제작되었다. SYMM 워킹 그룹의 목표는 SYMM Working Group charter(회원전용)에서 논의되고 있다. (2000년 7월 원본 차터에서 수정됨)
이 작업초안(Working Draft)은 2000년 9월 15일까지의 모든 워킹 그룹의 의견을 포함하고 있다. SYMM 워킹그룹이 이 문서를 검열했으며 최종콜(last call)로 발표하는데 동의하였다. 최종콜 기간은 2000년 10월 20일에 끝날 것으로 예정되어 있다. 이 최종콜에 따르면 워킹 그룹은 Candidate 권고안으로서 이 명세서를 승인할 것이다. 이러한 일정은 다른 W3C 워킹 그룹과 대중의 의견에 따라 달라질 수 있다. 많은 의견들이 워킹 그룹 심의에 큰 도움이 될 것이다. 여러 가지 의견들을 www-smil@w3.org 로 보내주길 바란다.
archive of the comments received 에서 지금까지 올라온 비평들을 읽을 수 있다.
워킹 그룹은 여기에 언급된 기능들에 어떤 변화를 가할 예정은 없지만 앞으로 변화가 있을 수도 있다. Candidate 권고안을 준비하고 있는 사람들이나 이 버전의 설계에 관심 있는 사람들만이 현재 버전 작업을 수행할 것이다. SYMM 워킹그룹은 최종공개에 앞서 이 명세서에 일어날 수 있는 변화를 제한할 때이른 작업은 하지 않을 것이다.
앞서 발표된 작업초안에 기술된 XHTML+SMIL 프로필(Profile)에 대한 개발이 진행중인데 아직 최종콜 준비가 덜 되어 있는 상태이다. 계속하여 업데이트하고 있으며 준비가 끝나면 따로 최종콜을 할 계획 중에 있다. public working draft 를 참조하라.
이 작업초안은 언제라도 다른 W3C 문서에 의해서 대체되거나 업데이트될 수 있다. 따라서 이 문서를 “현재 작업 진행중” 이상으로 참조하거나 인용하는 것은 바람직하지 않다. 이 문서는 계속해서 변하고 있으므로 W3C membership 는 아직 이를 승인하지 않았다.
W3C의 권고안 그리고 다른 기술적(technical)인 문서들의 목록은 http://www.w3.org/TR 에서 찾을 수 있다.
간추린 목록
1. 스마일 2.0에 대해서
2. 스마일SMIL 2.0 모듈
3. 스마일SMIL 2.0 에니메이션 모듈
4. 스마일2.0 컨텐트컨트롤(content control) 모듈
5. 스마일2.0 레이아웃 모듈
6. 스마일2.0 링크(linking) 모듈
7. 스마일2.0 미디어 객체(object) 모듈
8. 스마일2.0 메타정보(metainformation) 모듈
9. 스마일2.0 구조(structure) 모듈
10. 스마일2.0 타이밍 및 동기화(synchronization) 모듈
11. 스마일2.0 시간 조작(time manipulation) 모듈
12. 스마일2.0 전환 효과(transition effect) 모듈
13. 스마일2.0 언어 프로필(language profile)
14. 스마일2.0 베이직 언어 프로파일(basic language profile)
부록 A. 스마일 2.0 DTDs
부록 B. 참고자료
1. 스마일 2.0 소개
편집: Aaron Cohen( aaron.m.cohe.@intel.com), Intel Thierry Michel( tmichel@w3c.org), W3C
내용목록
1.1 소개
1.1.1스마일 1.0과의 관계
1.1.2명세서의 내용
1.2 사례
1.1 소개
이 문서는 Synchronized Multimedia Integration Language(SMIL, smile로 발음된다)의 두번째 버전에 대한 명세이다. 스마일 2.0은 아래 두 가지를 목표로 설계되었다.
①인터랙티브한 멀티미디어 프리젠테이션을 제작하는데 쓰이는 XML 기반 언어를 정의한다. 스마일2.0을 사용하여 멀티미디어 프리젠테이션의 시간동작(temporal behavior)을 표현하며 스크린 상에 프리젠테이션의 레이아웃을 표현하고 각 미디어 객체에 링크를 건다.
② 다른 XML 기반 언어에서 스마일 구문(syntax)과 의미체계(semantics)의 재사용을-특히 타이밍과 동기화를 필요로 하는 언어에서- 가능케 한다. 예를 들어, SMIL 2.0 컴포넌트는 XHTML
[XHTML10] 과 SVG [SVG]로 타이밍을 통합하는 목적으로 사용된다.
SMIL 2.0은 마크-업 모듈 세트(mark-up module set)로 정의되는데 이 모듈은 스마일의 특정 영역에 대한 의미체계(semantics)와 XML 구문(syntax)을 정의한다.
1.1.1 스마일 1.0과의 관계
스마일2.0 은 좀 더 돔(DOM)과 친화적인 구문을 선호하기 때문에 SMIL 1.0의 몇몇 부분과는 상충된다. 가장 주목할만한 변화는 하이픈으로 이어진 속성 이름에서 혼합속성 이름으로의 변화다. 예를 들어, clip-begin이 ClipBegin으로 바뀌었다. SMIL2.0 모듈은 통합 어플리케이션에 주는 부담을 줄이기 위해 SMIL1.0 속성에 대한 지원을 필요로 하지 않는다. “application/smil” 문서 재생을 지원하는 어플리케이션(스마일문서 또는 통합문서라고 부르거나)인 스마일 문서 플레이어는 SMIL2.0의 이름 뿐만 아니라 2.0에서 제외된 SMIL 1.0의 속성 이름 역시 지원해야만 한다.
1.1.2 스펙의 내용
이 스펙은 하나 또는 그 이상의 모듈을 정의한 섹션들로 구성되어 있다.
Ø 섹션2 는 SMIL 2.0 모듈화와 개별 모듈에 대한 개요와 적용영역
Ø 섹션3 은 SMIL 2.0 에니메이션 모듈
Ø 섹션4 는 SMIL 2.0 컨텐트 컨트롤 모듈
Ø 섹션5 는 SMIL 2.0 레이아웃 모듈
Ø 섹션6 는 SMIL 2.0 링크 모듈
Ø 섹션7 는 SMIL 2.0 미디어 객체 모듈
Ø 섹션8 은 SMIL 2.0 메타정보 모듈
Ø 섹션9 는 SMIL 2.0 구조 모듈
Ø 섹션10 은 SMIL 2.0 타이밍 및 동기화 모듈
Ø 섹션11 은 SMIL 2.0 타이밍 모듈
Ø 섹션12 는 SMIL 2.0 변이효과(Transition effects) 모듈
또한 스마일2.0 명세서는 위의 스마일2.0 모듈을 사용한 두 가지의 프로필(profiles)을 정의한다.
Ø 섹션13 은 SMIL 2.0 언어 프로필(language profile)
Ø 섹션14 는 SMIL 2.0 기초언어(Basic language) 프로필
이전의 작업초안(previous working draft)에 나타나 있는 XHTML+SMIL 프로필은 진행중에 있으며 아직 최종콜 준비가 덜 되어 있는 상태이다. 계속해서 업데이트가 될 것이며 준비가 끝나는대로 분리된 형태의 최종콜로서 발표될 것이다. public working draft 에 이 프로필에 대한 자료가 있다.
1.2 사례의 말
이 문서는 W3C의 스마일 워킹그룹에 의해서 만들어졌다. 이 워킹그룹의 구성원은 다음과 같다.
Jin Yu, Compaq - Pietro Marchisio, CSELT - Lynda Hardman, CWI - Jacco van Ossenbruggen, CWI - Lloyd Rutledge, CWI - Olivier Avaro, France Telecom - Ted Wugofski, Gateway (Invited Expert) - Masayuki Hiyama, Glocomm - Keisuke Kamimura, Glocomm - Michelle Y. Kim, IBM - Steve Wood, IBM - Nabil Layaïda, INRIA - Muriel Jourdan, INRIA - Aaron Cohen, Intel - Wayne Carr, Intel - Ken Day, Macromedia - Daniel Weber, Panasonic - Patrick Schmitz, Microsoft - Debbie Newman, Microsoft - Pablo Fernicola, Microsoft - Kevin Gallo, Microsoft - Don Cone, Netscape/AOL - Wo Chang, NIST - Didier Chanut, Nokia - Jack Jansen, Oratrix - Sjoerd Mullender, Oratrix - Dick Bulterman, Oratrix - Kenichi Kubota, Panasonic - Warner ten Kate, Philips - Ramon Clout, Philips - Jeff Ayars, RealNetworks - Erik Hodge, RealNetworks - Rob Lanphier, RealNetworks - Bridie Saccocio, RealNetworks - Eric Hyche, RealNetworks - Geoff Freed, WGBH - Philipp Hoschka, W3C - Philippe Le Hégaret, W3C - Thierry Michel, W3C.
2. SMIL 2.0 모듈
편집:
Warner ten Kate ( warner.ten.kate@philips.com), (Philips Electronics) Aaron Cohen ( aaron.m.cohen@intel.com), (Intel) Philipp Hoschka ( ph@w3.org), (W3C)
목록
2.1 소개
2.1.1 모듈화(modulization)와 프로파일링(profiling)
2.2 스마일 2.0 모듈
2.2.1 스마일 돔(DOM)
2.3 스마일 2.0 모듈과 언어프로필(language profile) 식별자(identifier)
2.3.1 스마일마임(SMIL mime) 타입
2.3.2 XML 네임스페이스(namespace) 식별자(identifier)
2.3.3 스마일 2.0모듈과 형태(features) 식별자
2.3.4 스마일 식별자(SMIL indentifier) 설계
2.4 스마일 호환
2.4.1 스마일 호스트 언어
2.4.2 스마일 통합 셋
2.4.3 스마일 호스트 언어 호환 언어 프로필의 식별자 조건
2.4.4 스마일 호스트 언어 문서에서 에러 처리하기
2.5 언어 프로필 DTD 만들기
2.1 소개
스마일 1.0 발표 이 후, HTML과 XML과 스마일 개념을 통합하는데 많은 관심이 집중됐다. W3C HTML 워킹그룹이 이 같은 준비의 일부로, 이를 분류* 확장 및 통합하여 XHTML로 표준화했다. 다른 XML 기반 언어가 가지고 있는 훌륭한 기능과 통합하자는 이러한 전략은 기본적으로 모듈화 및 프로파일링 개념에 기초한다.
마크-업 기능은 의미론적으로 연관된(semantically-related) XML 엘리먼트, 에트리뷰트 그리고 에트리뷰트값을 포함하는 모듈의 집합으로서 정의된다. 모듈화는 바로 이러한 개념에서의 접근법이다. 프로파일링은 특정 어플리케이션이 필요로 하는 기능을 제공하기 위하여 이러한 모듈의 연결을 통해 XML 기반 언어를 생성하는 것을 뜻한다.
프로파일링은 XML 기반 언어를 특정한 필요(프리젠테이션을 최적화하거나 클라이언트의 능력에 대한 대응 등)에 따라 재단할 수 있게 해 준다. 또한 프로파일링은 다른 마크-업 언어가 가진 기능을 통합할 수 있다. 따라서 언어 설계자는 그러한 기능을 일일이 지정할 필요가 없다. 게다가 기능을 통합함에 있어 같은 모델을 사용함으로써 마크-업에 있어 일관성을 제공한다. 동일한 구조 설계는 제작을 쉽게 해주며, 동시에 사용자 측면에서는 코드를 재사용할 수도 있게 해 준다. 예를 들어, 스마일의 타이밍 및 통합 기능을 지원하는 스케줄러(scheduler)는 스마일 문서와 XHTML+SMIL 문서 그리고 SVF 문서에 쓰일 수 있다.
모듈화를 통해 언어 설계자들은 다른 언어 프로필과 통합하기 위한 마크-업을 지정할 수 있다. 이러한 예로는 MathML과 Xform이 있다.
모듈화와 프로파일링은 XML, 연관기술인 XML 네임스페이스(namespace)와 XML 스키마(Schema)의 확장 프라퍼티(extensibility properties)을 이용한다.
이 단락은 스마일 모듈화와 프로파일링의 체계에 대해 서술하고 있으며 스마일2.0 모듈, 식별자, 이 체계 내의 호환조건을 정의한다.
2.1.1 모듈화와 프로파일링
이 명세서에서 사용한 모듈화 접근법은 XHTML 모듈화로부터 나왔다. 스마일 모듈과 프로파일링의 체계는 약식으로 서술되어 있다.
모듈(Module)은 의미체계적으로 연관된(semantically-related) XML 엘리먼트, 에트리뷰트 그리고 에트리뷰트값의 집합- 기능단위를 나타내는-이다. 모듈은 연관 집합 내에서 정의된다. 이러한 연관성은 이러한 모듈의 엘리먼트들이 같은 네임스페이스(namespace)를 공유하는 데서 잘 표현되고 있다.
언어 프로필은 모듈의 조합이다. 예를 들면 모듈은 원자와 같아서 언어 프로필 안에서는 더 이상 나누어질 수 없다. 더욱이, 모듈 명세는 통합 조건을 포함할 수도 있으며, 그 모듈을 포함하는 언어 프로필은 이러한 조건을 따라야 한다.
일반적으로, 단일 네임스페이스(single namespace)와 연관된 거의 모든 모듈을 통합하는 언어 프로필이 존재한다. 예를 들어 스마일2.0 언어 프로필은 스마일2.0 모듈의 대부분을 사용한다. 대개 이 두 가지를 가리키는데 “스마일2.0” 이라는 이름이 같이 사용된다. 또한, “프로필”이라는 이름은 언어프로필을 뜻한다.
다른 언어의 하위 집합인 언어 프로필이 정의될 수 있다. 또는 다른 네임스페이스(namespace)와 관련된 혼합모듈을 통합하는 언어 프로필들이 정의될 수 있다. 스마일2.0 베이직은 전자의 예이고 XHTML+SMIL은 후자의 예이다.
언어 프로필에는 소위 구조모듈(Structure Module)이라 불리는 특정 모듈이 있다. 이 구조모듈(Structure Module)은 언어 프로필의 루트 엘리먼트(root element) -<smil> 혹은 <html>- 를 포함한다. 단일 네임스페이스(namespace)와 연관된 모듈을 통합하는 언어 프로필은 이 네임스페이스와 연관된 구조모듈(Structure module)을 포함한다.
또한 네임스페이스 기능의 핵심을 결정하는 모듈이 있다. 이 모듈은 호스트 언어와 통합셋(integration set)의 개념으로 표현된다. 이 두 개념은 언어 프로필 순응(conformance) 조건과 관련이 있으며 이 조건은 모듈의 핵심집합의 통합 조건을 포함한다. 이 집합은 호스트 언어와 통합 셋과 다를 수 있다. 호스트 언어는 구조모듈(Structure module)을 통합해야 한다. 그러나 통합셋은 그럴 필요가 없다. 이외에도 다른 점이 있을 수 있다.
언어 프로필 순응(conformance)의 주요한 목적은 정보처리의 상호 운용(interoperability)을 위함이다. 호스트 언어 순응(conformance)을 위한 강제(mandatory)모듈은 문서 렌더러(renderer)가 (관련 강제 모듈셋을 지원하는 동안) 알려지지 않은 엘리먼트와 에트리뷰트를 무시할 때, 문서를 적절히 프리젠테이션을 할 수 있도록 정의된다. 여기서 말하는 적절한 프리젠테이션이란 제작자의 의도와 100% 일치하는 것을 의미하는 것이 아니고 대의가 이해될 정도라는 뜻이다. 만약 제작자의 의도가 100% 반영되도록 실현하려면 문서교환에 사용될 특정한 언어 프로필에 대한 협의가 필수적일 것이다.
2.2 스마일 2.0 모듈
스마일 기능은 11개의 영역으로 분할된다. 각 기능 영역안에는 모듈에 따라 더 세분화되어 있다. 이 모든 모듈은, 이 모듈만이 스마일의 네임스페이스와 관련이 있다.
기능 영역과 이와 상응하는 모듈은 다음과 같다.
1. Timing
1. BasicInlineTiming
2. MinMaxTiming
3. Syncbase Timing
4. EventTiming
5. WallclockTiming
6. MultiArcTiming
7. MediaMarkerTiming
8. AccessKeyTiming
9. BasicTimeContainers
10. ExclTimeContainers
11. TimeContainerAttributes
12. PrevTiming
13. RestartTiming
14. SyncBehavior
15. SyncBehaviorDefault
16. SyncMaster
17. RestartDefault
18. FillDefault
2. Time Manipulations
1. TimeManipulations
3. Animation
1. BasicAnimation
2. SplineAnimation
4. Content Control
1. BasicContentControl
2. CustomTestAttributes
3 . PrefetchControl
4. SkipContentControl
5. Layout
1. BasicLayout
2. AudioLayout
3. MultiWindowLayout
4. HierarchicalLayout
6. Linking
1. LinkingAttributes
2. BasicLinking
3. ObjectLinking
7. Media Objects
1. BasicMedia
2. MediaClipping
3. MediaClipMarkers
4, MediaParam
5. BrushMedia
6. MediaAccessibility
8. Metainformation
1. Metainformation
9. Structure
1. Structure
10. Transitions
1. BasicTransistions
2. InlineTransitions
3. TransitionModifiers
4. CoordinatedTransitions
이 모듈들은 각각 의미체계 관련(semantically-related) 엘리먼트, 프라퍼티, 애트리뷰트를 안내한다. 각 기능 영역은 이 명세서 안에 각각 관련 섹션을 가지고 있다. 각 모듈에 대한 자세한 정보는 각 섹션별로 나누어져 있다.
모듈은 독립적(independent) 혹은 보충적(complementary)일 수 있다. 예를 들어, 싱크베이스(Syncbase)타이밍 모듈은 베이직인라인타이밍(BasicInlineTiming) 모듈을 기초로 하지만(의존적) 프리패치컨트롤(PrefetchControl) 과 스킵컨텐트컨트롤(SkipContentControl) 모듈은 서로 독립적이다. 이에 더해, 어떤 모듈은 다른 기능 영역에 있는 모듈을 필요로 한다.
모듈은 통합조건을 결정한다. 하나의 모듈이 기본형태를 갖추기 위해 다른 모듈을 필요로 하거나 통합을 위한 조건으로 필요로 할 때 언어 프로필은 첫번째 모듈을 포함시키기 위해서는 두번째 모듈을 포함시켜야만 한다. 여기서 첫번째 모듈을 두번째 모듈에 “의존적”이라고 한다.
테이블 1은 스마일2.0 모듈과 이 모듈이 의존하고 있는 모듈을 보여준다.
Table 1: The SMIL 2.0 Modules and their Dependencies.
Module
Dependencies
AccessKeyTiming
BasicInlineTiming
Audio Layout
BasicLayout
BasicAnimation
BasicInlineTiming
BasicContentControl
NONE
BasicInlineTiming
NONE
BasicLayout
NONE
BasicLinking
NONE
BasicMedia
NONE
BasicTimeContainers
BasicInlineTiming
BasicTransitions
BasicInlineTiming, and
BasicMedia
BrushMedia
NONE
CoordinatedTransitions
BasicTransitions
CustomTestAttributes
BasicContentControl
EventTiming
NONE
ExclTimeContainers
BasicTimeContainers
FillDefault
BasicTimeContainers
HierarchicalLayout
BasicLayout
InlineTransitions
BasicInlineTiming, and
BasicMedia
LinkingAttributes
NONE
MediaAccessibility
BasicMedia
MediaClipMarkers
MediaClipping
MediaClipping
BasicMedia
MediaMarkerTiming
BasicInlineTiming
MediaParam
BasicMedia
MetaInformation
NONE
MinMaxTiming
BasicInlineTiming
MultiArcTiming
EventTiming, and/or
SyncbaseTiming, and/or
MediaMarkerTiming, and/or
AccessKeyTiming, and/or
WallclockTiming
MultiWindowLayout
BasicLayout
ObjectLinking
BasicLinking
PrefetchControl
NONE
PrevTiming
BasicTimeContainers
RestartDefault
RestartTiming
RestartTiming
EventTiming, and/or
MultiArcTiming
SkipContentControl
NONE
SplineAnimation
BasicAnimation
StreamingMedia
BasicMedia
Structure
BasicContentControl, and
BasicInlineTiming, and
BasicLayout, and
BasicLinking, and
BasicMedia, and
BasicTimeContainers, and
SkipContentControl, and
SyncBaseTiming
SyncbaseTiming
BasicInlineTiming
SyncBehavior
BasicInlineTiming
SyncBehaviorDefault
SyncBehavior
SyncMaster
SyncBehavior
TimeContainerAttributes
BasicInlineTiming
TimeManipulations
BasicInlineTiming
TransitionModifiers
BasicTransitions, and/or
InlineTransitions
WallclockTiming
BasicInlineTiming
2.2.1 스마일돔(SMIL DOM)
스마일은 XML 기반 언어이고 DOM을 따른다. 장래에 스마일 – 특정 돔(DOM) 권고안이 타이밍과 동기화, 미디어 통합, 다른 동기화 멀티미디어 기능 등 특정 기능을 제공할 것이다. 언어 프로필은 DOM 지원을 포함한다. 지원되는 DOM은 그 언어 프로필에서 선택된 모듈에 상응한다. 다른 모듈과 마찬가지로 요구되는 DOM에 대한 지원은 언어 프로필의 선택사항이다.
2.3 스마일 2.0 모듈과 언어 프로필의 식별자(Identifiers)
이 섹션은 스마일 2.0 네임스페이스와 스마일 2.0 모듈의 식별자에 대해서 설명한다. 호스트 언어에 순응하는 각 언어 프로필은 네임스페이스 URI를 명시적으로 기술해야 한다. 그
러한 네임스페이스 URI는 아래 정의된 "
Requirements on Identifiers for SMIL Host Language Conformant Language Profiles
" 를 따라야 한다.
2.3.1 스마일 마임(Mime) 타입
스마일 구조 모듈을 포함하는 언어 프로필로 작성된 문서는 “어플리케이션/스마일” 마임 타입(mime type)과 연동될 수 있다. “어플리케이션/스마일” 마임 타입을 쓰는 문서는
호스트 언어를 따라야 한다.
2.3.2 스마일2.0 모듈의 XML 네임스페이스 식별자(namespace identifier)
스마일2.0 모듈 집합의 XML 네임스페이스 식별자와 엘리먼트, 애트리뷰트는 http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/에 나타나 있다.
2.3.3 스마일2.0 모듈과 형태(feature)를 위한 식별자
이 명세서안에 포함되어 있는 각 모듈은 그것과 연관된 단일한 식별자를 가지고 있다. 이 식별자들이 식별의 역할을 수행한다. 식별자는 스마일2.0 모듈을 참조할 때 또는 수행작업
이 특정 모듈을 포함하고 있을 때 테스트 값으로 쓰인다.
표2) 스마일 2.0 모듈 식별자 요약
Table 2: The SMIL 2.0 Module Identifiers.
Module name
Identifier
AccessKeyTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/AccessKeyTiming
AudioLayout
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/AudioLayout
BasicAnimation
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicAnimation
BasicContentControl
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicContentControl
BasicInlineTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicInlineTiming
BasicLayout
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicLayout
BasicLinking
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicLinking
BasicMedia
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicMedia
BasicTimeContainers
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicTimeContainers
BasicTransistions
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BasicTransistions
BrushMedia
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/BrushMedia
CustomTestAttributes
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/CustomTestAttributes
EventTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/EventTiming
ExclTimeContainers
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/ExclTimeContainers
FillDefault
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/FillDefault
HierarchicalLayout
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/HierarchicalLayout
InlineTransitions
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/InlineTransitions
LinkingAttributes
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/LinkingAttributes
MediaClipMarkers
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MediaClipMarkers
MediaClipping
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MediaClipping
MediaMarkerTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MediaMarkerTiming
MediaParam
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MediaParam
Metainformation
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/Metainformation
MinMaxTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MinMaxTiming
MultiElementTransitions
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MultiElementTransitions
MultiArcTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MultiArcTiming
MultiWindowLayout
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/MultiWindowLayout
ObjectLinking
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/ObjectLinking
PrefetchControl
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/PrefetchControl
PrevTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/PrevTiming
RestartDefault
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/RestartDefault
RestartTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/RestartTiming
SkipContentControl
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/SkipContentControl
SplineAnimation
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/SplineAnimation
StreamingMedia
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/StreamingMedia
Structure
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/Structure
SyncbaseTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/SyncbaseTiming
SyncBehavior
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/SyncBehavior
SyncBehaviorDefault
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/SyncBehaviorDefault
SyncMaster
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/SyncMaster
TimeContainerAttributes
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/TimeContainerAttributes
TimeManipulations
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/TimeManipulations
WallclockTiming
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/WallclockTiming
언어 프로필마다 특정 모듈의 지원 또는 비지원으로써 표현할 수 없는 다른 형태와 변수가 있을 수 있다. 이러한 형태는 아래의 식별자를 이용하여 표현된다.
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/NestedTimeContainers
Profile allows nesting of the par and seq time containers.
http://www.w3.org/TR/REC-smil/2000/SMIL20/LC/DeprecatedFeatures
Profile supports deprecated SMIL 1.0 features.
스마일 베이직컨텐트컨트롤(BasicContentControl) 모듈을 지원하는 수행작업은 이것을 XML 네임스페이스 구조(mechanism)에 대한 식별자로 인정해야 하며, 시스템이 필요로 하는(systemRequired) 테스트 애트리뷰트와 함께 사용되도록 연관된 네임스페이스 식별자를 인정해야 한다.
2.3.4 스마일 식별자의 설계
스마일 네임스페이스, 스마일 모듈과 스마일 언어 프로필의 식별자를 설계함에 있어, 다음의 단계를 따른다.
1. "Requirements on Identifiers for SMIL Host Language Conformant Language Profiles" 에 정의되어 있는 조건을 따르는 URI 포맷이 사용한다.
2. URI는 스마일1.0 네임스페이스 식별자를 따른다.
http://www.w3.org/TR/REC-smil/
3. 여기에 모듈과 버전에 있는 애트리뷰트 관련 네임스페이스를 식별하는 스트링(string)을 더한다.