Schemas/SMIL

From Code Synthesis Wiki

Jump to: navigation, search

This page contains information on using the SMIL 2.0 schemas with XSD.

SMIL 2.0 schemas have a pathological circular dependency between smil20.xsd and smil20-language.xsd which prevent XSD from sucessefully translating this schemas in the default, file-per-schema mode. There are two ways to resolve this issue.

The first approach requires the use of the file-per-type compilation mode which was introduced in XSD 3.1.0. For more information about the file-per-type mode see this blog post.

The second approach involves splitting involved files into several parts. The resulting schemas are semantically equivalent to the original.

The following two packages contain the official SMIL 2.0 schemas with circular dependencies removed by introducing several -base files:

The following options are recommended to compile the SMIL schemas:

--generate-polymorphic
--namespace-map "http://www.w3.org/1999/02/22-rdf-syntax-ns#=rdf"
--anonymous-regex "%.* transitionFilterPrototype/calcMode%calcMode2%" 

You should also consider using the --root-element-* options to select for which root elements you need parsing and serialization functions.

Personal tools