Re: Minutes for RELAX NG TC 2001-06-07

From
Norman Walsh <>
Date
2001-06-08T11:25:16+00:00
ID
Thread
Re: Minutes for RELAX NG TC 2001-06-07
/ Kohsuke KAWAGUCHI <> was heard to say:
| Thank you very much!
| 
| But then I don't understand why <div> is useful for that purpose. Isn't
| it <include> that is useful for that purpose?

I had something slightly different in mind.

The DocBook DTD (to take an arbitrary example :-), is designed to make
it easy for customizers to change things by fiddling a few parameter
entities and then including the original DTD.

To take a specific example, let's look at MsgSet. MsgSet is a complex
bit of structural soup (involving about a half dozen elements) that
many people don't want to have in their authoring subset of DocBook.

To facilitate removing this element, all of its declarations are inside
a PE:

<!ENTITY % msgset.content.module "INCLUDE">
<![%msgset.content.module;[

  ...declarations go here...

<!--end of msgset.content.module-->]]>

So if I do this:

  <!ENTITY % msgset.content.module "IGNORE">
  <!ENTITY % docbook PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
                     "appropriate system identifier">
  %docbook;

I've effectively created a new DTD that's just like DocBook except that
msgset isn't present. (To do a really good job, I'd have to tweak a PE
or two to remove msgset from the content models, but that's pretty
straightforward).

To convert this to my "RELAX NG grammar that can be converted by stylesheet
into a DTD," I need some way to represent this pe:

<dtd:pe-decl name="msgset.content.module">INCLUDE</dtd:pe-decl>
<div dtd:marked-section="msgset.content.module">
  ... definitions go here ...
</div>

                                        Be seeing you,
                                          norm

-- 
   | No man's knowledge here can go beyond his
XML Standards Engineer | experience.--John Locke
Technology Dev. Group  | 
Sun Microsystems, Inc. |