diff options
Diffstat (limited to 'kdoctools/docbook/xsl/params/prefer.internal.olink.xml')
-rw-r--r-- | kdoctools/docbook/xsl/params/prefer.internal.olink.xml | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/kdoctools/docbook/xsl/params/prefer.internal.olink.xml b/kdoctools/docbook/xsl/params/prefer.internal.olink.xml new file mode 100644 index 000000000..86c2fe3f0 --- /dev/null +++ b/kdoctools/docbook/xsl/params/prefer.internal.olink.xml @@ -0,0 +1,73 @@ +<refentry id="prefer.internal.olink"> +<refmeta> +<refentrytitle>prefer.internal.olink</refentrytitle> +<refmiscinfo role="type">boolean</refmiscinfo> +</refmeta> +<refnamediv> +<refname>prefer.internal.olink</refname> +<refpurpose>Prefer a local olink reference to an external reference</refpurpose> +</refnamediv> + +<refsynopsisdiv> +<src:fragment id='prefer.internal.olink.frag'> +<xsl:param name="prefer.internal.olink" select="0"/> +</src:fragment> +</refsynopsisdiv> + +<refsect1><title>Description</title> + +<para>If you are re-using XML content modules in multiple documents, +you may want to redirect some of your olinks. This parameter +permits you to redirect an olink to the current document. +</para> + +<para>For example: you are writing documentation for a product, +which includes 3 manuals: a little installation +booklet (booklet.xml), a user +guide (user.xml), and a reference manual (reference.xml). +All 3 documents begin with the same introduction section (intro.xml) that +contains a reference to the customization section (custom.xml) which is +included in both user.xml and reference.xml documents. +</para> + +<para>How do you write the link to custom.xml in intro.xml +so that it is interpreted correctly in all 3 documents?</para> +<itemizedlist> +<listitem><para>If you use xref, it will fail in user.xml.</para> +</listitem> +<listitem><para>If you use olink (pointing to reference.xml), +the reference in user.xml +will point to the customization section of the reference manual, while it is +actually available in user.xml.</para> +</listitem> +</itemizedlist> + +<para>If you set the <parameter>prefer.internal.olink</parameter> +parameter to a non-zero value, then the processor will +first look in the olink database +for the olink's <sgmltag>targetptr</sgmltag> attribute value +in document matching the <parameter>current.docid</parameter> +parameter value. If it isn't found there, then +it tries the document in the database +with the <sgmltag>targetdoc</sgmltag> +value that matches the olink's <sgmltag>targetdoc</sgmltag> +attribute. +</para> + +<para>This feature permits an olink reference to resolve to +the current document if there is an element +with an id matching the olink's <sgmltag>targetptr</sgmltag> +value. The current document's olink data must be +included in the target database for this to work.</para> + +<caution> +<para>There is a potential for incorrect links if +the same <sgmltag>id</sgmltag> attribute value is used for different +content in different documents. +Some of your olinks may be redirected to the current document +when they shouldn't be. It is not possible to control +individual olink instances.</para> +</caution> + +</refsect1> +</refentry> |