Subject: [xsl] Not traverssing up from the for loop ?? From: Dipesh Khakhkhar <dkhakhkh@xxxxxxxxxxxxxxx> Date: Tue, 24 Jun 2003 18:26:04 -0400 |
Hi, I am not getting values properly inside for loop. Following is my xml file: ********************************************************************* <?xml version="1.0" encoding="UTF-8"?> <AEXDATAEXTRACT DTD_VERSION="2.2" EXTRACT_START_DATETIME="6/6/2003 2:39:24 PM" EXTRACT_TYPE="FULL"> <RESOURCE_TYPE GUID="{493435f7-3b17-4c4c-b07f-c23e7ab7781f}" NAME="Computer" SOURCE="IS" CREATED_DATE="4/23/2003 1:26:04 PM" MODIFIED_DATE="4/23/2003 1:26:04 PM" DELETED="0"> <RESOURCE GUID="{8BEBAAF0-5DFA-4833-A0BB-983E6DC33993}" NAME="ALTIRISTEST1" SOURCE="" SITE_CODE="CST-173.syr.edu" DOMAIN="CST-LAB" SYSTEM_TYPE="Win32" OS_NAME="Microsoft Windows XP" OS_TYPE="Professional" OS_VERSION="5.1" OS_REVISION="Service Pack 1" LAST_LOGON_USER="" LAST_LOGON_DOMAIN=""> <INVENTORY> <BASIC> <CLASS NAME="Client_Agent"> <OBJECT> TEST VALUE <ATTRIBUTE NAME="Agent Name">Altiris eXpress NS Client</ATTRIBUTE> <ATTRIBUTE NAME="Product Version">5.5.0.517</ATTRIBUTE> <ATTRIBUTE NAME="Build Number">517</ATTRIBUTE> <ATTRIBUTE NAME="Install Path">C:\Program Files\Altiris\eXpress\NS Client</ATTRIBUTE> </OBJECT> <OBJECT> <ATTRIBUTE NAME="Agent Name">Altiris eXpress Inventory Solution</ATTRIBUTE> <ATTRIBUTE NAME="Product Version">5.5.0.424</ATTRIBUTE> <ATTRIBUTE NAME="Build Number">424</ATTRIBUTE> <ATTRIBUTE NAME="Install Path">C:\Program Files\Altiris\eXpress\NS Client\Software Delivery\Software Packages\{01B54EB5-3679-4C73-9E10-E169D5A5EC59}</ATTRIBUTE> </OBJECT> <OBJECT> <ATTRIBUTE NAME="Agent Name">Altiris eXpress AClient</ATTRIBUTE> <ATTRIBUTE NAME="Product Version">5.6.72</ATTRIBUTE> <ATTRIBUTE NAME="Build Number">72</ATTRIBUTE> <ATTRIBUTE NAME="Install Path">C:\Program Files\Altiris\AClient\</ATTRIBUTE> </OBJECT> </CLASS> <CLASS NAME="Identification"> <OBJECT> <ATTRIBUTE NAME="GUID">{8BEBAAF0-5DFA-4833-A0BB-983E6DC33993}</ATTRIBUTE> <ATTRIBUTE NAME="Name">ALTIRISTEST1</ATTRIBUTE> <ATTRIBUTE NAME="Domain">FIDDOMRTLSLC</ATTRIBUTE> <ATTRIBUTE NAME="System Type">Win32</ATTRIBUTE> <ATTRIBUTE NAME="OS Name">Microsoft Windows XP</ATTRIBUTE> <ATTRIBUTE NAME="OS Type">Professional</ATTRIBUTE> <ATTRIBUTE NAME="OS Version">5.1</ATTRIBUTE> <ATTRIBUTE NAME="OS Revision">Service Pack 1</ATTRIBUTE> <ATTRIBUTE NAME="Last Logon User" NULL="FALSE" /> <ATTRIBUTE NAME="Last Logon Domain" NULL="FALSE" /> <ATTRIBUTE NAME="Client Date">5/16/2003 12:50:35 PM</ATTRIBUTE> <ATTRIBUTE NAME="OS Major Version">5</ATTRIBUTE> <ATTRIBUTE NAME="OS Minor Version">1</ATTRIBUTE> <ATTRIBUTE NAME="OS Build Number">2600</ATTRIBUTE> <ATTRIBUTE NAME="OS Primary Language">9</ATTRIBUTE> <ATTRIBUTE NAME="OS Sub Language">1</ATTRIBUTE> <ATTRIBUTE NAME="User Primary Language" NULL="TRUE" /> <ATTRIBUTE NAME="User Sub Language" NULL="TRUE" /> </OBJECT> </CLASS> </BASIC> </INVENTORY> </RESOURCE> </RESOURCE_TYPE> </AEXDATAEXTRACT> ********************************************************************* Following is the xsl file which i have written. ********************************************************************* <?xml version="1.0" encoding="ISO-8859-1" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <xsl:for-each select="/AEXDATAEXTRACT/RESOURCE_TYPE"> <xsl:value-of select="@GUID"/>`<xsl:value-of select="@NAME"/>`<xsl:value-of select="@DESCRIPTION"/>`<xsl:value-of select="@SOURCE"/>`<xsl:value-of select="@CREATED_DATE"/>`<xsl:value-of select="@MODIFIED_DATE"/>`<xsl:value-of select="@DELETED"/> <xsl:apply-templates select="RESOURCE"/> </xsl:for-each> </xsl:template><xsl:template match="RESOURCE">`<xsl:value-of select="@GUID"/>`<xsl:value-of select="//AEXDATAEXTRACT//RESOURCE_TYPE//@GUID"/>`<xsl:value-of select="@NAME"/>`<xsl:value-of select="@SOURCE"/>`<xsl:value-of select="@SITE_CODE"/>`<xsl:value-of select="@DOMAIN"/>`<xsl:value-of select="@SYSTEM_TYPE"/>`<xsl:value-of select="@OS_NAME"/>`<xsl:value-of select="@OS_TYPE"/>`<xsl:value-of select="@OS_VERSION"/>`<xsl:value-of select="@OS_REVISION"/>`<xsl:value-of select="@LAST_LOGON_USER"/>`<xsl:value-of select="@LAST_LOGON_DOMAIN"/> <xsl:apply-templates select="INVENTORY"/> <xsl:text> ``````</xsl:text> </xsl:template> <xsl:template match="INVENTORY">`<xsl:value-of select="generate-id(.)"/>`<xsl:value-of select="..//@GUID"/><xsl:apply-templates select="BASIC"/></xsl:template> <xsl:template match="BASIC">`<xsl:value-of select="generate-id(.)"/>`<xsl:value-of select="generate-id(..)"/> <xsl:apply-templates select="CLASS"/> </xsl:template> <xsl:template match="CLASS">`<xsl:value-of select="@NAME"/>`<xsl:value-of select="generate-id(.)"/>`<xsl:value-of select="generate-id(..)"/><xsl:for-each select="OBJECT"><xsl:for-each select="ATTRIBUTE">`<xsl:value-of select="."/></xsl:for-each> <xsl:text> ```````````````````````<!-- HERE I AM NOT GETTING VALUE --> `<xsl:value-of select="generate-id(..//..//..)"/>`<xsl:value-of select="generate-id(..//)"/></xsl:text></xsl:for-each> </xsl:template> </xsl:stylesheet> ********************************************************************* I am getting output like this: ******************************************************************** {493435f7-3b17-4c4c-b07f-c23e7ab7781f}`Computer``IS`4/23/2003 1:26:04 PM`4/23/2003 1:26:04 PM`0`{8BEBAAF0-5DFA-4833-A0BB-983E6DC33993}`{493435f7-3b17-4c4c-b07f-c23e7ab77 81f}`ALTIRISTEST1``firgslc756win.fmr.com`FIDDOMRTLSLC`Win32`Microsoft Windows XP`Professional`5.1`Service Pack 1```ID30`{8BEBAAF0-5DFA-4833-A0BB-983E6DC33993}`ID32`ID30`Client_Agent`ID34`ID 32`Altiris eXpress NS Client`5.5.0.517`517`C:\Program Files\Altiris\eXpress\NS Client ``````````````````````````Altiris eXpress Inventory Solution`5.5.0.424`424`C:\Program Files\Altiris\eXpress\NS Client\Software Delivery\Software Packages\{01B54EB5-3679-4C73-9E10-E169D5A5EC59} ``````````````````````````(HERE I AM EXPECTING GENERATED ID OF CLASS AND ITS PARENT TAG)Altiris eXpress AClient`5.6.72`72`C:\Program Files\Altiris\AClient\ ``````````````````````````Identification`ID95`ID32`{8BEBAAF0-5DFA-4833-A0BB-98 3E6DC33993}`ALTIRISTEST1`FIDDOMRTLSLC`Win32`Microsoft Windows XP`Professional`5.1`Service Pack 1```5/16/2003 12:50:35 PM`5`1`2600`9`1`` ````````````````````````` `````` ********************************************************************** I AM TYRING TO GET GENERATED ID OF CLASS AND ITS PARENT TAG i.e. BASIC tag. But i m not getting. Can somebody please tell me where i m getting wrong. I tried using "..//..//.." and "..//.." and even "..". I am trying to link each object record of the class to its parent but i m not getting sucess here. Thanks in the anticipation that i will get some solution. Regards Dipesh XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Unescaping < and >, bryan | Thread | RE: [xsl] Not traverssing up from t, Jarno . Elovirta |
RE: [xsl] Looping in XSLT(old quest, Liu Shuai | Date | Re: [xsl] Unescaping < and >, Wendell Piez |
Month |