Next in thread → Next in month →

Re: [xml-dev] TR9401 catalogue resolver

From
John Cowan <>
To
"G. Ken Holman" <>
Date
2012-10-09T21:03:37Z
ID
<>
Thread
Re: [xml-dev] TR9401 catalogue resolver
G. Ken Holman scripsit:

> Does anyone know of an XML catalogue resolver implementation that
> supports the TR9401 <doctype/> element?

I forgot to mention that you can get much the same effect by using
the catalogue to define an external parsed entity referred to in an
internal DTD, which is what $EMPLOYER is doing now to parameterize a
RELAX NG schema on a namespace (one of the few ways you can't natively
parameterize them).  Here's the idea:

<?xml version="1.0"?>
<!DOCTYPE [[
  <!ENTITY target-ns-def SYSTEM "urn:target-namespace">
  &target-ns-def;
]]>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         xmlns:target="&target-ns;">
  <define name="target.foo">
    <element name="target:foo">
      ...
    </element>
  </define>
 ....
</grammar>

The catalog tells us which file "urn:target-namespace" maps to, and that
file contains "<!ENTITY target-ns "http://example.com/namespace/foo1">;
other files mapped by other catalogs contain "<!ENTITY target-ns
"http://example.com/namespace/foo2">.

-- 
John Cowan  <>  http://www.ccil.org/~cowan
        Raffiniert ist der Herrgott, aber boshaft ist er nicht.
                --Albert Einstein
Next in thread → Next in month →