123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: ps
- (C) Copyright IBM Corp. 2005, 2011
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- -->
- <!--
- Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
- Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
- -->
- <!--
- NOTE: The logic to determine the order of the queries MUST match the logic found in dt:generateInitialUIHelpers
- if checkUIHelpers is true, then only build the CM query if the associated UIHelper is empty.
- -->
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
- exclude-result-prefixes="xsl">
-
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
-
- <xsl:key name="search-paths-included-content" match="/root/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='includedObjects']/*[local-name()='value']/*[local-name()='item']" use="."/>
- <xsl:key name="search-paths-excluded-content" match="/root/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='excludedObjects']/*[local-name()='value']/*[local-name()='item']" use="."/>
- <xsl:template match="*[local-name()='root']" priority="1">
- <xsl:variable name="searchPathsInclude" select="/root/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='includedObjects']/*[local-name()='value']/*[local-name()='item']"/>
- <xsl:variable name="searchPathsExclude" select="/root/*[local-name()='options']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name']='excludedObjects']/*[local-name()='value']/*[local-name()='item']"/>
- <!-- Included Content -->
- <xsl:if test="/root/*[local-name()='options']/*[local-name()='value']/*[local-name()='item']/*[local-name()='name'] = 'includedObjects'">
- <include>
- <!-- loop though the set of unique searchPaths -->
- <xsl:for-each select="$searchPathsInclude[generate-id(.)=generate-id(key('search-paths-included-content',.))]">
- <cm:query>
- <cm:search><xsl:value-of select="."/></cm:search>
- <cm:properties>
- <cm:property name="defaultName"/>
- <cm:property name="searchPath"/>
- <cm:property name="storeID"/>
- <cm:property name="userInterfaces"/>
- <cm:property name="ancestors"/>
- <cm:property name="hidden"/>
- </cm:properties>
- </cm:query>
- </xsl:for-each>
- </include>
- </xsl:if>
- <!-- Excluded Content -->
- <xsl:if test="/root/*[local-name()='options']/*[local-name()='value']/*[local-name()='item']/*[local-name()='name'] = 'excludedObjects'">
- <exclude>
- <xsl:for-each select="$searchPathsExclude[generate-id(.)=generate-id(key('search-paths-excluded-content',.))]">
- <cm:query>
- <cm:search><xsl:value-of select="."/></cm:search>
- <cm:properties>
- <cm:property name="defaultName"/>
- <cm:property name="searchPath"/>
- <cm:property name="storeID"/>
- <cm:property name="userInterfaces"/>
- <cm:property name="ancestors"/>
- <cm:property name="hidden"/>
- </cm:properties>
- </cm:query>
- </xsl:for-each>
- </exclude>
- </xsl:if>
- </xsl:template>
-
- <xsl:template match="text()" priority="0"/>
- </xsl:stylesheet>
|