crossley    01/11/20 18:55:06

  Modified:    documentation/xdocs/userdocs/transformers Tag:
                        cocoon_20_branch xinclude-transformer.xml
  Log:
  Extends the shell doc into full doc.
  Submitted by:   "Bernhard Huber" <[EMAIL PROTECTED]>
  Reviewed by:    [EMAIL PROTECTED]
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.3   +127 -20   
xml-cocoon2/documentation/xdocs/userdocs/transformers/xinclude-transformer.xml
  
  Index: xinclude-transformer.xml
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/documentation/xdocs/userdocs/transformers/xinclude-transformer.xml,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- xinclude-transformer.xml  2001/10/25 07:43:52     1.1.2.2
  +++ xinclude-transformer.xml  2001/11/21 02:55:06     1.1.2.3
  @@ -2,24 +2,131 @@
   <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.0//EN" 
"../../dtd/document-v10.dtd">
   
   <document>
  -     <header>
  -             <title>XInclude Transformer</title>
  -             <version>0.9</version>
  -             <type>Technical document</type>
  -             <authors>
  -                     <person name="Carsten Ziegeler" email="[EMAIL PROTECTED]"/>
  -              </authors>
  -              <abstract>This document describes the XInclude transformer of 
Cocoon.</abstract>
  -     </header>
  -     <body>
  -             <s1 title="XInclude Transformer">
  -                     <p>This transformer works according to the XInclude 
specification.</p>
  -                     <p>For more information refer to the <link 
href="http://www.w3.org/TR/xinclude";>XInclude specification</link>.</p>
  -                     <ul>
  -                             <li>Name : xinclude</li>
  -                             <li>Class: 
org.apache.cocoon.transformation.XIncludeTransformer</li>
  -                             <li>Cacheable: no.</li>
  -                     </ul>
  -             </s1>
  -     </body>
  + <header>
  +  <title>XInclude Transformer</title>
  +  <subtitle>in @doctitle@</subtitle>
  +  <version>0.9</version>
  +  <type>Technical document</type>
  +  <authors>
  +  <person name="Carsten Ziegeler" email="[EMAIL PROTECTED]"/>
  +  </authors>
  +  <abstract>This document describes the XInclude transformer.</abstract>
  + </header>
  + <body>
  +  <s1 title="XInclude Transformer">
  +   <p>
  +    This transformer works according to the XInclude specification.
  +   </p>
  +   <p>
  +    For more information refer to the
  +    <link href="http://www.w3.org/TR/xinclude";>XInclude specification</link>.
  +   </p>
  +   <ul>
  +    <li>Name : xinclude</li>
  +    <li>Class: org.apache.cocoon.transformation.XIncludeTransformer</li>
  +    <li>Cacheable: no.</li>
  +   </ul>
  +   <p>
  +    You can include either simple text, or xml content. 
  +    Including xml content -- which is the default --
  +    gives you the option to define an xpointer in the href attribute. Some
  +    quick xinclude examples should reveal the possibilities of xinclude. 
  +   </p>
  +   <ul>
  +    <li>
  +     Include an xml content as-is: 
  +     <code><![CDATA[<xi:include href="include.xml"/>]]></code>
  +    </li>
  +    <li>
  +     Include an xml content but pick the strong element only:
  +     <code><![CDATA[<xi:include href="include.xml#xpointer(/p/strong)"/>]]></code>
  +    </li>
  +    <li>
  +     Include text content:
  +     <code><![CDATA[<xi:include parse="text" href="include.txt"/>]]></code>
  +    </li>
  +   </ul>
  +
  +   <p>
  +    A simple example using xinclude might help to use this transfomer
  +    effectivly:
  +   </p>
  +   <p>
  +    Add the XIncludetransfomer to the components in your sitemap.xmap
  +   </p>
  +<source><![CDATA[
  +...
  +<map:components>
  +...
  +  <map:transformers default="xslt">
  +  ...
  +    <map:transformer name="xinclude"
  +      src="org.apache.cocoon.transformation.XIncludeTransformer"/>
  +  ...
  +]]></source>
  +
  +   <p>
  +    Next define in your pipeline to use the XIncludeTransformer
  +   </p>
  +<source><![CDATA[
  +<map:match pattern="xinc/simple-xinc">
  +  <map:generate src="xinc/simple-xinc.xml"/>
  +  <map:transform type="xinclude"/>
  +  <map:transform src="stylesheets/page/simple-page2html.xsl"/>
  +  <map:serialize/>
  +</map:match>
  +]]></source>
  +
  +   <p>
  +    In this example pipeline it assumed that simple-xinc.xml contains
  +    the include element. As well as defining the include element,
  +    it defines the namespache URI "http://www.w3.org/2001/XInclude";.
  +    This helps the XIncludeTransformer to find the include element to 
  +    get replaced by the included content.
  +    The simple-xinc.xml may look like this:
  +   </p>
  +<source><![CDATA[
  +<?xml version="1.0" encoding="UTF-8"?>
  +<page 
  +  xmlns:xi="http://www.w3.org/2001/XInclude";>
  +  <title>Hello</title>
  +  <content>
  +    <para>This is my first Cocoon2 page!</para>
  +    <xi:include href="include.xml"/>
  +  </content>
  +</page>
  +]]></source>
  +
  +   <p>
  +    Next you should define the include.xml file which is included.
  +    A simple include.xml might look like this:
  +   </p>
  +<source><![CDATA[
  +<?xml version="1.0"?>
  +<p>
  +  I am <strong>included</strong> by XIncludeTransformer.
  +  I come from "include.xml".
  +</p>
  +]]></source>
  +
  +   <p>
  +    Now finally we have everything put together the xml content after the 
  +    XIncludeTransformer processing will look like this:
  +   </p>
  +<source><![CDATA[
  +<?xml version="1.0" encoding="UTF-8"?>
  +<page 
  +  xmlns:xi="http://www.w3.org/2001/XInclude";>
  +  <title>Hello</title>
  +  <content>
  +    <para>This is my first Cocoon2 page!</para>
  +      <p>
  +       I am <strong>included</strong> by XIncludeTransformer.
  +       I come from "include.xml".
  +      </p>
  +  </content>
  +</page>
  +]]></source>
  +  </s1>
  + </body>
   </document>
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     [EMAIL PROTECTED]
To unsubscribe, e-mail:          [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to