123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472 |
- <?xml version="1.0" encoding="UTF-8"?>
- <template>
- <subtemplates>
- <subtemplate name="combination_chart_dimensions">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="chartDimensions" type="multinode" referenced="true">
- <param name="calculations" type="multinode" rule="calculations" enumerateVariations="false"/>
- <param name="isEdge" type="option" rule="isEdge"/>
- <param name="isNotEdge" type="option" rule="isNotEdge"/>
- </param>
- </parameters>
- <payload>
- <chartNodes>
- <param name="chartDimensions" type="multinode" skipEmpty="true" delimeter="<chartNestedNodes>">
- <param name="isNotEdge" type="option">
- <callSubTemplate name="chartNode_category_open">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- <param name="chartDimensions" type="multinode">
- <param name="isEdge" type="option">
- <param name="chartDimensions" scope="root" type="multinode" indexes="1">
- <!-- We can only have 1 edge, so this trick forces a nesting if there were other items -->
- <chartNestedNodes>
- </param>
- <callSubTemplate name="chart_edge">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- <param name="chartDimensions" scope="root" type="multinode" indexes="1">
- </chartNestedNodes>
- </param>
- </param>
- </param>
- <param name="chartDimensions" type="multinode" reversed="true" skipEmpty="true" delimeter="</chartNestedNodes>">
- <param name="isNotEdge" type="option">
- <callSubTemplate name="chartNode_category_close">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- <param name="calculations" type="multinode">
- <callSubTemplate name="chartNode_Calculation"/>
- </param>
- </param>
- </chartNodes>
- </payload>
- </subtemplate>
- <subtemplate name="combination_chart_categories">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="chartCategories" type="node" referenced="true">
- <param name="calculations" type="multinode" rule="calculations" enumerateVariations="false"/>
- <param name="isEdge" type="option" rule="isEdge"/>
- <param name="isNotEdge" type="option" rule="isNotEdge"/>
- </param>
- </parameters>
- <payload>
- <chartNodes>
- <param name="chartCategories" type="node">
- <param name="isNotEdge" type="option" rule="isNotEdge">
- <callSubTemplate name="chartNode_category_open">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- <param name="isEdge" type="option" rule="isEdge">
- <callSubTemplate name="chart_edge">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- <param name="chartCategories" type="node">
- <param name="isNotEdge" type="option" rule="isNotEdge">
- <callSubTemplate name="chartNode_category_close">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- <param name="calculations" type="multinode">
- <callSubTemplate name="chartNode_Calculation"/>
- </param>
- </param>
- </chartNodes>
- </payload>
- </subtemplate>
- <subtemplate name="combination_chart_series">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="chartSeries" type="multinode" referenced="true">
- <param name="calculations" type="multinode" rule="calculations" enumerateVariations="false"/>
- <param name="isEdge" type="option" rule="isEdge"/>
- <param name="isNotEdge" type="option" rule="isNotEdge"/>
- </param>
- </parameters>
- <payload>
- <chartNodes>
- <param name="chartSeries" type="multinode" skipEmpty="true" delimeter="<chartNestedNodes>">
- <param name="isNotEdge" type="option">
- <callSubTemplate name="chartNode_category_open">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- <param name="chartSeries" type="multinode">
- <param name="isEdge" type="option">
- <param name="chartSeries" scope="root" type="multinode" indexes="1">
- <!-- We can only have 1 edge, so this trick forces a nesting if there were other items -->
- <chartNestedNodes>
- </param>
- <callSubTemplate name="chart_edge">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- <param name="chartSeries" scope="root" type="multinode" indexes="1">
- </chartNestedNodes>
- </param>
- </param>
- </param>
- <param name="chartSeries" type="multinode" skipEmpty="true" reversed="true" delimeter="</chartNestedNodes>">
- <param name="isNotEdge" type="option">
- <callSubTemplate name="chartNode_category_close">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- <param name="calculations" type="multinode">
- <callSubTemplate name="chartNode_Calculation"/>
- </param>
- </param>
- </chartNodes>
- </payload>
- </subtemplate>
- <subtemplate name="chart_edge">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="hasChildCategory" type="option" rule="childCategory">
- <param name="childCategory" enumerateVariations="false" type="multinode" rule="childCategory"/>
- </param>
- </parameters>
- <payload>
- <param name="hasChildCategory" type="option">
- <param name="childCategory" type="multinode">
- <callSubTemplate name="chart_edge_category">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- </payload>
- </subtemplate>
- <subtemplate name="chart_edge_category">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="isSummary" type="option" rule="edgeSummaryCategory"/>
- <param name="isNonSummary" type="option" rule="edgeNonSummaryCategory"/>
- </parameters>
- <payload>
- <param name="isNonSummary" type="option">
- <callSubTemplate name="chart_edge_category_node">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- <param name="isSummary" type="option">
- <param name="allowSummaries" scope="root" type="option">
- <callSubTemplate name="chart_edge_category_node">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- </payload>
- </subtemplate>
- <subtemplate name="chart_edge_category_node">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="hasChildCategory" type="option" rule="childCategory">
- <param name="childCategory" enumerateVariations="false" type="multinode" rule="childCategory"/>
- </param>
- </parameters>
- <payload>
- <chartNode>
- <callSubTemplate name="chartNode_Category_nodeMembers"/>
- <param name="hasChildCategory" type="option">
- <chartNestedNodes>
- <param name="childCategory" type="multinode">
- <callSubTemplate name="chart_edge_category">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </chartNestedNodes>
- </param>
- </chartNode>
- </payload>
- </subtemplate>
- <subtemplate name="combination_chart_measures">
- <parameters>
- <param name="chartMeasures" type="multinode" referenced="true"/>
- </parameters>
- <payload>
- <chartNodes>
- <param name="chartMeasures">
- <callSubTemplate name="chartNode_Category"/>
- </param>
- </chartNodes>
- </payload>
- </subtemplate>
- <subtemplate name="default_measure">
- <parameters>
- <param name="singleMeasure" type="option" rule="singleDistinctMeasure"/>
- <param name="chartMeasure" type="node" referenced="true">
- <param name="name" type="string" rule="smdName"/>
- </param>
- </parameters>
- <payload>
- <param name="singleMeasure" type="option">
- <v2_defaultChartMeasure refDataItem="<param name="chartMeasure" scope="root" type="node"><param name="name" encoding="xmlEncoded" type="string"/></param>"/>
- </param>
- </payload>
- </subtemplate>
- <subtemplate name="chart_multiples">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="chartCategories" type="multinode" referenced="true">
- <param name="queryId" type="string" rule="smdQueryName"/>
- <param name="isEdge" type="option" rule="isEdge"/>
- <param name="isNotEdge" type="option" rule="isNotEdge"/>
- </param>
- <param name="hasExtraCategories" type="option" rule="multipleCategories"/>
- </parameters>
- <payload>
- <param name="hasExtraCategories" type="option">
- <v2_category>
- <chartNodes>
- <param name="chartCategories" scope="root" type="multinode" delimeter="<chartNestedNodes>">
- <param name="isNotEdge" type="option">
- <callSubTemplate name="chartNode_category_open">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- <param name="chartCategories" type="multinode" scope="root">
- <param name="isEdge" type="option">
- <param name="chartCategories" scope="root" type="multinode" indexes="1">
- <!-- We can only have 1 edge, so this trick forces a nesting if there were other items -->
- <chartNestedNodes>
- </param>
- <callSubTemplate name="chart_edge">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- <param name="chartCategories" scope="root" type="multinode" indexes="1">
- </chartNestedNodes>
- </param>
- </param>
- </param>
- <param name="chartCategories" type="multinode" scope="root" delimeter="</chartNestedNodes>">
- <param name="isNotEdge" type="option">
- <callSubTemplate name="chartNode_category_close">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- </chartNodes>
- </v2_category>
- <v2_matrix>
- <v2_matrixColumns matrixLevels="1">
- <v2_matrixColumnLabels>
- <style>
- <defaultStyles>
- <defaultStyle refStyle="at"/>
- </defaultStyles>
- </style>
- </v2_matrixColumnLabels>
- <v2_axisTitle refQuery="<param name="chartCategories" scope="root" type="multinode" indexes="0"><param name="queryId" type="string"/></param>">
- <v2_chartTextContents>
- <v2_automaticText/>
- </v2_chartTextContents>
- </v2_axisTitle>
- </v2_matrixColumns>
- </v2_matrix>
- </param>
- </payload>
- </subtemplate>
- <subtemplate name="chart_multiples_measures">
- <parameters>
- <param name="chartMeasure" type="multinode" referenced="true">
- <param name="queryId" type="string" rule="smdQueryName"/>
- </param>
- </parameters>
- <payload>
- <v2_category>
- <chartNodes>
- <param name="chartMeasure" type="multinode">
- <callSubTemplate name="chartNode_Category"/>
- </param>
- </chartNodes>
- </v2_category>
- <v2_matrix>
- <v2_matrixColumns matrixLevels="1">
- <v2_matrixColumnLabels>
- <style>
- <defaultStyles>
- <defaultStyle refStyle="at"/>
- </defaultStyles>
- </style>
- </v2_matrixColumnLabels>
- <v2_axisTitle refQuery="<param name="chartMeasure" scope="root" type="multinode" indexes="0"><param name="queryId" type="string"/></param>">
- <v2_chartTextContents>
- <v2_automaticText/>
- </v2_chartTextContents>
- </v2_axisTitle>
- </v2_matrixColumns>
- </v2_matrix>
- </payload>
- </subtemplate>
- <subtemplate name="chartNode_category_open">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="name" type="string" rule="smdName"/>
- <param name="hasChildCategory" type="option" rule="childCategory">
- <param name="childCategory" enumerateVariations="false" type="node" rule="nonSummaryChildCategory"/>
- </param>
- <param name="notSummaryParent" type="option" rule="notSummaryParent"/>
- </parameters>
- <payload>
- <param name="notSummaryParent" type="option">
- <chartNode>
- <chartNodeMembers>
- <chartNodeMember refDataItem="<param name="name" scope="root" encoding="xmlEncoded" type="string"/>">
- <chartContents>
- <chartTextItem>
- <dataSource>
- <memberCaption/>
- </dataSource>
- </chartTextItem>
- </chartContents>
- </chartNodeMember>
- </chartNodeMembers>
- <param name="hasChildCategory" scope="root" type="option">
- <chartNestedNodes>
- </param>
- </param>
- <param name="hasChildCategory" type="option">
- <param name="childCategory" type="node">
- <callSubTemplate name="chartNode_category_open">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- </payload>
- </subtemplate>
- <subtemplate name="chartNode_category_close">
- <parameters>
- <param name="allowSummaries" type="option" referenced="true"/>
- <param name="hasChildCategory" type="option" rule="childCategory">
- <param name="childCategory" enumerateVariations="false" type="node" rule="nonSummaryChildCategory"/>
- <param name="summaryChildCategory" enumerateVariations="false" type="multinode" rule="summaryChildCategory"/>
- </param>
- <param name="notSummaryParent" type="option" rule="notSummaryParent"/>
- <param name="isSummaryParent" type="option" rule="isSummaryParent"/>
- </parameters>
- <payload>
- <param name="hasChildCategory" type="option">
- <param name="childCategory" type="node">
- <callSubTemplate name="chartNode_category_close">
- <withParam name="allowSummaries" scope="root"/>
- </callSubTemplate>
- </param>
- </param>
- <param name="allowSummaries" type="option">
- <param name="hasChildCategory" scope="root" type="option">
- <param name="summaryChildCategory" type="multinode">
- <callSubTemplate name="chartNode_Category"/>
- </param>
- </param>
- </param>
- <param name="notSummaryParent" type="option">
- <param name="hasChildCategory" scope="root" type="option">
- </chartNestedNodes>
- </param>
- </chartNode>
- </param>
- <param name="allowSummaries" type="option">
- <param name="isSummaryParent" scope="root" type="option">
- <callSubTemplate name="chartNode_Category"/>
- </param>
- </param>
- </payload>
- </subtemplate>
- <subtemplate name="chartNode_Calculation">
- <parameters>
- <param name="name" type="string" rule="smdName"/>
- </parameters>
- <payload>
- <chartNode>
- <chartNodeMembers>
- <chartNodeMember refDataItem="<param name="name" encoding="xmlEncoded" type="string"/>">
- <chartContents>
- <chartTextItem>
- <dataSource>
- <dataItemLabel refDataItem="<param name="name" encoding="xmlEncoded" type="string"/>"/>
- </dataSource>
- </chartTextItem>
- </chartContents>
- </chartNodeMember>
- </chartNodeMembers>
- </chartNode>
- </payload>
- </subtemplate>
- <subtemplate name="chartNode_Category">
- <payload>
- <chartNode>
- <callSubTemplate name="chartNode_Category_nodeMembers"/>
- </chartNode>
- </payload>
- </subtemplate>
- <subtemplate name="chartNode_Category_nodeMembers">
- <parameters>
- <param name="name" type="string" rule="smdName"/>
- </parameters>
- <payload>
- <chartNodeMembers>
- <chartNodeMember refDataItem="<param name="name" encoding="xmlEncoded" type="string"/>">
- <chartContents>
- <chartTextItem>
- <dataSource>
- <memberCaption/>
- </dataSource>
- </chartTextItem>
- </chartContents>
- </chartNodeMember>
- </chartNodeMembers>
- </payload>
- </subtemplate>
- <subtemplate name="commonChartNodes">
- <parameters>
- <param name="hasCurrentV2_chartSubTitle" type="option" rule="currentV2_chartSubTitle">
- <param name="currentV2_chartSubTitle" type="nodecontents" rule="currentV2_chartSubTitle"/>
- </param>
- <param name="hasCurrentV2_chartTitle" type="option" rule="currentV2_chartTitle">
- <param name="currentV2_chartTitle" type="nodecontents" rule="currentV2_chartTitle"/>
- </param>
- <param name="hasCurrentV2_chartFooter" type="option" rule="currentV2_chartFooter">
- <param name="currentV2_chartFooter" type="nodecontents" rule="currentV2_chartFooter"/>
- </param>
- <param name="hasCurrentReportDrills" type="option" rule="currentReportDrills">
- <param name="currentReportDrills" type="nodecontents" rule="currentReportDrills"/>
- </param>
- <param name="hasCurrentChartSuppress" type="option" rule="currentChartSuppress">
- <param name="currentChartSuppress" type="nodecontents" rule="currentChartSuppress"/>
- </param>
- <param name="hasCurrentAlternateText" type="option" rule="currentAlternateText">
- <param name="currentAlternateText" type="nodecontents" rule="currentAlternateText"/>
- </param>
- </parameters>
- <payload>
- <param name="hasCurrentV2_chartSubTitle" type="option">
- <param name="currentV2_chartSubTitle" type="nodecontents"/>
- </param>
- <param name="hasCurrentV2_chartTitle" type="option">
- <param name="currentV2_chartTitle" type="nodecontents"/>
- </param>
- <param name="hasCurrentV2_chartFooter" type="option">
- <param name="currentV2_chartFooter" type="nodecontents"/>
- </param>
- <param name="hasCurrentReportDrills" type="option">
- <param name="currentReportDrills" type="nodecontents"/>
- </param>
- <param name="hasCurrentChartSuppress" type="option">
- <param name="currentChartSuppress" type="nodecontents"/>
- </param>
- <param name="hasCurrentAlternateText" type="option">
- <param name="currentAlternateText" type="nodecontents"/>
- </param>
- </payload>
- </subtemplate>
- </subtemplates>
- </template>
|