[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Xpath/XSLT 2.0 & Schema Question
Hi The element test "element(*, $type)" in your code matches an *instance* element node whose type definition is of $type or derived from $type. It cannot be used to retrieve the corresponding type definition in your schema. If you need to make use of schema information, you might take a look at the library here http://www.ibm.com/developerworks/library/x-schemanode/. There is a function xsdf:get-global-type-def() in the library that can be used to retrieve the type definition with a given type name from your schema. Lisa -----Original Message----- From: Luke Stedman [mailto:luke.stedman@xxxxxxxxx] Sent: Thursday, April 01, 2010 8:59 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Xpath/XSLT 2.0 & Schema Question Apologies in advance for what is probably a very simple/basic/stupid question. I have just started using XSL 2.0, having had enough of the restrictions of XSL 1.0, and am trying to write a XSL that is schema aware. I would like to process an XML file and add information/process something based on the schema, for example adding class information to XML output or processing an element in a specific way if we want a console script or Python script output. I have tried for the last couple of hours to get the code working but seem to be unable to, a small snippet of code is below... <xsl:template match="*[@name and @xsi:type]"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:attribute name="action" select="'new'"/> <xsl:variable name="name" select="name(.)"/> <xsl:variable name="type" select="current()/@xsi:type"/> <xsl:variable name="object" select="element(*, $type)"/> <!-- I want to get the relevant schema entry here --> <xsl:message> ++++ <xsl:value-of select="current()/@name"/> <xsl:variable name="type" select="current()/@xsi:type"/> <xsl:value-of select="$object//base"/> ++++ </xsl:message> <xsl:apply-templates/> </xsl:copy> </xsl:template> Am I misunderstanding the functionality or doing something wrong? If I have missed a relevant post on the list or obvious link then please point me in its direction, I was unable to find one using a search. Apologies again for any stupid comments/expectations. Luke
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|