Subject: RE: [xsl] Newbie: Excel XML XSL From: Matts Isuls <matts.isuls@xxxxxxxxxxx> Date: Thu, 14 Feb 2002 16:05:14 +0200 |
Thanks Thomas. It works great. Have successfully beeen able to extract other data also. I wouldn't have made it without your help. tnx, Matts Thomas B. Passin (13.2.2002 17:35): >Matt, > >This can definitely be confusing. Here is how to sort it out for your >example. > >First, the top level element contains a default namespace: > >xmlns="urn:schemas-microsoft-com:office:spreadsheet" > >This is also the namespace declared for the "ss" prefix. > >Second, the element that contains the element you are interested in, itself >has a default naemspace: > ><DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> > >So the Workbook element is in the >"urn:schemas-microsoft-com:office:spreadsheet" namespace, which is the same >as the "ss" namespace, and the Document Properties element is in the >"urn:schemas-microsoft-com:office:office namespace. Furthermore, the Author >element is in the default namespace of its parent element (since it does not >have a prefix). > >To find these elements in an xpath expression, you have to use their >namespace, which you do by using a prefix bound to it. But there is no >prefix for the default namespace in the xml source document, so what do you >do? Simple, just supply your own in the stylesheet. The prefixes you use >do n0t have to match those used in the source document, because the xslt >processor uses the actual namespaces, not their prefixes, to perform >matches. > >For instance, let's use "oo" for the office:office one, and "ss" for the >office:spreadsheet one: > ><xsl:stylesheet version="1.0" >xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" >xmlns:oo="urn:schemas-microsoft-com:office:office"> > >Now the path to your Author element is: > >Author: <xsl:value-of >select="/ss:Workbook/oo:DocumentProperties/oo:Author"/> > >By test, this does extract the value of the Author, giving: > >Author: Paul Cornell > >Cheers, > >Tom p > > >[Matts Isuls] >> >> I'm a total newbie and have problems with an Excel XP (2002) XML file. >> Below you see a first XSL test of mine. >> >> I only want to display the author. The HTML displays fine (IE6) >> but not the Author form the XML file. >> >> I get real confused with all the XML namespace stuff. >> Any help is appreciated. >> >> -XSL----------------------------------- >> >> <?xml version="1.0" encoding="ISO-8859-1"?> >> <xsl:stylesheet version="1.0" >> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> >> <xsl:output indent="yes"/> >> <xsl:template match="/"> >> <html><head><title>Excel worksheet</title> >> </head><body> >> <h1>Excel worksheet</h1> >> Author: <xsl:value-of select="Workbook/DocumentProperties/Author"/> >> </body></html> >> </xsl:template> >> </xsl:stylesheet> >> >> -/XSL----------------------------------- >> >> >> -XML----------------------------------- >> >> <?xml version="1.0" encoding="ISO-8859-1"?> >> <?xml-stylesheet type="text/xsl" href="book2.xsl"?> >> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" >> xmlns:o="urn:schemas-microsoft-com:office:office" >> xmlns:x="urn:schemas-microsoft-com:office:excel" >> xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" >> xmlns:html="http://www.w3.org/TR/REC-html40"> >> <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office"> >> <Author>Paul Cornell</Author> >> <LastAuthor>Paul Cornell</LastAuthor> >> <Created>2001-08-02T16:08:21Z</Created> >> <Company>Microsoft Corporation</Company> >> <Version>10.2625</Version> >> </DocumentProperties> >> <OfficeDocumentSettings >xmlns="urn:schemas-microsoft-com:office:office"> >> <DownloadComponents/> >> <LocationOfComponents HRef="file:///\\OfficeXP\CD1\"/> >> </OfficeDocumentSettings> >> <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> >> <WindowHeight>6135</WindowHeight> >> <WindowWidth>8445</WindowWidth> >> <WindowTopX>240</WindowTopX> >> <WindowTopY>120</WindowTopY> >> <ProtectStructure>False</ProtectStructure> >> <ProtectWindows>False</ProtectWindows> >> </ExcelWorkbook> >> <Styles> >> <Style ss:ID="Default" ss:Name="Normal"> >> <Alignment ss:Vertical="Bottom"/> >> <Borders/> >> <Font/> >> <Interior/> >> <NumberFormat/> >> <Protection/> >> </Style> >> </Styles> >> <!-- ** snip ** --> >> </Workbook> >> >> -/XML----------------------------------- >> >> >> > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Newbie: Excel XML XSL, Thomas B. Passin | Thread | [xsl] regd. Validating XML document, suresh . |
[xsl] a rather stupid question abou, 林 子芯 | Date | Re: [xsl] Elements with Mixed conte, Jeni Tennison |
Month |