OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Re: [docbook-apps] reference man pages as both seperate files + linked into one document

On Tue, Feb 24, 2004 at 10:50:56AM -0800, Mike Cooper wrote:
> Ahhh.  That's just what I'm looking for.  Unfortunately I'm having trouble 
> now with xmllint. :-(
> When I run "xmllint --postvalid --xinclude RefMan.sgml" I get:
> RefMan.sgml:1: parser error : Space required after the Public Identifier
> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
>                                                       ^
> RefMan.sgml:1: parser error : SystemLiteral " or ' expected
> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
>                                                       ^
> RefMan.sgml:1: parser error : SYSTEM or PUBLIC, the URI is missing
> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
> I've fiddled with the prolog and can't seem to see why it's complaining. 

This might be an SGML/XML difference, but your document is not valid
XML; I'm sorry I didn't notice it the first time through.  It's
reasonably straightforward to fix - a public external identifier must
have an accompanying system identifier[0].  A system identifier is
typically a URL that can be used to obtain a copy of the constraining
DTD.  Note that the whole DocType declaration is optional[1]; having one
facilitates validation.  The fix is to replace

    <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN">

(which is a public identifier without the system identifier, and which
explains the parser errors you are getting) with

    <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V3.1//EN"

or to remove it entirely.

You also might want to upgrade your DocBook version references, as there
is no supported XML version of DocBook prior to 4.0 (hence, the above
system identifier may not address an actual document).  For the most
recent version, 4.2, this would look like:

    <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"

Take care,

    John L. Clark

[0] http://www.w3.org/TR/2004/REC-xml-20040204/#NT-ExternalID

[1] http://www.w3.org/TR/2004/REC-xml-20040204/#NT-prolog

PGP signature

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]