Henri Sivonen wrote:

> "external" seems like a really useful feature for including schemas in  
> a tree-like fashion.
> 
> I tried this for importing SVG and MathML to XHTML5:
> common.elem.struct-inline |= external "svg11/svg11.rnc" inherit = svg
> common.elem.struct-inline |= external "mml2/mathml2.rnc" inherit = math
> 
> It works. However, I'd also like to refine productions in the SVG  
> schema by adding RDF metadata and by allowing recursion to XHTML5  
> through foreignObject.
> 
> If I add
> SVG.metadata.content |= external "rdf/rdf.rnc" inherit = rdf
> this refinement doesn't affect the external SVG schema.
> 
> I can't figure out, how to get hold of the foreignObject definition  
> from the outer schema, either.
> 
> Is there a way to treat "external" merely as a handle to the start  
> symbol of another schema file without shielding the productions of the  
> external schema? Or do I need to factor out the start symbols from the  
> included schemas and build the circular dependencies without "external"?

Yes. Schemas included by using externalRef are included "as is" without
any modification (except namespace inheritance). So in your case you
have to create new augmented SVG schema which will include svg11.rnc and
will modify patterns to allow RDF and XHTML where appropriate and you
can then reference this schema using externalRef in your "main" XHTML5
schema.

But if there are too many dependencies between markup vocabularies you
might find using NVDL as easier solution to this task.

                                Jirka


-- 
------------------------------------------------------------------
  Jirka Kosek      e-mail: [EMAIL PROTECTED]      http://xmlguru.cz
------------------------------------------------------------------
       Professional XML consulting and training services
  DocBook customization, custom XSLT/XSL-FO document processing
------------------------------------------------------------------
 OASIS DocBook TC member, W3C Invited Expert, ISO JTC1/SC34 member
------------------------------------------------------------------

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to