This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
RE: [docbook-apps] Validate fails with customized profiling
- From: "Mauritz Jeanson" <mj at johanneberg dot com>
- To: "'Jens Barkvall'" <jens dot barkvall at enea dot se>, <docbook-apps at lists dot oasis-open dot org>
- Date: Mon, 4 Apr 2005 19:30:14 +0200
- Subject: RE: [docbook-apps] Validate fails with customized profiling
> -----Original Message-----
> From: Jens Barkvall
>
> DTD:
> <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook V4.2//EN"
> "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
> <!ENTITY % local.common.attrib "xml:base CDATA #IMPLIED">
> <!ENTITY % entity SYSTEM "arch_entity.ent">
> %entity;
First, if you can, use the latest DTD (version 4.4). Then you don't have to
worry about the xml:base attribute since it's already declared.
You don't show the contents of "arch_entity.ent". What's defined there?
Also note that the PUBLIC identifier for your DocBookDTD entity refers to
the SGML version of DocBook (this could cause problems with catalog
lookups).
Anyway, the following local DTD works (my_param becomes a common attribute
by redefining local.common.attrib):
<!ENTITY % local.common.attrib "my_param CDATA #IMPLIED">
<!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
%DocBookDTD;
If you want my_param to be valid for <para> only, you can do like this:
<!ENTITY % local.para.attrib "my_param CDATA #IMPLIED">
<!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
%DocBookDTD;
/MJ