Advertisement
Guest User

Untitled

a guest
Apr 11th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.79 KB | None | 0 0
  1. <rules>
  2. <emie>
  3. <domain exclude="true">sww-epw3.testing.com</domain>
  4. <domain>sww-epw3.testing.com
  5.  
  6. <path docMode="7" comment="APEXID:102994;AppName:Physical Records Management;StepOut:22 May 2015;StepIn:22 May 2016;Requester:Per Roseth;BusinessUnit:Upstream;PortfolioManager:Junfeng Liang">/Apps/dsprm</path>
  7. <path docMode="7" comment="APEXID:102994;AppName:Physical Records Management;StepOut:22 May 2015;StepIn:22 May 2016;Requester:Per Roseth;BusinessUnit:Upstream;PortfolioManager:Junfeng Liang">/Apps/uaprm</path>
  8. <path docMode="7" comment="APEXID:102994;AppName:Physical Records Management;StepOut:22 May 2015;StepIn:22 May 2016;Requester:Per Roseth;BusinessUnit:Upstream;PortfolioManager:Junfeng Liang">/Apps/ptprm</path>
  9. <path docMode="7" comment="APEXID:141923;MyRequestID:7512579;AppName:Production Revenue Accounting-PRA;StepOut:4 March 2016;StepIn:28 February 2017;Requester:PAUL.GEBBIE@testing.COM;BusinessUnit:UI;PortfolioManager:Per.Roseth@testing.com;Remarks:On Board Application">/apps/doto</path>
  10. <path docMode="7" comment="APEXID:;MyRequestID:7219068;AppName:;StepOut:9 December 2015;StepIn:;Requester:SAIKAT.MANNA@testing.COM;BusinessUnit:UA;PortfolioManager:;Remarks:Technical Assessment">/apps/seprm</path>
  11. <path docMode="7" comment="APEXID:;MyRequestID:7219068;AppName:;StepOut:9 Dec 2015;StepIn:;Requester:SAIKAT.MANNA@testing.COM;BusinessUnit:UA;PortfolioManager:;Remarks:Technical Assessment">/apps/gfprm</path>
  12. </domain>
  13. </emie>
  14. </rules>
  15.  
  16. <xsl:stylesheet version="1.0"
  17. xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  18. <xsl:output method="xml" indent="yes"/>
  19. <xsl:output method="xml" encoding="utf-8" indent="yes" omit-xml-declaration="yes"/>
  20. <xsl:template match="/">
  21. <xsl:copy-of select="$R2"/>
  22. </xsl:template>
  23. <xsl:variable name="R1">
  24. <xsl:call-template name="output1" />
  25. </xsl:variable>
  26. <xsl:variable name="R2">
  27. <xsl:call-template name="output2" />
  28. </xsl:variable>
  29. <xsl:template name="output2">
  30. <xsl:element name="DOMAIN">
  31. <xsl:element name="APEXID"></xsl:element>
  32. <xsl:element name="MYREQUESTID"></xsl:element>
  33. <xsl:element name="APPLICATION_NAME"></xsl:element>
  34. <xsl:element name="URL"></xsl:element>
  35. <xsl:element name="MODE"></xsl:element>
  36. <xsl:element name="STEPOUT"></xsl:element>
  37. <xsl:element name="STEPIN"></xsl:element>
  38. <xsl:element name="BU"></xsl:element>
  39. <xsl:element name="PORTFOLIO_MGR"></xsl:element>
  40. <xsl:element name="REMARKS"></xsl:element>
  41. <xsl:element name="RAG_STATUS"></xsl:element>
  42. <xsl:element name="APEX_DATA_PORTAL_URL"></xsl:element>
  43. </xsl:element>
  44. </xsl:template>
  45. <xsl:template name="output1">
  46. <xsl:variable name="site">
  47. <xsl:value-of select="rules/emie/domain/text()"/>
  48. </xsl:variable>
  49. <emie>
  50. <xsl:for-each select="rules/emie/domain/path">
  51. <domain>
  52. <xsl:element name="URL">
  53. <xsl:value-of select="concat($site,text())" />
  54. </xsl:element>
  55. <xsl:apply-templates select="@comment"/>
  56. </domain>
  57. </xsl:for-each>
  58. <xsl:for-each select="domain">
  59. <domain>
  60. <xsl:element name="URL">
  61. <xsl:value-of select="concat($site,text())" />
  62. </xsl:element>
  63. <xsl:apply-templates select="@comment"/>
  64. </domain>
  65. </xsl:for-each>
  66. </emie>
  67. </xsl:template>
  68. <xsl:template match="@comment" name="tokenize">
  69. <xsl:param name="text" select="."/>
  70. <xsl:param name="separator" select="';'"/>
  71. <xsl:param name="separator2" select="':'"/>
  72. <xsl:choose>
  73. <xsl:when test="not(contains($text, $separator))">
  74. <xsl:choose>
  75. <xsl:when test="(contains($text, $separator2))">
  76. <xsl:variable name="token" select="normalize-space(substring-before($text, $separator2))" />
  77. <xsl:element name="{$token}">
  78. <xsl:value-of select="normalize-space(substring-after($text, $separator2))"/>
  79. </xsl:element>
  80. </xsl:when>
  81. <xsl:otherwise>
  82. <xsl:element name="AppName">
  83. <xsl:value-of select="$text"/>
  84. </xsl:element>
  85. </xsl:otherwise>
  86. </xsl:choose>
  87. </xsl:when>
  88. <xsl:otherwise>
  89. <xsl:call-template name="tokenize">
  90. <xsl:with-param name="text" select="substring-before($text, $separator)"/>
  91. </xsl:call-template>
  92. <xsl:call-template name="tokenize">
  93. <xsl:with-param name="text" select="substring-after($text, $separator)"/>
  94. </xsl:call-template>
  95. </xsl:otherwise>
  96. </xsl:choose>
  97. </xsl:template>
  98. </xsl:stylesheet>
  99.  
  100. <emie>
  101. <domain>
  102. <URL>sww-epw3.testing.com/Apps/dsprm</URL>
  103. <APEXID>102994</APEXID>
  104. <AppName>Physical Records Management</AppName>
  105. <StepOut>22 May 2015</StepOut>
  106. <StepIn>22 May 2016</StepIn>
  107. <Requester>Per Roseth</Requester>
  108. <BusinessUnit>Upstream</BusinessUnit>
  109. <PortfolioManager>Junfeng Liang</PortfolioManager>
  110. </domain>
  111. <domain>
  112. <URL>sww-epw3.testing.com/Apps/uaprm</URL>
  113. <APEXID>102994</APEXID>
  114. <AppName>Physical Records Management</AppName>
  115. <StepOut>22 May 2015</StepOut>
  116. <StepIn>22 May 2016</StepIn>
  117. <Requester>Per Roseth</Requester>
  118. <BusinessUnit>Upstream</BusinessUnit>
  119. <PortfolioManager>Junfeng Liang</PortfolioManager>
  120. </domain>
  121. <domain>
  122. <URL>sww-epw3.testing.com/Apps/ptprm</URL>
  123. <APEXID>102994</APEXID>
  124. <AppName>Physical Records Management</AppName>
  125. <StepOut>22 May 2015</StepOut>
  126. <StepIn>22 May 2016</StepIn>
  127. <Requester>Per Roseth</Requester>
  128. <BusinessUnit>Upstream</BusinessUnit>
  129. <PortfolioManager>Junfeng Liang</PortfolioManager>
  130. </domain>
  131. <domain>
  132. <URL>sww-epw3.testing.com/apps/doto</URL>
  133. <APEXID>141923</APEXID>
  134. <MyRequestID>7512579</MyRequestID>
  135. <AppName>Production Revenue Accounting-PRA</AppName>
  136. <StepOut>4 March 2016</StepOut>
  137. <StepIn>28 February 2017</StepIn>
  138. <Requester>PAUL.GEBBIE@testing.COM</Requester>
  139. <BusinessUnit>UI</BusinessUnit>
  140. <PortfolioManager>Per.Roseth@testing.com</PortfolioManager>
  141. <Remarks>On Board Application</Remarks>
  142. </domain>
  143. <domain>
  144. <URL>sww-epw3.testing.com/apps/seprm</URL>
  145. <APEXID></APEXID>
  146. <MyRequestID>7219068</MyRequestID>
  147. <AppName></AppName>
  148. <StepOut>9 December 2015</StepOut>
  149. <StepIn></StepIn>
  150. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  151. <BusinessUnit>UA</BusinessUnit>
  152. <PortfolioManager></PortfolioManager>
  153. <Remarks>Technical Assessment</Remarks>
  154. </domain>
  155. <domain>
  156. <URL>sww-epw3.testing.com/apps/gfprm</URL>
  157. <APEXID></APEXID>
  158. <MyRequestID>7219068</MyRequestID>
  159. <AppName></AppName>
  160. <StepOut>9 Dec 2015</StepOut>
  161. <StepIn></StepIn>
  162. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  163. <BusinessUnit>UA</BusinessUnit>
  164. <PortfolioManager></PortfolioManager>
  165. <Remarks>Technical Assessment</Remarks>
  166. </domain>
  167. </emie>
  168.  
  169. <emie><domain>
  170. <URL>sww-epw3.testing.com/apps/gfprm</URL>
  171. <APEXID></APEXID>
  172. <MyRequestID>7219068</MyRequestID>
  173. <AppName></AppName>
  174. <StepOut>9 Dec 2015</StepOut>
  175. <StepIn></StepIn>
  176. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  177. <BusinessUnit>UA</BusinessUnit>
  178. <PortfolioManager></PortfolioManager>
  179. <Remarks>Technical Assessment</Remarks> <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  180. </domain>
  181. <domain>
  182. <URL>sww-epw3.testing.com/apps/gfprm</URL>
  183. <APEXID></APEXID>
  184. <MyRequestID>7219068</MyRequestID>
  185. <AppName></AppName>
  186. <StepOut>9 Dec 2015</StepOut>
  187. <StepIn></StepIn>
  188. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  189. <BusinessUnit>UA</BusinessUnit>
  190. <PortfolioManager></PortfolioManager>
  191. <Remarks>Technical Assessment</Remarks> <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  192. </domain>
  193. <domain>
  194. <URL>sww-epw3.testing.com/apps/gfprm</URL>
  195. <APEXID></APEXID>
  196. <MyRequestID>7219068</MyRequestID>
  197. <AppName></AppName>
  198. <StepOut>9 Dec 2015</StepOut>
  199. <StepIn></StepIn>
  200. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  201. <BusinessUnit>UA</BusinessUnit>
  202. <PortfolioManager></PortfolioManager>
  203. <Remarks>Technical Assessment</Remarks> <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  204. </domain></emie>
  205.  
  206. <xsl:stylesheet version="1.0"
  207. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  208. xmlns:exsl="http://exslt.org/common"
  209. extension-element-prefixes="exsl">
  210. <xsl:output method="xml" omit-xml-declaration="yes" version="1.0" encoding="utf-8" indent="yes"/>
  211.  
  212. <!-- identity transform -->
  213. <xsl:template match="@*|node()">
  214. <xsl:copy>
  215. <xsl:apply-templates select="@*|node()"/>
  216. </xsl:copy>
  217. </xsl:template>
  218.  
  219. <xsl:template match="/rules">
  220. <xsl:variable name="site" select="emie/domain[1]/text()" />
  221. <!-- first pass -->
  222. <xsl:variable name="first-pass-rtf">
  223. <xsl:for-each select="emie/domain/path">
  224. <domain>
  225. <URL>
  226. <xsl:value-of select="concat($site, .)" />
  227. </URL>
  228. <xsl:call-template name="tokenize">
  229. <xsl:with-param name="text" select="@comment"/>
  230. </xsl:call-template>
  231. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  232. </domain>
  233. </xsl:for-each>
  234. </xsl:variable>
  235. <xsl:variable name="first-pass" select="exsl:node-set($first-pass-rtf)" />
  236. <!-- output -->
  237. <emie>
  238. <xsl:apply-templates select="$first-pass"/>
  239. </emie>
  240. </xsl:template>
  241.  
  242. <xsl:template name="tokenize">
  243. <xsl:param name="text"/>
  244. <xsl:param name="delimiter" select="';'"/>
  245. <xsl:variable name="token" select="substring-before(concat($text, $delimiter), $delimiter)" />
  246. <xsl:if test="$token">
  247. <xsl:element name="{substring-before($token, ':')}">
  248. <xsl:value-of select="substring-after($token, ':')"/>
  249. </xsl:element>
  250. </xsl:if>
  251. <xsl:if test="contains($text, $delimiter)">
  252. <!-- recursive call -->
  253. <xsl:call-template name="tokenize">
  254. <xsl:with-param name="text" select="substring-after($text, $delimiter)"/>
  255. </xsl:call-template>
  256. </xsl:if>
  257. </xsl:template>
  258.  
  259. </xsl:stylesheet>
  260.  
  261. <emie>
  262. <domain>
  263. <URL>sww-epw3.testing.com/Apps/dsprm</URL>
  264. <APEXID>102994</APEXID>
  265. <AppName>Physical Records Management</AppName>
  266. <StepOut>22 May 2015</StepOut>
  267. <StepIn>22 May 2016</StepIn>
  268. <Requester>Per Roseth</Requester>
  269. <BusinessUnit>Upstream</BusinessUnit>
  270. <PortfolioManager>Junfeng Liang</PortfolioManager>
  271. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  272. </domain>
  273. <domain>
  274. <URL>sww-epw3.testing.com/Apps/uaprm</URL>
  275. <APEXID>102994</APEXID>
  276. <AppName>Physical Records Management</AppName>
  277. <StepOut>22 May 2015</StepOut>
  278. <StepIn>22 May 2016</StepIn>
  279. <Requester>Per Roseth</Requester>
  280. <BusinessUnit>Upstream</BusinessUnit>
  281. <PortfolioManager>Junfeng Liang</PortfolioManager>
  282. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  283. </domain>
  284. <domain>
  285. <URL>sww-epw3.testing.com/Apps/ptprm</URL>
  286. <APEXID>102994</APEXID>
  287. <AppName>Physical Records Management</AppName>
  288. <StepOut>22 May 2015</StepOut>
  289. <StepIn>22 May 2016</StepIn>
  290. <Requester>Per Roseth</Requester>
  291. <BusinessUnit>Upstream</BusinessUnit>
  292. <PortfolioManager>Junfeng Liang</PortfolioManager>
  293. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  294. </domain>
  295. <domain>
  296. <URL>sww-epw3.testing.com/apps/doto</URL>
  297. <APEXID>141923</APEXID>
  298. <MyRequestID>7512579</MyRequestID>
  299. <AppName>Production Revenue Accounting-PRA</AppName>
  300. <StepOut>4 March 2016</StepOut>
  301. <StepIn>28 February 2017</StepIn>
  302. <Requester>PAUL.GEBBIE@testing.COM</Requester>
  303. <BusinessUnit>UI</BusinessUnit>
  304. <PortfolioManager>Per.Roseth@testing.com</PortfolioManager>
  305. <Remarks>On Board Application</Remarks>
  306. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  307. </domain>
  308. <domain>
  309. <URL>sww-epw3.testing.com/apps/seprm</URL>
  310. <APEXID/>
  311. <MyRequestID>7219068</MyRequestID>
  312. <AppName/>
  313. <StepOut>9 December 2015</StepOut>
  314. <StepIn/>
  315. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  316. <BusinessUnit>UA</BusinessUnit>
  317. <PortfolioManager/>
  318. <Remarks>Technical Assessment</Remarks>
  319. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  320. </domain>
  321. <domain>
  322. <URL>sww-epw3.testing.com/apps/gfprm</URL>
  323. <APEXID/>
  324. <MyRequestID>7219068</MyRequestID>
  325. <AppName/>
  326. <StepOut>9 Dec 2015</StepOut>
  327. <StepIn/>
  328. <Requester>SAIKAT.MANNA@testing.COM</Requester>
  329. <BusinessUnit>UA</BusinessUnit>
  330. <PortfolioManager/>
  331. <Remarks>Technical Assessment</Remarks>
  332. <APEX_DATA_PORTAL_URL>somesite</APEX_DATA_PORTAL_URL>
  333. </domain>
  334. </emie>
  335.  
  336. <xsl:template match="APEXID">
  337. <xsl:copy-of select="."/>
  338. <MyRequestID>7219068</MyRequestID>
  339. </xsl:template>
  340.  
  341. <xsl:template match="domain">
  342. <xsl:copy>
  343. <URL>
  344. <xsl:value-of select="URL" />
  345. </URL>
  346. <APEXID>
  347. <xsl:value-of select="APEXID" />
  348. </APEXID>
  349. <MyRequestID>
  350. <xsl:value-of select="MyRequestID" />
  351. </MyRequestID>
  352. <AppName>
  353. <xsl:value-of select="AppName" />
  354. </AppName>
  355. <StepOut>
  356. <xsl:value-of select="StepOut" />
  357. </StepOut>
  358. <StepIn>
  359. <xsl:value-of select="StepIn" />
  360. </StepIn>
  361. <Requester>
  362. <xsl:value-of select="Requester" />
  363. </Requester>
  364. <BusinessUnit>
  365. <xsl:value-of select="BusinessUnit" />
  366. </BusinessUnit>
  367. <PortfolioManager>
  368. <xsl:value-of select="PortfolioManager" />
  369. </PortfolioManager>
  370. <Remarks>
  371. <xsl:value-of select="Remarks" />
  372. </Remarks>
  373. <APEX_DATA_PORTAL_URL>
  374. <xsl:value-of select="APEX_DATA_PORTAL_URL" />
  375. </APEX_DATA_PORTAL_URL>
  376. </xsl:copy>
  377. </xsl:template>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement