<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Store article content in XML in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250072#M203202</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm not entirely sure what you plan on doing with the XML once you have it, but here is an idea that may be useful.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Alfresco has a &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/Rendition_Service" rel="nofollow noopener noreferrer"&gt;Rendition Service&lt;/A&gt;&lt;SPAN&gt; that is useful for generating alternative renditions of a node. Typical examples of this are generating different-sized versions of an image, rendering Word documents as PDFs, creating JPG files from GIFS, and so on. However, there are a couple of rendering engines that are useful for producing alternative representations of text: the FreemarkerRenderingEngine and the XSLTRenderingEngine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Web Quick Start makes much use of the Rendition Service, and provides a way for rendition definitions to be specified and associated with different sections of the website. You can read about this in the &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/Web_Quick_Start_Developer_Guide#Renditions" rel="nofollow noopener noreferrer"&gt;WQS Developer Guide&lt;/A&gt;&lt;SPAN&gt;. What I suggest is that you have your editors enter content using the normal forms (so that name, title, writer, and so on have their own entry fields), and setup a rendition definition that uses the FreemarkerRenderingEngine to create an XML rendition of the content.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can see an example of using Freemarker to render node properties in the &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/FreeMarker_Template_Cookbook#Document_Properties_Example" rel="nofollow noopener noreferrer"&gt;Freemarker Template Cookbook&lt;/A&gt;&lt;SPAN&gt; on the Alfresco wiki. Note that in this example "document" is used to refer to the node being accessed, but when using the FreemarkerRenderingEngine the name "node" should be used instead. The example is also rendering into HTML instead of XML, but should give the idea.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hope that helps.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 20 Jan 2011 16:08:49 GMT</pubDate>
    <dc:creator>bremmington</dc:creator>
    <dc:date>2011-01-20T16:08:49Z</dc:date>
    <item>
      <title>Store article content in XML</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250071#M203201</link>
      <description>Hi,Sorry for my English and I is newbie in Alfresco &lt;IMG id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://migration33.stage.lithium.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt;I use wcmqs and I've already added some custom attributes (e.g. "writer" ) for article. These attributes are visible when metadata for article is edited.The next step what I need: store all attributes and content in xml file when user select "cre</description>
      <pubDate>Thu, 20 Jan 2011 15:44:08 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250071#M203201</guid>
      <dc:creator>mikhailponomare</dc:creator>
      <dc:date>2011-01-20T15:44:08Z</dc:date>
    </item>
    <item>
      <title>Re: Store article content in XML</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250072#M203202</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm not entirely sure what you plan on doing with the XML once you have it, but here is an idea that may be useful.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Alfresco has a &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/Rendition_Service" rel="nofollow noopener noreferrer"&gt;Rendition Service&lt;/A&gt;&lt;SPAN&gt; that is useful for generating alternative renditions of a node. Typical examples of this are generating different-sized versions of an image, rendering Word documents as PDFs, creating JPG files from GIFS, and so on. However, there are a couple of rendering engines that are useful for producing alternative representations of text: the FreemarkerRenderingEngine and the XSLTRenderingEngine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Web Quick Start makes much use of the Rendition Service, and provides a way for rendition definitions to be specified and associated with different sections of the website. You can read about this in the &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/Web_Quick_Start_Developer_Guide#Renditions" rel="nofollow noopener noreferrer"&gt;WQS Developer Guide&lt;/A&gt;&lt;SPAN&gt;. What I suggest is that you have your editors enter content using the normal forms (so that name, title, writer, and so on have their own entry fields), and setup a rendition definition that uses the FreemarkerRenderingEngine to create an XML rendition of the content.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You can see an example of using Freemarker to render node properties in the &lt;/SPAN&gt;&lt;A href="http://wiki.alfresco.com/wiki/FreeMarker_Template_Cookbook#Document_Properties_Example" rel="nofollow noopener noreferrer"&gt;Freemarker Template Cookbook&lt;/A&gt;&lt;SPAN&gt; on the Alfresco wiki. Note that in this example "document" is used to refer to the node being accessed, but when using the FreemarkerRenderingEngine the name "node" should be used instead. The example is also rendering into HTML instead of XML, but should give the idea.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hope that helps.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 20 Jan 2011 16:08:49 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250072#M203202</guid>
      <dc:creator>bremmington</dc:creator>
      <dc:date>2011-01-20T16:08:49Z</dc:date>
    </item>
    <item>
      <title>Re: Store article content in XML</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250073#M203203</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;What I did:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Add the next changes to rendition-context.xml&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;bean class="org.alfresco.module.org_alfresco_module_wcmquickstart.rendition.BootstrapRenditionDefinition"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="name" value="xmlArticle"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="renderingEngineName" value="freemarkerRenderingEngine"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="parameters"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;map&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="runAs" value="System"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="template_path" value="/Company Home/Data Dictionary/Presentation Templates/xmlArticle.ftl"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/map&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;2. create xmlArticle.ftl (as example above, but I replaced "document" to "node") and load it to /Company Home/Data Dictionary/Presentation Templates/xmlArticle.ftl"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Edit metadata for "blog" in Document Library:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;V&amp;nbsp; Inherit Rendition Config (this param is cheked)&lt;BR /&gt;Rendition Config:&lt;BR /&gt;ws:article=xmlArticle&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;4. Add create content&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;5. When I open &lt;/SPAN&gt;&lt;A href="http://localhost:8080/wcmqs/blog/" rel="nofollow noopener noreferrer"&gt;http://localhost:8080/wcmqs/blog/&lt;/A&gt;&lt;SPAN&gt; My content is available, but xmlArticle.ftl is not used.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What it's wrong ?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 Feb 2011 17:23:31 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250073#M203203</guid>
      <dc:creator>mikhailponomare</dc:creator>
      <dc:date>2011-02-01T17:23:31Z</dc:date>
    </item>
    <item>
      <title>Re: Store article content in XML</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250074#M203204</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;WQS always places rendition definition names into the "ws" namespace, so in your rendition config the setting should be: &lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;ws:article=ws:xmlArticle&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;However, I'm not really clear about what you're trying to achieve. When you hit your new article on the website what are you expecting to see?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 Feb 2011 17:35:39 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250074#M203204</guid>
      <dc:creator>bremmington</dc:creator>
      <dc:date>2011-02-01T17:35:39Z</dc:date>
    </item>
    <item>
      <title>Re: Store article content in XML</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250075#M203205</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I try to explain:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Other external application is needed in "xml-style" article. If we would generate xml per request we got problem with performance. Finally we decided to store article in xml immediately.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;What i want to see:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;1. somebody is creating xml-content in "Document Library" in alfresco share (e.g. in "blog")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. She/he fills "Name", "Title", "Description", "Content"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. As result xml file is created:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;name&amp;gt;&lt;BR /&gt;some name&lt;BR /&gt;&amp;lt;/name&amp;gt;&lt;BR /&gt;&amp;lt;title&amp;gt;&lt;BR /&gt;some title&lt;BR /&gt;&amp;lt;/title&amp;gt;&lt;BR /&gt;&amp;lt;Description&amp;gt;&lt;BR /&gt;Some Description&lt;BR /&gt;&amp;lt;/Description&amp;gt;&lt;BR /&gt;&amp;lt;content&amp;gt;&lt;BR /&gt;the content of the article&lt;BR /&gt;&amp;lt;/content&amp;gt;&lt;BR /&gt;&amp;lt;/Article&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;I don't sure that&amp;nbsp; Rendition Service is what I need, but i newbie in Alfresco.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 02 Feb 2011 17:10:10 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250075#M203205</guid>
      <dc:creator>mikhailponomare</dc:creator>
      <dc:date>2011-02-02T17:10:10Z</dc:date>
    </item>
    <item>
      <title>Re: Store article content in XML</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250076#M203206</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I see. Honestly, I'd be surprised if generating the XML on-the-fly would cause any discernible performance issues at all - especially if your example is illustrative of the complexity. However, it's worth describing how to do it using the static approach you're describing. These are the steps needed:&lt;/SPAN&gt;&lt;BR /&gt;&lt;OL style="list-style-type:decimal;"&gt;&lt;LI&gt;Create a new content type for our XML renditions so we can configure a special template for them&lt;/LI&gt;&lt;BR /&gt;&lt;LI&gt;Make the XML rendition visible in the URL namespace and force it to be of the new content type&lt;/LI&gt;&lt;BR /&gt;&lt;LI&gt;Create a template for the new content type that simply pushes out the XML content&lt;/LI&gt;&lt;BR /&gt;&lt;LI&gt;Make a template mapping between the new content type and the new template&lt;/LI&gt;&lt;/OL&gt;&lt;SPAN&gt;There are actually a few ways to ensure your XML assets are rendered using a special "pass-through" template. One is to give them a particular content type and then provide a template mapping on a section for that content type. Another approach is to ensure that each request that wants the XML specifies the appropriate template name on the request. For example, if your pass-through template was called "raw" then pass this as the required view on the request: &lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;A href="http://my.example.com/products/my-product.xml?view=raw" rel="nofollow noopener noreferrer"&gt;http://my.example.com/products/my-product.xml?view=raw&lt;/A&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;SPAN&gt;The final option (that springs to mind) is to specify the template to be used on the asset itself by setting a value for the ws:templateName property. The value would be "raw" in our example. For the sake of this description, I'll assume the first approach - a custom content type.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;OL style="list-style-type:decimal;"&gt;&lt;LI&gt;The quick and dirty way to define a new content type is to open up the file "webSiteModel.xml" (you'll find it in the exploded alfresco.war if you have WebQS installed) and add the following immediately above the line that contains "&amp;lt;/types&amp;gt;":&lt;/LI&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;type name="ws:xmlarticle"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;title&amp;gt;XML Article&amp;lt;/title&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;parent&amp;gt;cm:content&amp;lt;/parent&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/type&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;The more correct way is to define your own content model definition and bootstrap it. I won't go into that here, but you can &lt;A href="http://wiki.alfresco.com/wiki/Data_Dictionary_Guide#Step_by_Step_Model_Definition" rel="nofollow noopener noreferrer"&gt;read about it on the wiki&lt;/A&gt;.&lt;BR /&gt;&lt;BR /&gt;&lt;LI&gt;Next we need to adjust your rendition definition. Change it to read:&lt;/LI&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean class="org.alfresco.module.org_alfresco_module_wcmquickstart.rendition.BootstrapRenditionDefinition"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="name" value="xmlArticle"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="renderingEngineName" value="freemarkerRenderingEngine"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="parameters"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;map&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="runAs" value="System"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="template_path" value="/app:company_home/app:dictionary/app:content_templates/cm:xmlArticle.ftl"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="destination-path-template" value="${cwd}/${name}.xml" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="rendition-nodetype" value="{&lt;A href="http://www.alfresco.org/model/website/1.0}xmlarticle" rel="nofollow noopener noreferrer"&gt;http://www.alfresco.org/model/website/1.0}xmlarticle&lt;/A&gt;" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/map&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;LI&gt;We now need to write a template for the WebQS sample site that simply pushes out the content of the requested asset. In the wcmqs webapp, navigate to the WEB-INF/templates folder. We'll create two new files in this folder:&lt;/LI&gt;"raw.ftl":&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;@region id="main" scope="template"/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;"raw.xml":&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;BR /&gt;&amp;lt;template-instance&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;title&amp;gt;Raw&amp;lt;/title&amp;gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;description&amp;gt;Template that just sends the asset content raw&amp;lt;/description&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;template-type&amp;gt;raw&amp;lt;/template-type&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;components&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;component&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;region-id&amp;gt;main&amp;lt;/region-id&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;url&amp;gt;/content/current&amp;lt;/url&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/component&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/components&amp;gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;lt;/template-instance&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;Then, navigating into the folder WEB-INF/pages, we create one new file, also named "raw.xml":&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;BR /&gt;&amp;lt;page&amp;gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;id&amp;gt;raw&amp;lt;/id&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;template-instance&amp;gt;raw&amp;lt;/template-instance&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;authentication&amp;gt;none&amp;lt;/authentication&amp;gt;&lt;BR /&gt;&amp;lt;/page&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;Restart Tomcat now so that all your changes so far are loaded up. Watch out for errors in the log.&lt;BR /&gt;&lt;BR /&gt;&lt;LI&gt;Finally, we need to configure WebQS to use the new template for any assets of the new content type. In Share, edit the metadata of the "root" section on the website. In the "Template Mapping" property add a new mapping "ws:xmlarticle=raw". In the sample website as shipped this means that the template mapping on the root section becomes:&lt;/LI&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;cmis:document=baseTemplate,ws:indexPage=sectionpage1,ws:article=articlepage1,ws:xmlarticle=raw&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/OL&gt;&lt;SPAN&gt;That's it. You should now find that when you create an article in the blog section named "my-blog-post.html", an XML rendition will be created next to it named "my-blog-post.xml". If you point your browser at &lt;/SPAN&gt;&lt;A href="http://localhost:8080/wcmqs/blog/my-blog-post.xml" rel="nofollow noopener noreferrer"&gt;http://localhost:8080/wcmqs/blog/my-blog-post.xml&lt;/A&gt;&lt;SPAN&gt; then the XML rendition should be downloaded.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Note that, while testing out this example, I noticed a fault in the FreemarkerRenderingEngine. You should be able to specify a "mime-type" parameter in your rendition definition to ensure the generated rendition has the correct MIME type ("text/xml" in this case). However, this parameter isn't being exposed, and this means that the MIME type of the rendition is not being set correctly. I've raised this as an issue in Jira (&lt;/SPAN&gt;&lt;A href="http://issues.alfresco.com/jira/browse/ALF-7039" rel="nofollow noopener noreferrer"&gt;ALF-7039&lt;/A&gt;&lt;SPAN&gt;) and will fix it on HEAD when I can. If you want to patch the code yourself, then you just need to add this line to the getParameterDefinitions method in the BaseTemplateRenderingEngine class:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; paramList.add(new ParameterDefinitionImpl(PARAM_MIME_TYPE, DataTypeDefinition.TEXT, false, getParamDisplayLabel(PARAM_MIME_TYPE)));&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;If you do that, then you can add this parameter setting to your xmlArticle rendition definition:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;entry key="mime-type" value="text/xml" /&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;and your XML renditions will then have the correct MIME type.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 03 Feb 2011 12:22:00 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/store-article-content-in-xml/m-p/250076#M203206</guid>
      <dc:creator>bremmington</dc:creator>
      <dc:date>2011-02-03T12:22:00Z</dc:date>
    </item>
  </channel>
</rss>

