Connecting Tech Pros Worldwide Forums | Help | Site Map

Select element value based on attribute values in XML.

Newbie
 
Join Date: Mar 2009
Posts: 2
#1: Mar 24 '09
I am applying XSLT to WSDL to generate html pages.

now, as WSDL is not having comprehensive details, i am adding XML documentation (.NET) as well in XSLT.
like this..
Expand|Select|Wrap|Line Numbers
  1. <xsl:variable name="ddoc" select="document('CustomerCare.ManageMeterReads.ServiceContracts.xml')" />
Here is the XML documentation....
Expand|Select|Wrap|Line Numbers
  1. <?xml version="1.0"?>
  2. <doc>
  3. <assembly>
  4. <name>CustomerCare.ManageMeterReads.ServiceContracts</name>
  5. </assembly>
  6. <members>
  7. <member name="T:abc.pqr.test.CustomerCare.ManageMeterReads.ServiceContracts.CommonEntities.EmployeeID">
  8. <summary>
  9. Holds the configuration details for each Service.
  10. </summary>
  11. </member>
  12. </members>
  13. </doc>

WSDL is having element types e.g. EmployeeID ( i am able to extract the element types from XSDL, storing it in $type-local-name) however the description of that element is in above xml. my requirement is to get the "summary" element from above xml based on the member/name attribute.

WSDL just contain "EmployeeID" not full value "T:abc.pqr.test.CustomerCare.ManageMeterReads.Serv iceContracts.CommonEntities.EmployeeID".

I tried this... but not working...
Expand|Select|Wrap|Line Numbers
  1. <xsl:value-of select="$ddoc/doc/members/member[contains($ddoc/doc/members/member/@name,$type-local-name)]/summary"/>
Moderator
 
Join Date: Mar 2006
Posts: 1,103
#2: Mar 24 '09

re: Select element value based on attribute values in XML.


Look for the name attribute at the node you currently are condition testing.
[contains(@name,$type-local-name)]
Newbie
 
Join Date: Mar 2009
Posts: 2
#3: Mar 25 '09

re: Select element value based on attribute values in XML.


I tried this...
<xsl:value-of select="$ddoc/doc/members/member[@name='contains(@name,$type-local-name']/summary"/>

however its not showing any results.

i want to extract summary element in $ddoc where attribute "name" is having value that contains $type-local-name'
Dormilich's Avatar
Moderator
 
Join Date: Aug 2008
Location: Leipzig, Germany
Posts: 3,642
#4: Mar 25 '09

re: Select element value based on attribute values in XML.


I think jkmyoung was rather proposing this
Expand|Select|Wrap|Line Numbers
  1. <xsl:value-of select="$ddoc/doc/members/member[contains(@name,$type-local-name)]/summary"/>
Reply