[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue appserver/samples/Makefile common/utils/xm...
From: |
Jan Ischebeck |
Subject: |
gnue appserver/samples/Makefile common/utils/xm... |
Date: |
Wed, 10 Jul 2002 16:29:59 -0400 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Jan Ischebeck <address@hidden> 02/07/10 16:29:59
Modified files:
appserver/samples: Makefile
common/utils/xml2sql: pgsql.xsl
Added files:
appserver/samples: sample.gsd
Log message:
allow pgsql.xsl to transform .gsd files, add an sample.gsd as
representation of
the sample database tables for appserver, add a data section to gsd
files.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/samples/sample.gsd?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/samples/Makefile.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/utils/xml2sql/pgsql.xsl.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
Patches:
Index: gnue/appserver/samples/Makefile
diff -c gnue/appserver/samples/Makefile:1.1 gnue/appserver/samples/Makefile:1.2
*** gnue/appserver/samples/Makefile:1.1 Tue Jun 25 18:09:57 2002
--- gnue/appserver/samples/Makefile Wed Jul 10 16:29:59 2002
***************
*** 2,8 ****
# at the moment it requires the sablotron XSLT processor
xsltcmd = sabcmd
xslpath = ../../common/utils/xml2sql/
! src = sample.xml
all: mysql pgsql mssql sybase
--- 2,8 ----
# at the moment it requires the sablotron XSLT processor
xsltcmd = sabcmd
xslpath = ../../common/utils/xml2sql/
! src = sample.gsd
all: mysql pgsql mssql sybase
***************
*** 23,32 ****
${xsltcmd} ${xslpath}sybase.xsl ${src} sybase.xml
${xsltcmd} ${xslpath}strip.command.xsl sybase.xml sybase.sql
clean:
! rm mssql.xml
! rm mysql.xml
! rm pgsql.xml
! rm sybase.xml
! rm *.sql
--- 23,32 ----
${xsltcmd} ${xslpath}sybase.xsl ${src} sybase.xml
${xsltcmd} ${xslpath}strip.command.xsl sybase.xml sybase.sql
+ setup-pgsql: pgsql
+ # createdb gnue
+ psql gnue < pgsql.sql
+ rm pgsql.sql pgsql.xml
clean:
! rm mssql.xml mysql.xml pgsql.xml sybase.xml *.sql
Index: gnue/common/utils/xml2sql/pgsql.xsl
diff -c gnue/common/utils/xml2sql/pgsql.xsl:1.1
gnue/common/utils/xml2sql/pgsql.xsl:1.2
*** gnue/common/utils/xml2sql/pgsql.xsl:1.1 Tue Jun 25 18:09:57 2002
--- gnue/common/utils/xml2sql/pgsql.xsl Wed Jul 10 16:29:59 2002
***************
*** 1,12 ****
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
! <xsl:template match="/"><sql>
<xsl:for-each select="tables/table">
<xsl:call-template name="doSequence"/>
<xsl:call-template name="doTable"/>
<xsl:call-template name="doPrimaryKey"><xsl:with-param
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
<xsl:call-template name="doIndexes"><xsl:with-param
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
<xsl:call-template name="doConstraints"><xsl:with-param
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
</xsl:for-each></sql>
</xsl:template>
--- 1,15 ----
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
! <xsl:template match="/schema"><sql>
<xsl:for-each select="tables/table">
<xsl:call-template name="doSequence"/>
<xsl:call-template name="doTable"/>
<xsl:call-template name="doPrimaryKey"><xsl:with-param
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
<xsl:call-template name="doIndexes"><xsl:with-param
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
<xsl:call-template name="doConstraints"><xsl:with-param
name="table"><xsl:value-of select="@name"/></xsl:with-param></xsl:call-template>
+ </xsl:for-each>
+ <xsl:for-each select="data/tabledata">
+ <xsl:call-template name="doTableData"/>
</xsl:for-each></sql>
</xsl:template>
***************
*** 109,112 ****
--- 112,121 ----
</xsl:for-each>
</xsl:if>
</xsl:template>
+
+ <xsl:template name="doTableData"><xsl:variable name="tableName"
select="@tablename"/>
+ <xsl:for-each select="rows/row"> <command>Insert into <xsl:value-of
select="$tableName"/> values (<xsl:variable name="numValues"
select="count(value)"/><xsl:for-each select="value"><xsl:value-of
select="."/><xsl:if test="position() < $numValues"><xsl:text>,
</xsl:text></xsl:if></xsl:for-each>);</command>
+ </xsl:for-each>
+ </xsl:template>
+
</xsl:stylesheet>
- gnue appserver/samples/Makefile common/utils/xm...,
Jan Ischebeck <=