The World Wide Web was originally built for human consumption, and although
everything on it is machine-readable, this data is not machine-understandable.
It is very hard to automate anything on the Web, and because of the volume
of information the Web contains, it is not possible to manage it manually.
Metadata is "data about data" (for example, a library catalog is metadata,
since it describes publications) or specifically in the context of this
specification "data describing Web resources".
The solution proposed here is to use metadata to describe SMIL documents
published on the Web.
The earlier SMIL 1.0 specification allowed authors to describe documents
with a very basic vocabulary using the
element.
The SMIL Metadata module defined in this specification fully supports the
use this element from SMIL
1.0 but it also introduces new capabilities for describing metadata using
the Resource Description Framework Model and Syntax
[RDFsyntax] , a powerful metadata language for providing information
about resources.
To insure backward compatibility with SMIL 1.0, the element as specified in the SMIL 1.0 [SMIL10] Recommendation can be used to define properties of a document (e.g., author/creator, expiration date, a list of key words, etc.) and assign values to those properties.
SMIL Boston extents SMIL1.0 meta-information functionalities with the new
element to host RDF statements
as RDF provides a more general treatment of metadata.
RDF is a declarative language and provides a standard way for using XML to
represent metadata in the form of statements about properties and relationships
of items on the Web. Such items, known as resources, can be almost anything,
provided it has a Web address. This means that you can associate metadata
with a SMIL documents, but also a graphic, an audio file, a movie clip, and
so on.
RDF is the appropriate language for metadata. The specifications for RDF can be found at:
Metadata information within an SMIL document should be expressed in the appropriate RDF namespaces [XML-NS] and should be placed within the child element to the document's smil root element. (See example below.)
RDF appears to be the ideal approach for supporting descriptors from multiple description schemes simultaneously.
Here are some suggestions for content creators regarding metadata:
Individual industries or individual content creators are free to define their own metadata schema, but everyone is encouraged to follow existing metadata standards and use standard metadata schema wherever possible to promote interchange and interoperability. If a particular standard metadata schema does not meet your needs, then it is usually better to define an additional metadata schema in RDF that is used in combination with the given standard metadata schema than to totally avoid the standard schema.
(This schema has not yet been defined. Here are some candidate attributes for the schema: LevelAccessibilityGuidelines, ListOfImagesUsed, ListOfAudioUsed, ListOfTextUsed, ListOfTextstreamUsed, ListOfRefUsed, ListOfCodecUsed, etc)
This section is Normative.
The attributes and content model of the Metadata Module elements is summarized in the following table:
Elements | Attributes | Minimal Content Model |
---|---|---|
Meta | EMPTY | |
RDF? |
The Attribute collections in this table are defined as follows
The element is an empty element.
Each element specifies a single
property/value pair in the name and content attributes, respectively.
The element contains information that is also related to meta information of the document. It acts as the root element to RDF tree. The element can contain the following child elements:
RDF element and its sub-elements (refer to W3C Metadata Recommendations [RDFsyntax]).
This section is Normative.
The integration of the SMIL Metadata Module with other SMIL modules should conform to the descriptions in the SMIL-Boston profile.
This section is Normative.
This section specifies the DTD of the SMIL Metadata Module.
<!-- ================================================================ --> <!-- SMIL Metadata Module ========================================== --> <!-- file: SMIL-metadata.mod This module declares the meta and metadata elements types and its attributes, used to provide declarative document metainformation. Copyright 2000 W3C (MIT, INRIA, Keio), All Rights Reserved. This DTD module is identified by the PUBLIC and SYSTEM identifiers: PUBLIC "-//W3C//ELEMENTS SMIL-Boston Document Metadata//EN" SYSTEM "SMIL-metadata.mod" ================================================================= --> <!-- ================== Profiling Entities ======================== --> <!ENTITY % meta.content "EMPTY"> <!ENTITY % meta.attrib ""> <!ENTITY % metadata.content "EMPTY"> <!ENTITY % metadata.attrib ""> <!-- ================== meta element ======================== --> <!ELEMENT meta %meta.content;> <!ATTLIST meta %meta.attrib; content CDATA #IMPLIED name CDATA #REQUIRED > <!-- ================== metadata element ========================= --> <!ELEMENT metadata %metadata.content;> <!ATTLIST metadata %metadata.attrib;> <!-- end of SMIL-metadata.mod -->
This section is Normative.
This section specifies the XML Schema of the SMIL Metadata Module.
TBD
Here is an example of how metadata can be included in an SMIL document. The example uses the Dublin Core version 1.0 RDF Schema [DC] and the SMIL Metadata RDF Schema:
<?xml version="1.0" ?> <smil xmlns = "http://www.example.org/SMIL-Boston.dtd"> <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.foo.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.foo.com/videos/meta-1999.mpg"/> <rdf:li Resource="http://www.foo.com/videos/meta2-1999.mpg"/> </rdf:Seq> </smilmetadata:ListOfVideoUsed> <smilmetadata:Access LevelAccessibilityGuidelines="AAA"/> </rdf:Description> <!-- Metadata about the video --> <rdf:Description about="http://www.foo.com/videos/meta-1999.mpg" dc:Title="RDF part one" dc:Creator="John Smith" dc:Subject="Metadata,RDF" dc:Description="RDF basic fonctionalities" 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.foo.com/videos/meta-1999.mpg#scene1"/> <rdf:li Resource="http://www.foo.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 fonctionalities" 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="/videos/meta-1999.mpg" > <area id="scene1" begin="0" end ="30"/> <area id="scene2" begin="30" end ="60"/> </video> <video region="a" src="/videos/meta2-1999.mpg"/> </seq> </body> </smil>