[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: Minutes for RELAX NG TC 2001-06-07
/ Kohsuke KAWAGUCHI <kohsuke.kawaguchi@eng.sun.com> 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
--
Norman.Walsh@Sun.COM | No man's knowledge here can go beyond his
XML Standards Engineer | experience.--John Locke
Technology Dev. Group |
Sun Microsystems, Inc. |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC