Subject: AW: [xsl] XSL 1.1 -> Asking for an attribut namespace From: news@xxxxxxxxxxx Date: Thu, 30 Mar 2006 15:58:02 +0200 |
Thanks all, it works fine! If I want to get the attributes of <Data/> I should use an propper x-path. $ListData/Spalten/Spalte[$i]/Data/@fo:* instead of $ListData/Spalten/Spalte[$i]/@fo:* doh... -----Urspr|ngliche Nachricht----- Von: news@xxxxxxxxxxx [mailto:news@xxxxxxxxxxx] Gesendet: Donnerstag, 30. Mdrz 2006 08:28 An: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx' Betreff: AW: [xsl] XSL 1.1 -> Asking for an attribut namespace "name() should return the lexical QName of the attribute, that is 'fo:text-align'" I checked this with the Oxygen Debugger. The returned string ist just "text-align" :(. May that have something to do with my namespace declarations in the stylesheets? <xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:saxon="http://icl.com/saxon" extension-element-prefixes="saxon"> -----Urspr|ngliche Nachricht----- Von: Michael Kay [mailto:mike@xxxxxxxxxxxx] Gesendet: Mittwoch, 29. Mdrz 2006 17:10 An: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Betreff: RE: [xsl] XSL 1.1 -> Asking for an attribut namespace name() should return the lexical QName of the attribute, that is "fo:text-align". However, you don't want to be testing namespace prefixes, because users are allowed to choose any prefix they like. The construct you want is <xsl:copy-of select="..../@fo:*"/> No need for the for-each and the xsl:if. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: news@xxxxxxxxxxx [mailto:news@xxxxxxxxxxx] > Sent: 29 March 2006 15:39 > To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx' > Subject: [xsl] XSL 1.1 -> Asking for an attribut namespace > > Hello List, > > I've a XML: > <?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?> > <Spalten xmlns:fo="http://www.w3.org/1999/XSL/Format"> > <Datenursprung>//SVERLAUF</Datenursprung> > <Spalte anzahl="1" breite-in-prozent="3" text-align="right"> > <Titel fix="true"></Titel> > <Data fix="true" fo:text-align="right">position()</Data> > </Spalte> > </Spalten> > > The problem I have comes when I try to copy all attributes of > the <Data/> > node into my result dataset. I want to copy each attribut as > long as it has > a namespace of "fo:". > > <xsl:for-each select="$ListData/Spalten/Spalte[$i]/@*"> > <xsl:if test="starts-with(name(), 'fo:')"> > <xsl:copy-of select="."/> > </xsl:if> > </xsl:for-each> > > name() always gives me back the correct name, but without the > namespace of > the attribut. I want to filter ther attributes this way since > I dont want to > have attributes like "anzahl" in my FO result dataset. > > Doeas anybody hase a idea how I can solve my probem? > Thanks & with best regards, Jan
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
AW: [xsl] XSL 1.1 -> Asking for an , news | Thread | [xsl] Preserve-space isn't, Trevor Nicholls |
RE: [xsl] XSL 1.1 -> Asking for an , Michael Kay | Date | Re: [xsl] XSL template "namespace" , Wendell Piez |
Month |