docbook-apps

Re: [docbook-apps] Resolving xi:include with xpointer="element()"

  • 1.  Re: [docbook-apps] Resolving xi:include with xpointer="element()"

    Posted 11-14-2006 23:16
    Hi Peter,
    I think the problem now is that the included file's DTD is not being
    resolved properly. xmllint does not automatically treat an attribute named
    "id" as an attribute of type ID, which the element() scheme requires. The
    included file's DOCTYPE must resolve to the DocBook DTD in order for its id
    elements to be treated as type ID.

    Bob Stayton
    Sagehill Enterprises
    DocBook Consulting
    bobs@sagehill.net


    ----- Original Message -----
    From: "Peter Desjardins" <pdesjardins@supplyscape.com>
    To: "Bob Stayton" <bobs@sagehill.net>; <docbook-apps@lists.oasis-open.org>
    Sent: Tuesday, November 14, 2006 2:34 PM
    Subject: RE: [docbook-apps] Resolving xi:include with xpointer="element()"


    Thanks for your help with this. I've just gotten the latest packages
    from Cygwin installed and xmllint will still not resolve my xpointers.
    It gives me this error for each instance of xi:include.

    $ xmllint -xinclude upgrade-excerpt.xml > resolved.xml
    upgrade-excerpt.xml:25: element include: XInclude error : XPointer
    evaluation failed: #element(UpgradePath)
    upgrade-excerpt.xml:25: element include: XInclude error : could not load
    upgrading.xml, and no fallback was found

    XMLMind XXE is very happy with the syntax of it's own xi:include and it
    finds that "upgrading.xml" is available. This xmllint command was
    executed in the directory with "upgrading.xml."

    Does libxml version 20626 sound like the right tool? Here's what Cygwin
    claims to have:

    $ xmllint -version
    xmllint: using libxml version 20626 compiled with: Threads Tree Output
    Push Reader Patterns Writer SAXv1 FTP HTTP DTDValid HTML Legacy C14N
    Catalog XPath XPointer XInclude Iconv ISO8859X Unicode Regexps Automata
    Expr Schemas Schematron Modules Debug

    I'm trying to get xom running but have not gotten it set up correctly
    yet.

    Again, my thanks.

    Peter Desjardins
    SupplyScape Corporation
    +1 781 503 7441
    http://www.supplyscape.com

    > -----Original Message-----
    > From: Bob Stayton [mailto:bobs@sagehill.net]
    > Sent: Monday, November 13, 2006 18:22
    > To: Peter Desjardins; docbook-apps@lists.oasis-open.org
    > Subject: Re: [docbook-apps] Resolving xi:include with
    > xpointer="element()"
    >
    > Hi Peter,
    > Yes, libxml2 (xmllint and xsltproc) has supported the
    > element() scheme of XPointer for some time. It is mentioned
    > in my book in this section:
    >
    > http://www.sagehill.net/docbookxsl/ModularDoc.html#XincludeSelect
    >
    > The XInclude driver in Elliotte Rusty Harold's XOM kit also
    > supports the
    > element() scheme.
    >
    > http://www.xom.nu/
    >
    > He says you can run it like this to resolve your XIncludes:
    >
    > java -cp xom-1.0b8.jar:xom-samples.jar
    > nu.xom.samples.XIncludeDriver bookfile.xml > resolved.xml
    >
    > Bob Stayton
    > Sagehill Enterprises
    > DocBook Consulting
    > bobs@sagehill.net
    >
    >
    > ----- Original Message -----
    > From: "Peter Desjardins" <pdesjardins@supplyscape.com>
    > To: <docbook-apps@lists.oasis-open.org>
    > Sent: Monday, November 13, 2006 2:48 PM
    > Subject: [docbook-apps] Resolving xi:include with xpointer="element()"
    >
    >
    > I am trying to resolve xi:includes that are inserted in my DocBook XML
    > by XMLMind XML Editor (Standard Edition 3.5.0). I have used the "copy
    > as reference" feature of XXE to reference a child element in another
    > document. When I paste the referenced element into the document I am
    > trying to publish, XXE adds this code:
    >
    > <xi:include href="source-document.xml"
    > xmlns:xi="http://www.w3.org/2001/XInclude"
    > xpointer="element(IdOfMySection)" />
    >
    > This is a wonderful way to author my DocBook content. But I am having
    > trouble finding a way to resolve these xi:includes before passing the
    > content into the Saxon processor.
    >
    > Is there a tool that will process xi:include elements that use
    > xpointer="element()"?
    >
    > I've been poring through the list archives and DocBook XSL:
    > The Complete
    > Guide for some time, without finding one. My latest hope is that
    > updating my Cygwin installation with the latest libxml2 in the hopes
    > that "xmllint --xinclude" will handle this xpointer. Pardon me if I'm
    > missing something obvious.
    >
    > Thanks for your help.
    >
    > Peter Desjardins
    > SupplyScape Corporation
    > +1 781 503 7441
    > http://www.supplyscape.com
    >
    > ---------------------------------------------------------------------
    > To unsubscribe, e-mail: docbook-apps-unsubscribe@lists.oasis-open.org
    > For additional commands, e-mail:
    > docbook-apps-help@lists.oasis-open.org
    >
    >
    >
    >
    >