getApplicationsNodeChildrenTransform.xslt 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  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:variable name="gateway" select="/root/GatewayURL"/>
  15. <xsl:apply-templates select="soapenv:Body/getApplicationsNodeChildrenResponse/getApplicationsNodeChildrenReturn/getApplicationsNodeChildrenReturn"/>
  16. </atom:feed>
  17. </xsl:template>
  18. <xsl:template match="getApplicationsNodeChildrenReturn">
  19. <atom:entry xmlns:atom="http://www.w3.org/2005/Atom">
  20. <xsl:variable name="webroot" select="/root/WebRootURL"/>
  21. <xsl:variable name="gateway" select="/root/GatewayURL"/>
  22. <xsl:variable name="jsessionid" select="/root/JSESSIONID"/>
  23. <xsl:variable name="sessionToken" select="/root/sessionToken"/>
  24. <xsl:variable name="treeId" select="/root/TREEID"/>
  25. <xsl:variable name="tm1weburl" select="/root/TM1WebURL"/>
  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">
  39. <xsl:value-of select="description"/>
  40. </atom:summary>
  41. <atom:updated>2009-11-04T13:22:49Z </atom:updated>
  42. <atom:author>
  43. <name>Marianne</name>
  44. <email>badams@example.com</email>
  45. </atom:author>
  46. <xsl:choose>
  47. <xsl:when test="string(type) = 'OBJ_FOLDER'">
  48. <atom:link rel="icon" type="image/gif" href="{$webroot}/icd/feeds/images/icon_ldx_folder.gif"/>
  49. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/icd/feeds/images/icon_ldx_folder_64.gif"/>
  50. <atom:link rel="alternate" type="application/atom+xml" href="{$gateway}/icd/feeds/cm/system/xts.run?m=/tm1/102RP2/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}">
  51. </atom:link>
  52. </xsl:when>
  53. <xsl:when test="string(type) = 'OBJ_PRIVATE_FOLDER'">
  54. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/folder-private.gif"/>
  55. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/folder-private_64.gif"/>
  56. <atom:link rel="alternate" type="application/atom+xml" href="{$gateway}/icd/feeds/cm/system/xts.run?m=/tm1/102RP2/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}">
  57. </atom:link>
  58. </xsl:when>
  59. <xsl:when test="string(type) = 'OBJ_BLOB'">
  60. <xsl:choose>
  61. <xsl:when test="string(isPrivate) != 'false'">
  62. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private.gif"/>
  63. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private_64.gif"/>
  64. </xsl:when>
  65. <xsl:otherwise>
  66. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel.gif"/>
  67. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_64.gif"/>
  68. </xsl:otherwise>
  69. </xsl:choose>
  70. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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}"/>
  71. </xsl:when>
  72. <xsl:when test="string(type) = 'OBJ_PRIVATE_BLOB'">
  73. <xsl:choose>
  74. <xsl:when test="string(isPrivate) != 'false'">
  75. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private.gif"/>
  76. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel-private_64.gif"/>
  77. </xsl:when>
  78. <xsl:otherwise>
  79. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel.gif"/>
  80. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_64.gif"/>
  81. </xsl:otherwise>
  82. </xsl:choose>
  83. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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}"/>
  84. </xsl:when>
  85. <xsl:when test="string(type) = 'OBJ_EXTERN'">
  86. <xsl:choose>
  87. <xsl:when test="string(isPrivate) != 'false'">
  88. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private.jpg"/>
  89. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private_64.jpg"/>
  90. </xsl:when>
  91. <xsl:otherwise>
  92. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref.jpg"/>
  93. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_64.jpg"/>
  94. </xsl:otherwise>
  95. </xsl:choose>
  96. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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}"/>
  97. </xsl:when>
  98. <xsl:when test="string(type) = 'OBJ_PRIVATE_EXTERN'">
  99. <xsl:choose>
  100. <xsl:when test="string(isPrivate) != 'false'">
  101. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private.jpg"/>
  102. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_private_64.jpg"/>
  103. </xsl:when>
  104. <xsl:otherwise>
  105. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref.jpg"/>
  106. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/excel_ref_64.jpg"/>
  107. </xsl:otherwise>
  108. </xsl:choose>
  109. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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}"/>
  110. </xsl:when>
  111. <xsl:when test="string(type) = 'OBJ_VIEW'">
  112. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  113. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  114. <xsl:choose>
  115. <xsl:when test="string(isPrivate) != 'false'">
  116. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  117. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  118. </xsl:when>
  119. <xsl:otherwise>
  120. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  121. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  122. </xsl:otherwise>
  123. </xsl:choose>
  124. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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"/>
  125. </xsl:when>
  126. <xsl:when test="string(type) = 'OBJ_PRIVATE_VIEW'">
  127. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  128. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  129. <xsl:choose>
  130. <xsl:when test="string(isPrivate) != 'false'">
  131. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  132. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  133. </xsl:when>
  134. <xsl:otherwise>
  135. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  136. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  137. </xsl:otherwise>
  138. </xsl:choose>
  139. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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"/>
  140. </xsl:when>
  141. <xsl:when test="string(type) = 'OBJ_VIEW_PRIVATE_REF'">
  142. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  143. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  144. <xsl:choose>
  145. <xsl:when test="string(isPrivate) != 'false'">
  146. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  147. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  148. </xsl:when>
  149. <xsl:otherwise>
  150. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  151. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  152. </xsl:otherwise>
  153. </xsl:choose>
  154. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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"/>
  155. </xsl:when>
  156. <xsl:when test="string(type) = 'OBJ_PRIVATE_VIEW_PRIVATE_REF'">
  157. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  158. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  159. <xsl:choose>
  160. <xsl:when test="string(isPrivate) != 'false'">
  161. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  162. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  163. </xsl:when>
  164. <xsl:otherwise>
  165. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  166. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  167. </xsl:otherwise>
  168. </xsl:choose>
  169. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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"/>
  170. </xsl:when>
  171. <xsl:when test="string(type) = 'OBJ_VIEW_PUBLIC_REF'">
  172. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  173. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  174. <xsl:choose>
  175. <xsl:when test="string(isPrivate) != 'false'">
  176. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  177. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  178. </xsl:when>
  179. <xsl:otherwise>
  180. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  181. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  182. </xsl:otherwise>
  183. </xsl:choose>
  184. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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"/>
  185. </xsl:when>
  186. <xsl:when test="string(type) = 'OBJ_PRIVATE_VIEW_PUBLIC_REF'">
  187. <xsl:variable name="cubeName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(xtsext:substringBeforeLast(name, '$$' ), '$$'), '$' )"/>
  188. <xsl:variable name="viewName" select="xtsext:substringAfterLast(xtsext:substringBeforeLast(name, '$$' ), '$' )"/>
  189. <xsl:choose>
  190. <xsl:when test="string(isPrivate) != 'false'">
  191. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/view-private.gif"/>
  192. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/view-private_64.gif"/>
  193. </xsl:when>
  194. <xsl:otherwise>
  195. <atom:link rel="icon" type="image/gif" href="{$webroot}/tm1/bux/images/views.gif"/>
  196. <atom:link rel="thumbnail" type="image/gif" href="{$webroot}/tm1/bux/images/views_64.gif"/>
  197. </xsl:otherwise>
  198. </xsl:choose>
  199. <atom:link rel="alternate" type="application/x-iwidget+xml" href="{$webroot}/tm1/bux/iWidgets/102RP2/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"/>
  200. </xsl:when>
  201. </xsl:choose>
  202. </atom:entry>
  203. </xsl:template>
  204. </xsl:stylesheet>