1

目的のファイルを生成するために、XSLT を使用して.odsファイル ( zip のファイル)を変換しようとしています。content.xml.xml

XSLT は要素の「固定」位置を使用してコンテンツを取得しますが、私の.odsファイルには多くの空白フィールドがあり、それらを XSLT でカウントする方法がわかりません。

content.xmlさらに、これらの空白(空の)セルが保存されるかどうかを調べるために、いくつかの実験を行いました。

私はcontent.xml次のようなものを見つけました:

<table:table-column table:style-name="co1" table:number-columns-repeated="16384" table:default-cell-style-name="ce1"/>
<table:table-row table:number-rows-repeated="1048576" table:style-name="ro1">

これらの値は、空のセルまたはファイル内の値の実際の場所を何らかの方法で (たとえば、数学的な計算で) 表しているの.odsでしょうか?

より明確なアイデアを得るために、ここでドキュメントを共有します

.ods例:

ここに画像の説明を入力

これは私のXSLTファイルです:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:fn="http://www.w3.org/2005/xpath-functions" 
xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" 
xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" 
xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" 
xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" 
xmlns:espd="urn:com:grow:espd:02.00.00" xmlns:cac="urn:X-test:UBL:Pre-
award:CommonAggregate" xmlns:cbc="urn:X-test:UBL:Pre-award:CommonBasic" 


<xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>

<xsl:template match="office:spreadsheet/table:table">
<xsl:variable name="test" select="table:table-row/table:table-cell"/>
<p><xsl:value-of select="$test/text:p[1]"/></p>
</xsl:template>

出力は次のとおりです。

ブラク ブラク5 ブラク6 ブラク2 ブラク3 ブラク4 ブラク7 ブラク9 ブラク8 ブラク10

質問:

に変換を適用してセルから単一の値を取得する方法はcontent.xml?
(例: セルだけに到達する方法はD4?)

4

1 に答える 1