데이터베이스와 관련된 XML을 가지고 있으며 데이터베이스를 문서화하기 위해 PDF를 생성해야합니다. XSLT를 PDF로 변환하기 위해 FOP를 사용하고 있습니다.XSLT에서 데이터베이스를 문서화하기 위해 PDF를 생성하십시오.
XML :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<sql-catalog xmlns="http://www.abc.com">
<schemas>
<schema name="abc>
<tables>
<table name="tab123" degree="1" type="TABLE" rows="144">
<columns>
<column name="asd" nullable="true" order="1" sqlType="CHARACTER VARYING" sqlLength="255" fixedLength="2"/>
<column name="pqr" nullable="true" order="2" sqlType="CHARACTER VARYING" sqlLength="255" fixedLength="2"/>
</columns>
<constraints/>
<datafiles>
<datafile href="abc.txt" checksum="6ba3a161d5" size="12354" format="FIXED" valid="true" recordTerminator="
" checksumtype="MD5" rows="905"/>
</datafiles>
</table>
</tables>
</schema>
</schemas>
</sql-catalog>
나는 테이블 이름, 열 및 열 이름의 수를 표시해야합니다. XSLT에 다음을 작성했습니다.
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="2.0" xmlns:ex="http://exslt.org/dates-and-times" extension-element-prefixes="ex" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:ora="http://www.oracle.com/XSL/Transform/java/" xmlns:xdofo="http://xmlns.oracle.com/oxp/fo/extensions" xmlns:xdoxslt="http://www.oracle.com/XSL/Transform/java/oracle.apps.xdo.template.rtf.XSLTFunctions" xmlns:xdoxliff="urn:oasis:names:tc:xliff:document:1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:cat="http://www.abc.com">
<xsl:output method="xml" encoding="ISO-8859-1"/>
<xsl:template match="cat:sql-catalog">
<fo:root>
<fo:layout-master-set>
<fo:simple-page-master master-name="A4" page-height="297mm" page-width="210mm" margin-left="2cm" margin-right="2cm" margin-top="2.0cm" margin-bottom="1.0cm">
<fo:region-body/>
<fo:region-after extent="1cm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
<fo:static-content flow-name="xsl-region-after" font-size="8pt">
<fo:block text-align="right">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block font-weight="bold" font-size="8pt" space-after="0.5cm">
<xsl:value-of select="cat:schemas/schema/tables/table/@name" />
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
</xsl:template>
</xsl:stylesheet>
코드에서 속성에있는 테이블의 이름을 표시하려고했지만 작동하지 않는 것 같습니다. 아무도 내가 여기서 잘못 가고있는 곳을 말해 줄 수 있습니까? 또한 표의 열 수를 계산하는 방법도 있습니다.
Thanks Eero. 그것으로 문제가 해결됩니다. 나는 이것에 내 머리를 찼다 :) –
다행 내가 도울 수있어! –