<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 01:27:19 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[DOCU-2457] Explain what the &apos;variations&apos; property does</title>
                <link>https://jira.magnolia-cms.com/browse/DOCU-2457</link>
                <project id="10190" key="DOCU">Documentation</project>
                    <description>&lt;p&gt;Hi there,&lt;/p&gt;

&lt;p&gt;I just stumbled uppon this template definition property:&lt;/p&gt;
&lt;div class=&apos;table-wrap&apos;&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;&lt;tt&gt;variations&lt;/tt&gt;&lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;&lt;b&gt;optional&lt;/b&gt;&lt;br/&gt;
Merges template definition with the variation having the same name of the channel - if available.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;


&lt;p&gt;Technically it resides in &lt;tt&gt;info.magnolia.rendering.template.RenderableDefinition&lt;/tt&gt;, but again the Java code is not documented at all.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&quot;Merges template definition with &lt;b&gt;the variation&lt;/b&gt; having &lt;b&gt;the same name&lt;/b&gt; of &lt;b&gt;the channel&lt;/b&gt; - &lt;b&gt;if available.&lt;/b&gt;&quot;&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;em&gt;&lt;b&gt;the variation:&lt;/b&gt;&lt;/em&gt;&#160;What is &quot;&lt;em&gt;the variation&lt;/em&gt;&quot;? If it&apos;s set to a valid templateDefintion, is the current file also valid?
	&lt;ul&gt;
		&lt;li&gt;&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
&lt;span class=&quot;code-comment&quot;&gt;// Is &lt;span class=&quot;code-keyword&quot;&gt;this&lt;/span&gt; a valid templateDefinition?
&lt;/span&gt;variations:
  validTemplateDefinition: /module-name/path/to/template-definition&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
&lt;/ul&gt;


&lt;ul&gt;
	&lt;li&gt;&lt;b&gt;&lt;em&gt;the same name&lt;/em&gt;&lt;/b&gt;: what name is supposed to be the same?
	&lt;ul&gt;
		&lt;li&gt;Does the variation&apos;s .yaml-file have to be named exactly as the referenced one?&lt;/li&gt;
	&lt;/ul&gt;
	&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;&lt;em&gt;the channel&lt;/em&gt;&lt;/b&gt;: what channel? Is this property only related to personalization variations?&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;&lt;em&gt;if available:&lt;/em&gt;&lt;/b&gt; how can I check, if the channel is available? What happens, if it&apos;s not available?&lt;/li&gt;
&lt;/ul&gt;



&lt;p&gt;It would be really helpful to understand the intent behind these variations, maybe with a use-case example. Is it an alternative to the !include mechanism in yamls?&lt;/p&gt;

&lt;p&gt;Best&lt;br/&gt;
Tobias&lt;/p&gt;</description>
                <environment></environment>
        <key id="99888">DOCU-2457</key>
            <summary>Explain what the &apos;variations&apos; property does</summary>
                <type id="4" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10890&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/neutral.gif">Neutral</priority>
                        <status id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="11">Done</resolution>
                                        <assignee username="akhamis">Ashraf Khamis</assignee>
                                    <reporter username="tszczepanski">Tobias Szczepanski</reporter>
                        <labels>
                            <label>external</label>
                    </labels>
                <created>Mon, 14 Jun 2021 14:06:18 +0200</created>
                <updated>Tue, 10 Oct 2023 10:40:23 +0200</updated>
                            <resolved>Tue, 14 Jun 2022 11:07:20 +0200</resolved>
                                                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="265192" author="rgange" created="Mon, 14 Jun 2021 14:36:11 +0200"  >&lt;p&gt;Hello Tobias-&lt;/p&gt;

&lt;p&gt;Basically variations is similar to personalization. We used to have an example in the &lt;a href=&quot;https://git.magnolia-cms.com/projects/MODULES/repos/standard-templating-kit/browse/magnolia-demo-project&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;old demo&lt;/a&gt;. In that showcase there were different variations for viewport size. The different viewports resolves to 3 different channels:  desktop, smartphone, tablet. In your template definition you could define a variation, &lt;a href=&quot;https://git.magnolia-cms.com/plugins/servlet/search?q=project%3AMODULES%20repo%3Astandard-templating-kit%20smartphone&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;for say smartphone&lt;/a&gt;, that would use a different script if a smartphone was detected. Same data, different script. This is just one example.&lt;/p&gt;

&lt;p&gt;I think the reason it stays in the documentation is for legacy reasons. Now you could use the personalization feature to do a lot of the same things.  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the variation: What is &quot;the variation&quot;? If it&apos;s set to a valid templateDefintion, is the current file also valid?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;That&apos;s right it&apos;s like a sub-definition of the template definition. You can literally change any configuration of the template based on the detected variation.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the same name: what name is supposed to be the same?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;It could be anything. You the developer decided the names. Then you create a way (typically a filter) which detects the channel. For example a &lt;a href=&quot;https://docs.magnolia-cms.com/product-docs/Modules/List-of-modules/Device-Detection-module.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;device detection filer&lt;/a&gt;. When detected you &lt;a href=&quot;https://git.magnolia-cms.com/projects/PLATFORM/repos/main/browse/magnolia-core/src/main/java/info/magnolia/cms/core/AggregationState.java#300&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;set the field in the agg state&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the channel: what channel? Is this property only related to personalization variations?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;There are distinct systems. Neither depends on the other. They do similar types of things though.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;if available: how can I check, if the channel is available? What happens, if it&apos;s not available?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Is the channel set in the agg state. That&apos;s how you would do it. Basically, was a channel detected, if yes then merge the definition with the defined variation (if a variation exists). It&apos;s kind of like how the template prototype merges with the concrete template. Same concept. &lt;/p&gt;

&lt;p&gt;HTH&lt;br/&gt;
Rich&lt;/p&gt;</comment>
                            <comment id="299234" author="tszczepanski" created="Thu, 17 Mar 2022 17:44:39 +0100"  >&lt;p&gt;Hi Rich,&lt;/p&gt;

&lt;p&gt;great, thanks a bunch for the info!&lt;/p&gt;

&lt;p&gt;This is actually quite the valid use case, because technically personalization is only meant for template variants based on visitor/user preferences. Though one might need template variants based on system parameters, independent of the visitor/user.&lt;/p&gt;

&lt;p&gt;If I understand it right, we can achieve visitor independent Page &amp;amp; Component variants through &lt;br/&gt;
Component Inheritance + Template Variations + some custom UI implementations.&lt;/p&gt;

&lt;p&gt;As this is quite useful, I hope this feature will not be deprecated, will it?&lt;/p&gt;

&lt;p&gt;Best&lt;br/&gt;
Tob&lt;/p&gt;</comment>
                            <comment id="299235" author="rgange" created="Thu, 17 Mar 2022 17:46:33 +0100"  >&lt;p&gt;Hello Tobias-&lt;/p&gt;

&lt;p&gt;As far as I know there is no plan to deprecate it. &lt;/p&gt;

&lt;p&gt;HTH&lt;br/&gt;
Rich&lt;/p&gt;</comment>
                            <comment id="311265" author="akhamis" created="Tue, 14 Jun 2022 11:06:45 +0200"  >&lt;p&gt;Hi Tobias,&lt;/p&gt;

&lt;p&gt;Thanks for reporting the issue. I&apos;ve updated the description for the &lt;tt&gt;variations&lt;/tt&gt; property and added an example definition. Hope that helps.&lt;/p&gt;

&lt;p&gt;Best,&lt;/p&gt;

&lt;p&gt;Ashraf&lt;/p&gt;</comment>
                            <comment id="311819" author="tszczepanski" created="Fri, 17 Jun 2022 10:55:25 +0200"  >&lt;p&gt;Hi Ashraf, great, thank you!&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>relation</name>
                                            <outwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="61111">MGNLSITE-84</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="67824">DOCU-1571</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>prodyna.com</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Mon, 14 Jun 2021 14:36:11 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14146" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>Documentation page URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://docs.magnolia-cms.com/product-docs/Templating/Template-definition.html#_common_template_properties]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_14148" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>Email</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;a href=&apos;mailto:tobias.szczepanski@gmail.com&apos;&gt;tobias.szczepanski@gmail.com&lt;/a&gt;</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10246" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>MAGNOLIA-8507</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>rgange</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            1 year, 34 weeks, 2 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>5.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>akhamis</customfieldvalue>
            <customfieldvalue>rgange</customfieldvalue>
            <customfieldvalue>tszczepanski</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|hzztx1:c0i0c00000000000000000000000u</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_14147" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>Reporter Name</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tobias Szczepanski</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12430" key="com.atlassian.teams:rm-teams-custom-field-team">
                        <customfieldname>Team</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[27]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>169</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_13933" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Urgency (resolution)</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="15724"><![CDATA[Normal]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>