docbook-apps

  • 1.  Re: [docbook-apps] XInclude of part of current document

    Posted 04-05-2007 17:05
    El Jueves, 5 de Abril de 2007 19:22, Bob Stayton escribió:
    > The XInclude spec seems to allow an href from an xi:include to part of the
    > current document, by using either an empty href or an absent href in the
    > xi:include element. However, it doesn't seem to work.

    It works for me:

    ----- test.xml ----


    "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">

    <sect1>


    <para>Para 1</para>

    <para>Para 2</para>

    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
    xpointer="xpointer(/sect1[1]/para[1])"/>

    </sect1>
    ---------------------------------

    ~/test$ xmllint --xinclude --postvalid test.xml


    "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
    <sect1>


    <para>Para 1</para>

    <para>Para 2</para>

    <para>Para 1</para>

    </sect1>

    You must be very careful with the xpointer expresion used. The above is the
    most failsafe one, but not very useful if the sources tree is changing.

    I prefer to assign an ID to any element that will be Xinclude and then cal it
    using xpointer="xpointer(//@id='string')". There is more simple call for IDs,
    but that works also for XML documents that don't have a DTD.


    --
    Manuel Canales Esparcia
    Usuario de LFS nº2886: http://www.linuxfromscratch.org
    LFS en castellano: http://www.escomposlinux.org/lfs-es http://www.lfs-es.info
    TLDP-ES: http://es.tldp.org



  • 2.  Re: [docbook-apps] XInclude of part of current document

    Posted 04-05-2007 17:08
    El Jueves, 5 de Abril de 2007 19:05, M.Canales.es escribió:

    > it using xpointer="xpointer(//@id='string')". There is more simple call for

    Sorry, xpointer="xpointer(//*[@id='string'])"

    --
    Manuel Canales Esparcia
    Usuario de LFS nº2886: http://www.linuxfromscratch.org
    LFS en castellano: http://www.escomposlinux.org/lfs-es http://www.lfs-es.info
    TLDP-ES: http://es.tldp.org