This is the mail archive of the docbook-apps@lists.oasis-open.org mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Customization layer question for DocBook XML


What you want to do is turn off refentry.element before importing
docbook, then  you can safely redefine it afterwards. Something like
this:

>  <!ENTITY % refentry.element "IGNORE">
> 
>  <!--load DocBook-->
>  <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.2CR1//EN"
> 
>  "http://www.oasis-open.org/docbook/xml/4.2CR1/docbookx.dtd";>
>  %DocBookDTD;
> 

>  <!ELEMENT refentry %ho; (beginpage?,
>                      (%ndxterm.class;)*,
>                      refentryinfo?, refmeta?, 
> (remark|%link.char.class;)*,
>                      refnamediv, (refsynopsisdiv?, 
> (refsect1+|refsection+))
>  +)
>             %ubiq.inclusion;>

Note that I also removed the  <![%refentry.element;[ and <!--end of
refentry.element-->]]> that wrapped your redeclaration (you do not want
this turned off. 

Hope that helps,
David


> -----Original Message-----
> From: Dennis Grace [mailto:dgrace@us.ibm.com]
> Sent: Monday, April 08, 2002 12:10 PM
> To: docbook-apps@lists.oasis-open.org
> Subject: DOCBOOK-APPS: Customization layer question for DocBook XML
> 
> 
> Allow me to preface this question by admitting that , 
> although I've written
> several driver files, I've not previously tried to write a 
> customization
> DTD layer.
> 
> I'm trying to produce a man page that is more complex than 
> the standard.
> Because the resultant man page will describe nested commands 
> (command xxx,
> subcommands xxx yyy, xxx zzz, xxx aaa, etc., where each 
> subcommand has a
> fairly complex series of options), I intend to produce a man page that
> includes several tiers. To that end I wanted to modify the 
> refentry.element
> portion of dbhier.dtd (I've been using DTD 4.2CR) from
> 
> <!ENTITY % refentry.element "INCLUDE">
>  <![%refentry.element;[
>  <!ELEMENT refentry %ho; (beginpage?,
>                      (%ndxterm.class;)*,
>                      refentryinfo?, refmeta?, 
> (remark|%link.char.class;)*,
>                      refnamediv, refsynopsisdiv?, 
> (refsect1+|refsection+))
>             %ubiq.inclusion;>
>  <!--end of refentry.element-->]]>
> 
> 
>  to allow multiple instances of (refsynopsisdiv?, 
> (refsect1+|refsection+)).
> 
>  I tried the following customization layer:
> 
>  <!ENTITY % refentry.element "INCLUDE">
> 
>  <!--load DocBook-->
>  <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.2CR1//EN"
> 
>  "http://www.oasis-open.org/docbook/xml/4.2CR1/docbookx.dtd";>
>  %DocBookDTD;
> 
>  <![%refentry.element;[
>  <!ELEMENT refentry %ho; (beginpage?,
>                      (%ndxterm.class;)*,
>                      refentryinfo?, refmeta?, 
> (remark|%link.char.class;)*,
>                      refnamediv, (refsynopsisdiv?, 
> (refsect1+|refsection+))
>  +)
>             %ubiq.inclusion;>
>  <!--end of refentry.element-->]]>
> 
>  I got an error that said "validity error: Redefinition of element
>  refentry" with a pointer to %ubiq.inclusion.
> 
>  I tried removing the inclusion. I even tried stripping the 
> entire element
>  definition back to the 4.1.2 version, but I still keep 
> getting inclusion
>  errors.
> 
>  I know the change I'm shooting for is possible, because I 
> tried a SYSTEM
>  identifier with a temporary change to dbhierx.dtd, which worked.
> 
>  Is something seriously broke in my customization format? What am I
>  missing?
> 
>  Thanks.
> 
> 
>  Dennis Grace
> 
>  Information Developer
>  IBM Linux Technology Center
>  (512) 838-3937  T/L 678-3937  cell: (512)-296-7830
>  dgrace@us.ibm.com
> 
>  This sentence no verb.
> 
> 
> 
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]