getApplicationsNodeChildrenTransform.xslt 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xsl:stylesheet version="1.0"
  3. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  4. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  5. xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
  6. xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  7. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  8. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt">
  9. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
  10. <xsl:template match="/root">
  11. <atom:feed xmlns:atom="http://www.w3.org/2005/Atom">
  12. <atom:id>TM1 root ID</atom:id>
  13. <atom:title xml:lang="en">TM1 Root Feed</atom:title>
  14. <xsl:apply-templates select="soapenv:Body/getApplicationsNodeChildrenResponse/getApplicationsNodeChildrenReturn/getApplicationsNodeChildrenReturn"/>
  15. </atom:feed>
  16. </xsl:template>
  17. <xsl:template match="getApplicationsNodeChildrenReturn">
  18. <atom:entry xmlns:atom="http://www.w3.org/2005/Atom">
  19. <xsl:variable name="webroot" select="/root/WebRootURL"/>
  20. <xsl:variable name="gateway" select="/root/GatewayURL"/>
  21. <xsl:variable name="jsessionid" select="/root/JSESSIONID"/>
  22. <xsl:variable name="sessionToken" select="/root/sessionToken"/>
  23. <xsl:variable name="treeId" select="/root/TREEID"/>
  24. <xsl:variable name="tm1weburl" select="/root/TM1WebURL"/>
  25. <xsl:variable name="TM1WebRealURL" select="/root/TM1WebRealURL"/>
  26. <xsl:variable name="tm1webvirtualdirectory" select="/root/TM1WebVirtualDirectory"/>
  27. <xsl:variable name="tm1serverhost" select="/root/TM1Host"/>
  28. <xsl:variable name="tm1servername" select="/root/TM1DataServer"/>
  29. <xsl:variable name="tm1username" select="/root/TM1username"/>
  30. <xsl:variable name="tm1pass" select="/root/TM1pass"/>
  31. <xsl:variable name="foldername" select="/root/TM1FolderName"/>
  32. <xsl:variable name="filterpackages" select="/root/FilterPackages"/>
  33. <atom:id>
  34. <xsl:value-of select="$jsessionid"/>
  35. <xsl:value-of select="id"/>
  36. </atom:id>
  37. <atom:title xml:lang="en"><xsl:value-of select="description"/></atom:title>
  38. <atom:summary xml:lang="en"><xsl:value-of select="description"/></atom:summary>
  39. <xsl:choose>
  40. <xsl:when test="string(type) = 'OBJ_FOLDER'">
  41. <atom:link rel="icon" type="image/gif" href="{$webroot}/icd/feeds/images/icon_ldx_folder.gif"/>
  42. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/icd/feeds/images/icon_ldx_folder_64.gif"/>
  43. <atom:link rel="alternate" type="application/atom+xml" href="{$gateway}/icd/feeds/cm/system/xts.run?m=/tm1/103/getApplicationsNodeChildren.xts&amp;folderName={$foldername}/{description}&amp;TM1WebURL={$tm1weburl}&amp;TM1WebVirtualDirectory={$tm1webvirtualdirectory}&amp;TM1Host={$tm1serverhost}&amp;TM1DataServer={$tm1servername}&amp;nodeId={id}&amp;treeId={$treeId}&amp;JSESSIONID={$jsessionid}&amp;sessionToken={$sessionToken}&amp;TM1username={$tm1username}&amp;TM1pass={$tm1pass}&amp;FilterPackages={$filterpackages}" />
  44. </xsl:when>
  45. <xsl:when test="string(type) = 'OBJ_PRIVATE_FOLDER'">
  46. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/folder-private.gif"/>
  47. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/folder-private_64.gif"/>
  48. <atom:link rel="alternate" type="application/atom+xml" href="{$gateway}/icd/feeds/cm/system/xts.run?m=/tm1/103/getApplicationsNodeChildren.xts&amp;folderName={$foldername}/{description}&amp;TM1WebURL={$tm1weburl}&amp;TM1WebVirtualDirectory={$tm1webvirtualdirectory}&amp;TM1Host={$tm1serverhost}&amp;TM1DataServer={$tm1servername}&amp;nodeId={id}&amp;treeId={$treeId}&amp;JSESSIONID={$jsessionid}&amp;sessionToken={$sessionToken}&amp;TM1username={$tm1username}&amp;TM1pass={$tm1pass}" />
  49. </xsl:when>
  50. <xsl:when test="string(type) = 'OBJ_BLOB'">
  51. <xsl:choose>
  52. <xsl:when test="string(isPrivate) != 'false'">
  53. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private.gif"/>
  54. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private_64.gif"/>
  55. </xsl:when>
  56. <xsl:otherwise>
  57. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel.gif"/>
  58. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_64.gif"/>
  59. </xsl:otherwise>
  60. </xsl:choose>
  61. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebWebSheetWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$foldername}/{description}%26FilterPackages%3d{$filterpackages}"/>
  62. </xsl:when>
  63. <xsl:when test="string(type) = 'OBJ_PRIVATE_BLOB'">
  64. <xsl:choose>
  65. <xsl:when test="string(isPrivate) != 'false'">
  66. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private.gif"/>
  67. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private_64.gif"/>
  68. </xsl:when>
  69. <xsl:otherwise>
  70. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel.gif"/>
  71. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_64.gif"/>
  72. </xsl:otherwise>
  73. </xsl:choose>
  74. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebWebSheetWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$foldername}/{description}%26FilterPackages%3d{$filterpackages}"/>
  75. </xsl:when>
  76. <xsl:when test="string(type) = 'OBJ_EXTERN'">
  77. <xsl:choose>
  78. <xsl:when test="string(isPrivate) != 'false'">
  79. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private.jpg"/>
  80. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private_64.jpg"/>
  81. </xsl:when>
  82. <xsl:otherwise>
  83. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref.jpg"/>
  84. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_64.jpg"/>
  85. </xsl:otherwise>
  86. </xsl:choose>
  87. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebWebSheetWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$foldername}/{description}%26FilterPackages%3d{$filterpackages}"/>
  88. </xsl:when>
  89. <xsl:when test="string(type) = 'OBJ_PRIVATE_EXTERN'">
  90. <xsl:choose>
  91. <xsl:when test="string(isPrivate) != 'false'">
  92. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private.jpg"/>
  93. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private_64.jpg"/>
  94. </xsl:when>
  95. <xsl:otherwise>
  96. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref.jpg"/>
  97. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_64.jpg"/>
  98. </xsl:otherwise>
  99. </xsl:choose>
  100. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebWebSheetWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$foldername}/{description}%26FilterPackages%3d{$filterpackages}"/>
  101. </xsl:when>
  102. <xsl:when test="string(type) = 'OBJ_VIEW'">
  103. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  104. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  105. <xsl:choose>
  106. <xsl:when test="string(isPrivate) != 'false'">
  107. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  108. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  109. </xsl:when>
  110. <xsl:otherwise>
  111. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  112. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  113. </xsl:otherwise>
  114. </xsl:choose>
  115. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebCubeViewerWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$viewName}%26tm1Cube%3d{$cubeName}%26FilterPackages%3d{$filterpackages}%26AccessType%3dPUBLIC"/>
  116. </xsl:when>
  117. <xsl:when test="string(type) = 'OBJ_PRIVATE_VIEW'">
  118. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  119. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  120. <xsl:choose>
  121. <xsl:when test="string(isPrivate) != 'false'">
  122. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  123. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  124. </xsl:when>
  125. <xsl:otherwise>
  126. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  127. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  128. </xsl:otherwise>
  129. </xsl:choose>
  130. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebCubeViewerWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$viewName}%26tm1Cube%3d{$cubeName}%26FilterPackages%3d{$filterpackages}%26AccessType%3dPRIVATE"/>
  131. </xsl:when>
  132. <xsl:when test="string(type) = 'OBJ_VIEW_PRIVATE_REF'">
  133. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  134. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  135. <xsl:choose>
  136. <xsl:when test="string(isPrivate) != 'false'">
  137. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  138. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  139. </xsl:when>
  140. <xsl:otherwise>
  141. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  142. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  143. </xsl:otherwise>
  144. </xsl:choose>
  145. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebCubeViewerWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$viewName}%26tm1Cube%3d{$cubeName}%26FilterPackages%3d{$filterpackages}%26AccessType%3dPUBLIC"/>
  146. </xsl:when>
  147. <xsl:when test="string(type) = 'OBJ_PRIVATE_VIEW_PRIVATE_REF'">
  148. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  149. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  150. <xsl:choose>
  151. <xsl:when test="string(isPrivate) != 'false'">
  152. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  153. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  154. </xsl:when>
  155. <xsl:otherwise>
  156. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  157. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  158. </xsl:otherwise>
  159. </xsl:choose>
  160. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebCubeViewerWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$viewName}%26tm1Cube%3d{$cubeName}%26FilterPackages%3d{$filterpackages}%26AccessType%3dPRIVATE"/>
  161. </xsl:when>
  162. <xsl:when test="string(type) = 'OBJ_VIEW_PUBLIC_REF'">
  163. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  164. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  165. <xsl:choose>
  166. <xsl:when test="string(isPrivate) != 'false'">
  167. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  168. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  169. </xsl:when>
  170. <xsl:otherwise>
  171. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  172. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  173. </xsl:otherwise>
  174. </xsl:choose>
  175. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebCubeViewerWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$viewName}%26tm1Cube%3d{$cubeName}%26FilterPackages%3d{$filterpackages}%26AccessType%3dPUBLIC"/>
  176. </xsl:when>
  177. <xsl:when test="string(type) = 'OBJ_PRIVATE_VIEW_PUBLIC_REF'">
  178. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  179. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  180. <xsl:choose>
  181. <xsl:when test="string(isPrivate) != 'false'">
  182. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  183. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  184. </xsl:when>
  185. <xsl:otherwise>
  186. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  187. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  188. </xsl:otherwise>
  189. </xsl:choose>
  190. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/103/TM1WebCubeViewerWidget.xml?iwparam=tm1Host%3d{$tm1serverhost}%26tm1Server%3d{$tm1servername}%26tm1UserName%3d{$tm1username}%26tm1Password%3d{$tm1pass}%26tm1WebURL%3d{$tm1weburl}%2F{$tm1webvirtualdirectory}%26tm1CubeView%3d{$viewName}%26tm1Cube%3d{$cubeName}%26FilterPackages%3d{$filterpackages}%26AccessType%3dPRIVATE"/>
  191. </xsl:when>
  192. </xsl:choose>
  193. </atom:entry>
  194. </xsl:template>
  195. </xsl:stylesheet>