8. SMIL 2.0メタ情報モジュール

8.1 導入

8.では,一つのモジュールで構成されたSMIL 2.0メタ情報モジュールを定義する。 このモジュールは,SMIL文書の記述を行うために必要な要素及び属性を含む。 これらの要素及び属性は一つのモジュール内で定義されているので,他のマーク付け言語の設計者は,それらの言語でこの機能を含むかどうかを選択することができる。

World Wide Webは,元来は,人間が利用するために構築され,その上のすべてのものは,機械的に読取り可能ではあるが,このデータは,機械的に理解可能なものではない。 Web上のあらゆるものを自動化することは非常に難しく,Webがもつ情報の量を考えると,それを手動で管理することは不可能である。 メタデータは,"データのデータ"とする。(例えば,図書館の目録は,出版物を記述しているのでメタデータとする)。この規定の文脈では,特に,"Web資源を記述するデータ"のこととする。 ここでは,Web上で公表されたSMIL文書を記述するメタデータ情報を使うことを提案する。

以前の版のSMIL 1.0規定では,制作者は,meta要素を用い,とても基本的な語彙を使って文書を記述することができた。 この規定で定義されているSMIL 2.0メタ情報モジュールでは,SMIL 1.0のmeta要素を完全にサポートするが,さらに,資源に関する情報を提供する強力なメタ情報言語である"資源記述の枠組み モデル及び構文"[RDFsyntax]を用いてメタデータを記述する新たな機能を導入する。

8.2 SMIL 2.0メタ情報モジュールの概要

8.2.1 SMIL 1.0との互換性

SMIL 1.0に対する後方互換性を保証するために,SMIL 1.0 [SMIL10]勧告で規定されたmeta要素は,文書の特性(例えば,制作者又は作成者,有効期限,キーワードのリストなど)を定義し,それらの特性に値を割り当てるために使うことができる。

8.2.2 SMIL 1.0への拡張

RDFはメタデータのより一般的な処理を提供するので,SMIL 2.0は,新たな要素を用い,このRDFの宣言文を使うことができるようにSMIL 1.0のメタ情報機能を拡張している。 RDFは宣言型の言語であって,Web上の項目の特性及び関係について宣言文の形でメタデータを表現するために,XMLを使う標準的な方法を提供する。 資源と呼ばれるそれらの項目は,Webアドレスをもつものならば,ほとんど何でも含む。 したがって,メタデータ情報をSMIL文書に関連付けすることができる。図形,音声ファイル,映像クリップなどにも関連付けることができる。

RDFは,メタデータのための適切な言語になっている。RDFのための規定は,次による。

SMIL 2.0文書内でのメタデータ情報は,適切なRDF名前空間[XML-NS]で表現される要素内に配置されることが望ましい(以下のを参照)。

8.2.3 複数記述スキーマ

RDFは,複数の記述スキーマを使った記述情報を同時にサポートするのに,理想的なアプローチのように思われる。

次に,メタデータに関する内容作成者のための幾つかの提案を列挙する。

8.3 SMIL 2.0メタ情報モジュールの構文及びセマンティクス

8.3では,SMILメタ情報モジュールの機能を構成する要素及び属性を定義する。

8.3.1 meta要素

要素定義

meta要素は,空要素とする。 各々のmeta要素は,name属性及びcontent属性で,それぞれ,単一の特性及び値の組を指定する。

属性定義
content = CDATA
この属性は,特性値を指定する。この規定では,この属性で指定する文法に合った値を列挙することはしない。 content属性は,meta要素の必須属性とする。
name = CDATA
この属性は,特性名を識別する。 name属性は,meta要素の必須属性とする。 name属性で指定できる特性のリストは自由に定義できるが,この規定では次の特性を定義する。
  • base: この特性の値は,文書内で使われるすべての相対URIのために基底URIを決定する。
    備考 SMIL 2.0は,現時点で既に完成したより一般的なXMLに基づくurl機構[XMLBase]を推奨し,このbase特性は非推奨とする。言語プロファイルは,特にどちらの技術をサポートするかを指定する責任がある。
  • pics-label又はPICS-Label: この特性の値は,PICS [PICS]で定義されている文書のための有効な評価ラベルを指定する。
  • title: この特性の値は,プレゼンテーションの題名を指定する。

8.3.2 metadata要素

要素定義

要素は,文書のメタ情報と関係のある情報を含む。 この要素は,RDF木のルート要素として作用する。 要素は,次の子要素を含むことができる。

RDF要素及びその下位要素(W3C metadata勧告[RDFsyntax]を参照)。

8.4

次に,SMIL文書にどのようなメタデータを含むことができるのかの例を示す。 この例では,Dublin Core 1.0版 RDFスキーマ[DC],及び仮のSMILメタデータRDFスキーマを用いている。

<?xml version="1.0" ?>
<smil xmlns="http://www.w3.org/2001/SMIL20/Language">
    
 <head>
 <meta id="meta-smil1.0-a" name="Publisher" content="W3C" />
 <meta id="meta-smil1.0-b" name="Date" content="1999-10-12" />
 <meta id="meta-smil1.0-c" name="Rights" content="Copyright 1999 John Smith" />
 <meta id="meta-smil1.0-d" http-equiv="Expires" content=" 31 Dec 2001 12:00:00 GMT"/>


  <metadata id="meta-rdf">
   <rdf:RDF
       xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
       xmlns:rdfs = "http://www.w3.org/TR/1999/PR-rdf-schema-19990303#"
       xmlns:dc = "http://purl.org/metadata/dublin_core#"
       xmlns:smilmetadata = "http://www.example.org/AudioVideo/.../smil-ns#" >

<!-- Metadata about the SMIL presentation -->
   <rdf:Description about="http://www.example.com/meta.smi"
       dc:Title="An Introduction to the Resource Description Framework"
       dc:Description="The Resource Description Framework (RDF) enables the encoding, exchange and reuse of structured metadata"
       dc:Publisher="W3C"
       dc:Date="1999-10-12"
       dc:Rights="Copyright 1999 John Smith"
       dc:Format="text/smil" >                
       <dc:Creator>
          <rdf:Seq ID="CreatorsAlphabeticalBySurname">
             <rdf:li>Mary Andrew</rdf:li>
             <rdf:li>Jacky Crystal</rdf:li>
          </rdf:Seq>
       </dc:Creator>
       <smilmetadata:ListOfVideoUsed>
          <rdf:Seq ID="VideoAlphabeticalByFormatname">
              <rdf:li Resource="http://www.example.com/videos/meta-1999.mpg"/>
              <rdf:li Resource="http://www.example.com/videos/meta2-1999.mpg"/> 
          </rdf:Seq>
       </smilmetadata:ListOfVideoUsed>
       <smilmetadata:Access LevelAccessibilityGuidelines="AAA"/>
   </rdf:Description>

<!-- Metadata about the video -->
   <rdf:Description about="http://www.example.com/videos/meta-1999.mpg"
        dc:Title="RDF part one"
        dc:Creator="John Smith"
        dc:Subject="Metadata,RDF"
        dc:Description="RDF basic functionalities"
        dc:Publisher="W3C Press Service"
        dc:Format="video/mpg"
        dc:Language="en"
        dc:Date="1999-10-12"
        smilmetadata:Duration="60 secs"
        smilmetadata:VideoCodec="MPEG2" >
        <smilmetadata:ContainsSequences>
           <rdf:Seq ID="ChronologicalSequences">
             <rdf:li Resource="http://www.example.com/videos/meta-1999.mpg#scene1"/>
             <rdf:li Resource="http://www.example.com/videos/meta-1999.mpg#scene2"/> 
           </rdf:Seq>
         </smilmetadata:ContainsSequences>
   </rdf:Description>

<!-- Metadata about a scene of the video -->
   <rdf:Description about="#scene1"
        dc:Title="RDF intro"
        dc:Description="Introduction to RDF functionalities"
        dc:Language="en"
        smilmetadata:Duration="30 secs"
        smilmetadata:Presenter="David Jones" >
        <smilmetadata:ContainsShots>
           <rdf:Seq ID="ChronologicalShots">
             <rdf:li>Panorama-shot</rdf:li>
             <rdf:li>Closeup-shot</rdf:li>
           </rdf:Seq>
        </smilmetadata:ContainsShots>
   </rdf:Description>
  </rdf:RDF>
 </metadata>

<!-- SMIL presentation -->
 <layout>
    <region id="a" top="5" />
 </layout>
 </head>
 <body>
 <seq>
   <video region="a" src="http://amigo.mail.goo.ne.jp/videos/meta-1999.mpg" >
     <area id="scene1" begin="0s" end ="30s"/>
     <area id="scene2" begin="30s" end ="60s"/>
   </video>
   <video region="a" src="http://amigo.mail.goo.ne.jp/videos/meta2-1999.mpg"/>
 </seq>
 </body>
</smil>