Presentation on theme: "Can schemas help SVG interwork with other markup vocabularies? MURATA Makoto (FAMILY Given) International University of Japan XHTML XForms SVG XML Events."— Presentation transcript:
Can schemas help SVG interwork with other markup vocabularies? MURATA Makoto (FAMILY Given) International University of Japan XHTML XForms SVG XML Events
Markup vocabularies mentioned in SVG specs XHTML MathML sXBL (formerly RCC) XForms XML Events SMIL XLink RDF user-defined vocabularies
Schemas and Schema Languages Schemas A formal description of the syntax of a markup vocabulary Schema languages DTD W3C XML Schema RELAX NG
Three reasons for using schemas To provide rigorous, concise, and human- readable description of a markup vocabulary. To determine whether an XML document is indeed written in that markup vocabulary [validation ]. To easily build application programs dedicated to that markup vocabulary [data binding ].
Schemas for non-monolithic documents We have an RNG schema for SVG2. We have an RNG schema for sXBL. Then, is it easy to create a schema for the combination of SVG2 and sXBL? Not really XHTML2 + XForms+ SVG + XML Events + sXBL + SMIL is hoplessly difficult.
Requirements on validation#1 It should be possible to combine schemas representing vocabularies easily. It should be possible to divide non- monolithic documents into pieces and then validate each piece against one of the schemas. (divide-and-validate)
Do existing schema languages meet these requirements? No, you have to understand all schemas very well and change them. No, you have to validate the entire document against the combination of all schemas. W3C XML Schema RELAX NG
Requirements on validation#2 It should be possible to use different schema languages for different vocabularies Validators for many schema languages should work together.
Do existing schema languages meet these requirements? No, you are forced to use one schema language No, you have to use one validator. W3C XML Schema RELAX NG
Namespace-based Validation Dispatching Language ISO/IEC JTC1 SC34 CD 19757-4
Idea Schema authoring by combining subschemas Each subschema is concerned with one (or a few) namespaces. Different subschemas may be written in different schema languages. Validation (Divide-and-validate) Divide a non-monolithic document into validation candidates. Different validation candidates are dispatched to different validators.
ISO/IEC JTC1 SC34 SGML Topic Map RELAX NG Schematron
Document Schema Definition Languages 1. Overview 2. Regular-grammar-based validation -- RELAX NG 3. Rule-based validation -- Schematron 4. Namespace-based Validation Dispatching Language -- NVDL 5. Datatypes 6. Path-based integrity constraints 7. Character repertoire validation 8. Declarative document architecture 9. Datatype- and namespace-aware DTDs 10. Validation management
History RELAX Namespace(2001) JIS Technical Report ISO/IEC JTC1 Draft Technical Report DSDL Part 4 Committee Draft (2002) Modular Namespaces by James Clark (2003) Namespace Switchboard by Rick Jelliffe (2003) Namespace Routing Language by James Clark (2003) DSDL Part 4 Second Committee Draft (2004)
Plan Final Committee Draft (2004?) Final Draft International Standard (2005?) International Standard (2005?)
Conclusion and Future Work If the namespace recommendation is the first step, NVDL is the second step for the non-monolithic WWW. Data binding for NVDL is strongly required.
Links NRL by James Clark http://www.thaiopensource.com/relaxng/nr l.html 2 nd CD for NVDL http://www.asahi-net.or.jp/~eb2m- mrt/dsdl/