Re: [xsl] XPath Against OpenXML and OpenOffice Spreadsheets?

Subject: Re: [xsl] XPath Against OpenXML and OpenOffice Spreadsheets?
From: "Philip Fearon" <pgfearo@xxxxxxxxxxxxxx>
Date: Wed, 4 Jun 2008 09:22:48 +0100

The .RELs bit is how OOXML maintains references between different XML
documents and other file-types in the single compressed ZIP package
file. For example each XML worksheet will be saved as a separate
document, but .RELS allows links between the two worksheets to be

There's an open source tool called Open XML Package Explorer that is
.RELS aware that may help if you need to traverse related documents.
Commercial XML Suites now have this capability too.

If you're just looking at a single ODF or OOXML worksheet however,
then a simple ZIP-Package compatible XPath tool like SketchPath may
help to generate the possibly lengthy XPath expressions you will need.

Also, it would be useful if XSLT 2.0 processor implementations
supported fn:document() functions containing URLs starting with
zip:/// but I'm not sure which ones do.

Phil Fearon

So, you only need to bother with .RELS if your data is spread across
more than one document
> Date: Tue, 3 Jun 2008 15:34:19 -0500
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> From: "Ronnie Royston" <rhroyston@xxxxxxxxx>
> Subject: XPath Against OpenXML and OpenOffice Spreadsheets?
> Message-ID: <373f63570806031334k3c713e6j417e37acd158b046@xxxxxxxxxxxxxx>
> All I need to do is retrieve the string value of every cell of column
> "A" whose string length is greater than 20 characters in length.
> Anyone know how to use XPath to retrieve this from an Excel 2007 file?
>  What about getting these values from's CALC
> spreadsheet via XPath?
> Regarding the OpenXML - I've been all over MSDN and it appears to
> require an understanding of .rels files and convoluted mappings
> between different sub-files???  I know I can use ADO and Microsoft's
> Jet Provider to read from an Excel file (and just about anything else)
> but I thought that using pure XML technologies would be much cooler.
> Is XQuery a better fit for this task?
> Even a hint of where to go and look would be appreciated.
> - Ronnie
> ------------------------------

Current Thread