[dna-commits] DNA SVN: r1447 - in trunk/extensions: dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl and 8 other directories.

dna-commits at lists.jboss.org dna-commits at lists.jboss.org
Wed Dec 16 15:44:19 EST 2009


Author: blafond
Date: 2009-12-16 15:44:18 -0500 (Wed, 16 Dec 2009)
New Revision: 1447

Added:
   trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
Removed:
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
Modified:
   trunk/extensions/dna-sequencer-cnd/src/test/resources/StandardDdl.cnd
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/StandardDdlParser.java
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdlParser.java
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlLexicon.java
   trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlParser.java
   trunk/extensions/dna-sequencer-ddl/src/test/java/org/jboss/dna/sequencer/ddl/DdlParsersTest.java
   trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_1.ddl
   trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_2.ddl
   trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_3.ddl
   trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_4.ddl
Log:
DNA-49 fixes to ddl parser and sequencer framework resulting from integration testing. Mostly CND file corrections/adjustments.

Modified: trunk/extensions/dna-sequencer-cnd/src/test/resources/StandardDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-cnd/src/test/resources/StandardDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-cnd/src/test/resources/StandardDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -28,7 +28,7 @@
 <jcr='http://www.jcp.org/jcr/1.0'>
 <nt='http://www.jcp.org/jcr/nt/1.0'>
 <mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
+<ddl='http://www.jboss.org/dna/ddl/1.0'>
 
 
 //------------------------------------------------------------------------------

Modified: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/StandardDdlParser.java
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/StandardDdlParser.java	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/StandardDdlParser.java	2009-12-16 20:44:18 UTC (rev 1447)
@@ -142,8 +142,10 @@
      * @param tokens the token stream containing the tokenized DDL content. may not be null
      */
     public void registerWords( DdlTokenStream tokens ) {
+        CheckArg.isNotNull(tokens, "tokens");
+        
         this.tokens = tokens;
-
+        
         registerKeyWords(SQL_92_RESERVED_WORDS);
 
         registerStatementStartPhrase(SQL_92_ALL_PHRASES);
@@ -220,8 +222,8 @@
      */
     public boolean parse( String ddl,
                           AstNode rootNode ) throws ParsingException {
-        assert ddl != null;
-        assert rootNode != null;
+        CheckArg.isNotNull(ddl, "ddl");
+        CheckArg.isNotNull(rootNode, "rootNode");
 
         tokens = new DdlTokenStream(ddl, DdlTokenStream.ddlTokenizer(false), false);
 
@@ -244,8 +246,8 @@
      */
     public boolean parse( DdlTokenStream tokens,
                           AstNode rootNode ) throws ParsingException {
-        assert tokens != null;
-        assert rootNode != null;
+        CheckArg.isNotNull(tokens, "tokens");
+        CheckArg.isNotNull(rootNode, "rootNode");
 
         testPrint("\n== >> StandardDdlParser.parse() PARSING STARTED: ");
 
@@ -1758,10 +1760,10 @@
                                                String name,
                                                AstNode parentNode,
                                                Name mixinType ) {
-        assert tokens != null;
-        assert name != null;
-        assert parentNode != null;
-        assert mixinType != null;
+        CheckArg.isNotNull(tokens, "tokens");
+        CheckArg.isNotNull(name, "name");
+        CheckArg.isNotNull(parentNode, "parentNode");
+        CheckArg.isNotNull(mixinType, "mixinType");
 
         AstNode node = nodeFactory().node(name, parentNode, mixinType);
 
@@ -1783,10 +1785,10 @@
                                       String[] stmt_start_phrase,
                                       AstNode parentNode,
                                       Name mixinType ) {
-        assert tokens != null;
-        assert stmt_start_phrase != null;
-        assert parentNode != null;
-        assert mixinType != null;
+        CheckArg.isNotNull(tokens, "tokens");
+        CheckArg.isNotNull(stmt_start_phrase, "stmt_start_phrase");
+        CheckArg.isNotNull(parentNode, "parentNode");
+        CheckArg.isNotNull(mixinType, "mixinType");
 
         markStartOfStatement(tokens);
         tokens.consume(stmt_start_phrase);

Deleted: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -1,72 +0,0 @@
-/*
- * JBoss DNA (http://www.jboss.org/dna)
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * See the AUTHORS.txt file in the distribution for a full listing of 
- * individual contributors. 
- *
- * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
- * is licensed to you under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * JBoss DNA is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
- 
- //------------------------------------------------------------------------------
-// N A M E S P A C E S
-//------------------------------------------------------------------------------
-<jcr='http://www.jcp.org/jcr/1.0'>
-<nt='http://www.jcp.org/jcr/nt/1.0'>
-<mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
-<derbyddl='http://jboss.org/dna/ddl/derby/1.0'>
-
-// =============================================================================
-// OPERANDS
-// =============================================================================
-[derbyddl:functionOperand]  < ddl:operand abstract
-[derbyddl:indexOperand]     < ddl:operand abstract
-[derbyddl:procedureOperand] < ddl:operand abstract
-[derbyddl:roleOperand]      < ddl:operand abstract
-[derbyddl:synonymOperand]   < ddl:operand abstract
-[derbyddl:triggerOperand]   < ddl:operand abstract
-
-// =============================================================================
-// COLUMN
-// =============================================================================
-[derbyddl:columnDefinition] > ddl:columnDefinition mixin
-  - derbyddl:dropDefault (boolean)
-  
-// =============================================================================
-// CREATE STATEMENTS
-// =============================================================================
-[derbyddl:createFunctionStatement]     > ddl:creatable, ddl:statement, derbyddl:clusterOperand mixin
-[derbyddl:createIndex]                 > ddl:statement, ddl:creatable, derbyddl:indexOperand mixin
-  - derbyddl:tableName (string) mandatory
-  - derbyddl:unique (boolean)
-  + * (ddl:columnReference) = ddl:columnReference multiple
-[derbyddl:createProcedureStatement]    > ddl:creatable, ddl:statement, derbyddl:procedureOperand mixin
-[derbyddl:createRoleStatement]         > ddl:creatable, ddl:statement, derbyddl:roleOperand mixin
-[derbyddl:createSynonymStatement]      > ddl:creatable, ddl:statement, derbyddl:synonymOperand mixin
-[derbyddl:createTriggerStatement]      > ddl:creatable, ddl:statement, derbyddl:triggerOperand mixin
-
-
-// =============================================================================
-// DROP STATEMENTS
-// =============================================================================
-[derbyddl:dropFunctionStatement]    > ddl:droppable, derbyddl:functionOperand mixin
-[derbyddl:dropIndexStatement]       > ddl:droppable, derbyddl:indexOperand mixin
-[derbyddl:dropProcedureStatement]   > ddl:droppable, derbyddl:procedureOperand mixin
-[derbyddl:dropRoleStatement]        > ddl:droppable, derbyddl:roleOperand mixin
-[derbyddl:dropSynonymStatement]     > ddl:droppable, derbyddl:synonymOperand mixin
-[derbyddl:dropTriggerStatement]     > ddl:droppable, derbyddl:triggerOperand mixin

Deleted: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -1,201 +0,0 @@
-/*
- * JBoss DNA (http://www.jboss.org/dna)
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * See the AUTHORS.txt file in the distribution for a full listing of 
- * individual contributors. 
- *
- * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
- * is licensed to you under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * JBoss DNA is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
- 
- //------------------------------------------------------------------------------
-// N A M E S P A C E S
-//------------------------------------------------------------------------------
-<jcr='http://www.jcp.org/jcr/1.0'>
-<nt='http://www.jcp.org/jcr/nt/1.0'>
-<mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
-<oracleddl='http://jboss.org/dna/ddl/oracle/1.0'>
-
-// =============================================================================
-// OPERANDS
-// =============================================================================
-[oracleddl:clusterOperand]      < ddl:operand abstract
-[oracleddl:contextOperand]      < ddl:operand abstract
-[oracleddl:controlfileOperand]  < ddl:operand abstract
-[oracleddl:databaseOperand]     < ddl:operand abstract
-[oracleddl:dimensionOperand]    < ddl:operand abstract
-[oracleddl:directoryOperand]    < ddl:operand abstract
-[oracleddl:diskgroupOperand]    < ddl:operand abstract
-[oracleddl:functionOperand]     < ddl:operand abstract
-[oracleddl:indexOperand]        < ddl:operand abstract
-[oracleddl:indextypeOperand]    < ddl:operand abstract
-[oracleddl:javaOperand]         < ddl:operand abstract
-[oracleddl:libraryOperand]      < ddl:operand abstract
-[oracleddl:materializedOperand] < ddl:operand abstract
-[oracleddl:operatorOperand]     < ddl:operand abstract
-[oracleddl:outlineOperand]      < ddl:operand abstract
-[oracleddl:packageOperand]      < ddl:operand abstract
-[oracleddl:pfileOperand]        < ddl:operand abstract
-[oracleddl:procedureOperand]    < ddl:operand abstract
-[oracleddl:profileOperand]      < ddl:operand abstract
-[oracleddl:resourceOperand]     < ddl:operand abstract
-[oracleddl:roleOperand]         < ddl:operand abstract
-[oracleddl:rollbackOperand]     < ddl:operand abstract
-[oracleddl:sequenceOperand]     < ddl:operand abstract
-[oracleddl:sessionOperand]      < ddl:operand abstract
-[oracleddl:spfileOperand]       < ddl:operand abstract
-[oracleddl:systemOperand]       < ddl:operand abstract
-[oracleddl:synonymOperand]      < ddl:operand abstract
-[oracleddl:tablespaceOperand]   < ddl:operand abstract
-[oracleddl:triggerOperand]      < ddl:operand abstract
-[oracleddl:typeOperand]         < ddl:operand abstract
-[oracleddl:userOperand]         < ddl:operand abstract
-
-// =============================================================================
-// COLUMN
-// =============================================================================
-[oracleddl:columnDefinition] > ddl:columnDefinition
-  - oracleddl:dropDefault (boolean)
-  
-// =============================================================================
-// ALTER STATEMENTS
-// =============================================================================
-[oracleddl:alterCluster]       > ddl:alterable, ddl:statement, oracleddl:clusterOperand mixin
-[oracleddl:alterDatabase]      > ddl:alterable, ddl:statement, oracleddl:databaseOperand mixin
-[oracleddl:alterDimension]     > ddl:alterable, ddl:statement, oracleddl:dimensionOperand mixin
-[oracleddl:alterDiskgroup]     > ddl:alterable, ddl:statement, oracleddl:diskgroupOperand mixin
-[oracleddl:alterFunction]      > ddl:alterable, ddl:statement, oracleddl:functionOperand mixin
-[oracleddl:alterIndex]         > ddl:alterable, ddl:statement, oracleddl:indexOperand mixin
-[oracleddl:alterIndextype]     > ddl:alterable, ddl:statement, oracleddl:indextypeOperand mixin
-[oracleddl:alterJava]          > ddl:alterable, ddl:statement, oracleddl:javaOperand mixin
-[oracleddl:alterMaterialized]  > ddl:alterable, ddl:statement, oracleddl:materializedOperand mixin
-[oracleddl:alterOperator]      > ddl:alterable, ddl:statement, oracleddl:operatorOperand mixin
-[oracleddl:alterOutline]       > ddl:alterable, ddl:statement, oracleddl:outlineOperand mixin
-[oracleddl:alterPackage]       > ddl:alterable, ddl:statement, oracleddl:packageOperand mixin
-[oracleddl:alterProcedure]     > ddl:alterable, ddl:statement, oracleddl:procedureOperand mixin
-[oracleddl:alterProfile]       > ddl:alterable, ddl:statement, oracleddl:profileOperand mixin
-[oracleddl:alterResource]      > ddl:alterable, ddl:statement, oracleddl:resourceOperand mixin
-[oracleddl:alterRole]          > ddl:alterable, ddl:statement, oracleddl:roleOperand mixin
-[oracleddl:alterRollback]      > ddl:alterable, ddl:statement, oracleddl:rollbackOperand mixin
-[oracleddl:alterSequence]      > ddl:alterable, ddl:statement, oracleddl:sequenceOperand mixin
-[oracleddl:alterSession]       > ddl:alterable, ddl:statement, oracleddl:sessionOperand mixin
-[oracleddl:alterSystem]        > ddl:alterable, ddl:statement, oracleddl:systemOperand mixin
-[oracleddl:alterTablespace]    > ddl:alterable, ddl:statement, oracleddl:tablespaceOperand mixin
-[oracleddl:alterTrigger]       > ddl:alterable, ddl:statement, oracleddl:triggerOperand mixin
-[oracleddl:alterType]          > ddl:alterable, ddl:statement, oracleddl:typeOperand mixin
-[oracleddl:alterUser]          > ddl:alterable, ddl:statement, oracleddl:userOperand mixin
-[oracleddl:alterView]          > ddl:alterable, ddl:statement, oracleddl:viewOperand mixin
-
-[oraclesddl:alterTableStatement] > ddl:alterTableStatement mixin
-  - oraclesddl:newTableName (STRING)
-  + oracleddl:renameColumn (ddl:renamable) = ddl:renamable multiple
-  + oracleddl:renameConstraint (ddl:renamable) = ddl:renamable multiple
-
-// =============================================================================
-// CREATE STATEMENTS
-// =============================================================================
-
-[oracleddl:createCluster]      > ddl:creatable, ddl:statement, oracleddl:clusterOperand mixin
-[oracleddl:createContext]      > ddl:creatable, ddl:statement, oracleddl:contextOperand mixin
-[oracleddl:createControlfile]  > ddl:creatable, ddl:statement, oracleddl:controlfileOperand mixin
-[oracleddl:createDatabase]     > ddl:creatable, ddl:statement, oracleddl:databaseOperand mixin
-[oracleddl:createDimension]    > ddl:creatable, ddl:statement, oracleddl:dimensionOperand mixin
-[oracleddl:createDirectory]    > ddl:creatable, ddl:statement, oracleddl:directoryOperand mixin
-[oracleddl:createDiskgroup]    > ddl:creatable, ddl:statement, oracleddl:diskgroupOperand mixin
-[oracleddl:createFunction]     > ddl:creatable, ddl:statement, oracleddl:functionOperand mixin
-[oracleddl:createIndex]        > ddl:creatable, ddl:statement, oracleddl:indexOperand mixin
-  - oracleddl:tableName (string) mandatory
-  - oracleddl:unique (boolean)
-  - oracleddl:bitmap (boolean)
-  + * (ddl:columnReference) = ddl:columnReference multiple
-[oracleddl:createIndexType]    > ddl:creatable, ddl:statement, oracleddl:indextypeOperand mixin
-[oracleddl:createJava]         > ddl:creatable, ddl:statement, oracleddl:javaOperand mixin
-[oracleddl:createLibrary]      > ddl:creatable, ddl:statement, oracleddl:libraryOperand mixin
-[oracleddl:createMaterialized] > ddl:creatable, ddl:statement, oracleddl:materializedOperand mixin
-[oracleddl:createOperator]     > ddl:creatable, ddl:statement, oracleddl:operatorOperand mixin
-[oracleddl:createOutline]      > ddl:creatable, ddl:statement, oracleddl:outlineOperand mixin
-[oracleddl:createPackage]      > ddl:creatable, ddl:statement, oracleddl:packageOperand mixin
-[oracleddl:createPfile]        > ddl:creatable, ddl:statement, oracleddl:pfileOperand mixin
-[oracleddl:createProcedure]    > ddl:creatable, ddl:statement, oracleddl:procedureOperand mixin
-[oracleddl:createRole]         > ddl:creatable, ddl:statement, oracleddl:roleOperand mixin
-[oracleddl:createRollback]     > ddl:creatable, ddl:statement, oracleddl:rollbackOperand mixin
-[oracleddl:createSequence]     > ddl:creatable, ddl:statement, oracleddl:sequenceOperand mixin
-[oracleddl:createSpfile]       > ddl:creatable, ddl:statement, oracleddl:spfileOperand mixin
-[oracleddl:createSynonym]      > ddl:creatable, ddl:statement, oracleddl:synonymOperand mixin
-[oracleddl:createTablespace]   > ddl:creatable, ddl:statement, oracleddl:tablespaceOperand mixin
-[oracleddl:createTrigger]      > ddl:creatable, ddl:statement, oracleddl:triggerOperand mixin
-[oracleddl:createType]         > ddl:creatable, ddl:statement, oracleddl:typeOperand mixin
-[oracleddl:createUser]         > ddl:creatable, ddl:statement, oracleddl:userOperand mixin
-
-// =============================================================================
-// DROP STATEMENTS
-// =============================================================================
-
-[oracleddl:dropCluster]        > ddl:droppable, ddl:statement, oracleddl:clusterOperand mixin
-[oracleddl:dropContext]        > ddl:droppable, ddl:statement, oracleddl:contextOperand mixin
-[oracleddl:dropDatabase]       > ddl:droppable, ddl:statement, oracleddl:databaseOperand mixin
-[oracleddl:dropDimension]      > ddl:droppable, ddl:statement, oracleddl:dimensionOperand mixin
-[oracleddl:dropDirectory]      > ddl:droppable, ddl:statement, oracleddl:directoryOperand mixin
-[oracleddl:dropDiskgroup]      > ddl:droppable, ddl:statement, oracleddl:diskgroupOperand mixin
-[oracleddl:dropFunction]       > ddl:droppable, ddl:statement, oracleddl:functionOperand mixin
-[oracleddl:dropIndex]          > ddl:droppable, ddl:statement, oracleddl:indexOperand mixin
-[oracleddl:dropIndextype]      > ddl:droppable, ddl:statement, oracleddl:indextypeOperand mixin
-[oracleddl:dropJava]           > ddl:droppable, ddl:statement, oracleddl:javaOperand mixin
-[oracleddl:dropLibrary]        > ddl:droppable, ddl:statement, oracleddl:libraryOperand mixin
-[oracleddl:dropMaterialized]   > ddl:droppable, ddl:statement, oracleddl:materializedOperand mixin
-[oracleddl:dropOperator]       > ddl:droppable, ddl:statement, oracleddl:operatorOperand mixin
-[oracleddl:dropOutline]        > ddl:droppable, ddl:statement, oracleddl:outlineOperand mixin
-[oracleddl:dropPackage]        > ddl:droppable, ddl:statement, oracleddl:packageOperand mixin
-[oracleddl:dropProcedure]      > ddl:droppable, ddl:statement, oracleddl:procedureOperand mixin
-[oracleddl:dropProfile]        > ddl:droppable, ddl:statement, oracleddl:profileOperand mixin
-[oracleddl:dropRole]           > ddl:droppable, ddl:statement, oracleddl:roleOperand mixin
-[oracleddl:dropRollback]       > ddl:droppable, ddl:statement, oracleddl:rollbackOperand mixin
-[oracleddl:dropSequence]       > ddl:droppable, ddl:statement, oracleddl:sequenceOperand mixin
-[oracleddl:dropSynonym]        > ddl:droppable, ddl:statement, oracleddl:synonymOperand mixin
-[oracleddl:dropTablespace]     > ddl:droppable, ddl:statement, oracleddl:tablespaceOperand mixin
-[oracleddl:dropTrigger]        > ddl:droppable, ddl:statement, oracleddl:triggerOperand mixin
-[oracleddl:dropType]           > ddl:droppable, ddl:statement, oracleddl:typeOperand mixin
-[oracleddl:dropUser]           > ddl:droppable, ddl:statement, oracleddl:userOperand mixin
-
-// =============================================================================
-// MISC STATEMENTS
-// =============================================================================
-
-[oracleddl:analyze]         > ddl:statement mixin
-[oracleddl:associateStatistics]     > ddl:statement mixin
-[oracleddl:audit]           > ddl:statement mixin
-[oracleddl:commit]          > ddl:statement mixin
-[oracleddl:commentOn]       > ddl:statement mixin
-  - oracleddl:targetObjectType (STRING) mandatory
-  - oracleddl:targetObjectName (STRING) mandatory
-  - oracleddl:comment (STRING) mandatory
-[oracleddl:disassociateStatistics]     > ddl:statement mixin
-[oracleddl:explainPlan]     > ddl:statement mixin
-[oracleddl:flashback]       > ddl:statement mixin
-[oracleddl:lockTable]       > ddl:statement mixin
-[oracleddl:merge]           > ddl:statement mixin
-[oracleddl:nestedTable]     > ddl:statement mixin
-[oracleddl:noaudit]         > ddl:statement mixin
-[oracleddl:purge]           > ddl:statement mixin
-[oracleddl:rename]          > ddl:statement mixin
-[oracleddl:revoke]          > ddl:statement mixin
-[oracleddl:rollback]        > ddl:statement mixin
-[oracleddl:setConstraints]  > ddl:statement, ddl:settable, mixin
-[oracleddl:setRole]         > ddl:statement, ddl:settable, mixin
-[oracleddl:setTransaction]  > ddl:statement, ddl:settable, mixin
-[oracleddl:truncate]        > ddl:statement mixin

Modified: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdlParser.java
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdlParser.java	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdlParser.java	2009-12-16 20:44:18 UTC (rev 1447)
@@ -41,6 +41,7 @@
 import java.util.ArrayList;
 import java.util.List;
 import org.jboss.dna.common.text.ParsingException;
+import org.jboss.dna.common.util.CheckArg;
 import org.jboss.dna.graph.property.Name;
 import org.jboss.dna.sequencer.ddl.DdlParserProblem;
 import org.jboss.dna.sequencer.ddl.DdlSequencerI18n;
@@ -296,7 +297,7 @@
             || tokens.matches(STMT_CREATE_BITMAP_INDEX)) {
             return parseCreateIndex(tokens, parentNode);
         } else if (tokens.matches(STMT_CREATE_CLUSTER)) {
-            return parseStatement(tokens, STMT_CREATE_CLUSTER, parentNode, TYPE_CREATE_CLUSTER_STATEMENT);
+            return parseCreateClusterStatement(tokens, parentNode);
         } else if (tokens.matches(STMT_CREATE_CONTEXT)) {
             return parseStatement(tokens, STMT_CREATE_CONTEXT, parentNode, TYPE_CREATE_CONTEXT_STATEMENT);
         } else if (tokens.matches(STMT_CREATE_CONTROLFILE)) {
@@ -306,7 +307,7 @@
         } else if (tokens.matches(STMT_CREATE_PUBLIC_DATABASE)) {
             return parseStatement(tokens, STMT_CREATE_PUBLIC_DATABASE, parentNode, TYPE_CREATE_DATABASE_STATEMENT);
         } else if (tokens.matches(STMT_CREATE_DIMENSION)) {
-            return parseStatement(tokens, STMT_CREATE_DIMENSION, parentNode, TYPE_CREATE_DIMENSION_STATEMENT);
+            return parseCreateDimensionStatement(tokens, parentNode);
         } else if (tokens.matches(STMT_CREATE_DIRECTORY)) {
             return parseStatement(tokens, STMT_CREATE_DIRECTORY, parentNode, TYPE_CREATE_DIRECTORY_STATEMENT);
         } else if (tokens.matches(STMT_CREATE_OR_REPLACE_DIRECTORY)) {
@@ -386,12 +387,40 @@
 
         return super.parseCreateStatement(tokens, parentNode);
     }
+    
+    private AstNode parseCreateClusterStatement( DdlTokenStream tokens, AstNode parentNode ) throws ParsingException {
+        markStartOfStatement(tokens);
+        tokens.consume(STMT_CREATE_CLUSTER);
+        String name = parseName(tokens);
+        
+        AstNode node = nodeFactory().node(name, parentNode, TYPE_CREATE_CLUSTER_STATEMENT);
+        
+        parseUntilTerminator(tokens);
+        
+        markEndOfStatement(tokens, node);
 
+        return node;
+    }
+    
+    private AstNode parseCreateDimensionStatement( DdlTokenStream tokens, AstNode parentNode ) throws ParsingException {
+        markStartOfStatement(tokens);
+        tokens.consume(STMT_CREATE_DIMENSION);
+        String name = parseName(tokens);
+        
+        AstNode node = nodeFactory().node(name, parentNode, TYPE_CREATE_DIMENSION_STATEMENT);
+        
+        parseUntilTerminator(tokens);
+        
+        markEndOfStatement(tokens, node);
+
+        return node;
+    }
+
     @Override
     protected AstNode parseGrantStatement( DdlTokenStream tokens,
                                            AstNode parentNode ) throws ParsingException {
-        assert tokens != null;
-        assert parentNode != null;
+        CheckArg.isNotNull(tokens, "tokens");
+        CheckArg.isNotNull(parentNode, "parentNode");
 
         // return super.parseGrantStatement(tokens, parentNode);
         AstNode node = null;
@@ -913,8 +942,6 @@
 
         markStartOfStatement(tokens);
 
-        AstNode commentNode = nodeFactory().node("commentOn", parentNode, TYPE_COMMENT_ON_STATEMENT);
-
         // COMMENT ON COLUMN CS_EXT_FILES.FILE_UID IS
         // 'UNIQUE INTERNAL IDENTIFIER, NOT EXPOSED'
         // %
@@ -944,12 +971,12 @@
             tokens.consume("NULL");
             commentString = "NULL";
         } else {
-            commentString = parseUntilTerminator(tokens);
+            commentString = parseUntilTerminator(tokens).trim();
         }
 
+        AstNode commentNode = nodeFactory().node(objName, parentNode, TYPE_COMMENT_ON_STATEMENT);
         commentNode.setProperty(OracleDdlLexicon.COMMENT, commentString);
         commentNode.setProperty(OracleDdlLexicon.TARGET_OBJECT_TYPE, obj);
-        commentNode.setProperty(OracleDdlLexicon.TARGET_OBJECT_NAME, objName);
 
         markEndOfStatement(tokens, commentNode);
 

Deleted: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -1,174 +0,0 @@
-/*
- * JBoss DNA (http://www.jboss.org/dna)
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * See the AUTHORS.txt file in the distribution for a full listing of 
- * individual contributors. 
- *
- * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
- * is licensed to you under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * JBoss DNA is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
- 
- //------------------------------------------------------------------------------
-// N A M E S P A C E S
-//------------------------------------------------------------------------------
-<jcr='http://www.jcp.org/jcr/1.0'>
-<nt='http://www.jcp.org/jcr/nt/1.0'>
-<mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
-<postgresddl='http://jboss.org/dna/ddl/postgres/1.0'>
-
-// =============================================================================
-// OPERANDS
-// =============================================================================
-[postgresddl:aggregateOperand]      < ddl:operand abstract
-[postgresddl:caseOperand]           < ddl:operand abstract
-[postgresddl:contraintTriggerOperand] < ddl:operand abstract
-[postgresddl:conversionOperand]     < ddl:operand abstract
-[postgresddl:databaseOperand]       < ddl:operand abstract
-[postgresddl:foreignDataOperand]    < ddl:operand abstract
-[postgresddl:groupOperand]          < ddl:operand abstract
-[postgresddl:functionOperand]       < ddl:operand abstract
-[postgresddl:indexOperand]          < ddl:operand abstract
-[postgresddl:languageOperand]       < ddl:operand abstract
-[postgresddl:operatorOperand]       < ddl:operand abstract
-[postgresddl:ownedByOperand]        < ddl:operand abstract
-[postgresddl:roleOperand]           < ddl:operand abstract
-[postgresddl:ruleOperand]           < ddl:operand abstract
-[postgresddl:sequenceOperand]       < ddl:operand abstract
-[postgresddl:serverOperand]         < ddl:operand abstract
-[postgresddl:tablespaceOperand]     < ddl:operand abstract
-[postgresddl:textSearchOperand]     < ddl:operand abstract
-[postgresddl:triggerOperand]        < ddl:operand abstract
-[postgresddl:typeOperand]           < ddl:operand abstract
-[postgresddl:userOperand]           < ddl:operand abstract
-[postgresddl:userMappingOperand]    < ddl:operand abstract
-
-
-// =============================================================================
-// ALTER STATEMENTS
-// =============================================================================
-[postgresddl:alterAggregateStatement]           > ddl:alterable, ddl:statement, postgresddl:aggregateOperand mixin
-[postgresddl:alterConversionStatement]          > ddl:alterable, ddl:statement, postgresddl:conversionOperand mixin
-[postgresddl:alterDatabaseStatement]            > ddl:alterable, ddl:statement, postgresddl:databaseOperand mixin
-[postgresddl:alterForeignDataWrapperStatement]  > ddl:alterable, ddl:statement, postgresddl:foreignDataOperand mixin
-[postgresddl:alterFunctionStatement]            > ddl:alterable, ddl:statement, postgresddl:functionOperand mixin
-[postgresddl:alterGroupStatement]               > ddl:alterable, ddl:statement, postgresddl:groupOperand mixin
-[postgresddl:alterIndexStatement]               > ddl:alterable, ddl:statement, postgresddl:indexOperand mixin
-[postgresddl:alterLanguageStatement]            > ddl:alterable, ddl:statement, postgresddl:languageOperand mixin
-[postgresddl:alterOperatorStatement]            > ddl:alterable, ddl:statement, postgresddl:operatorOperand mixin
-[postgresddl:alterRoleStatement]                > ddl:alterable, ddl:statement, postgresddl:roleOperand mixin
-[postgresddl:alterSchemaStatement]              > ddl:alterable, ddl:statement, ddl:schemaOperand mixin
-[postgresddl:alterSequenceStatement]            > ddl:alterable, ddl:statement, postgresddl:sequenceOperand mixin
-[postgresddl:alterServerStatement]              > ddl:alterable, ddl:statement, postgresddl:serverOperand mixin
-[postgresddl:alterTablespaceStatement]          > ddl:alterable, ddl:statement, postgresddl:tablespaceOperand mixin
-[postgresddl:alterTextSearchStatement]          > ddl:alterable, ddl:statement, postgresddl:textSearchOperand mixin
-[postgresddl:alterTriggerStatement]             > ddl:alterable, ddl:statement, postgresddl:triggerOperand mixin
-[postgresddl:alterTypeStatement]                > ddl:alterable, ddl:statement, postgresddl:typeOperand mixin
-[postgresddl:alterUserStatement]                > ddl:alterable, ddl:statement, postgresddl:userOperand mixin
-[postgresddl:alterUserMappingStatement]         > ddl:alterable, ddl:statement, postgresddl:userMappingOperand mixin
-[postgresddl:alterViewStatement]                > ddl:alterable, ddl:statement, postgresddl:viewOperand mixin
-
-[postgresddl:alterTableStatement] > ddl:alterTableStatement mixin
-  - postgresddl:newTableName (STRING)
-  - postgresddl:schemaName (STRING)
-  + postgresddl:renameColumn (ddl:renamable) = ddl:renamable multiple
-
-  
-// =============================================================================
-// CREATE STATEMENTS
-// =============================================================================
-
-[postgresddl:createAggregateStatement]          > ddl:creatable, ddl:statement, postgresddl:aggregateOperand mixin
-[postgresddl:createCastStatement]               > ddl:creatable, ddl:statement, postgresddl:castOperand mixin
-[postgresddl:createConstraintTriggerStatement]  > ddl:creatable, ddl:statement, postgresddl:constraintTriggerOperand mixin
-[postgresddl:createConversionStatement]         > ddl:creatable, ddl:statement, postgresddl:conversionOperand mixin
-[postgresddl:createDatabaseStatement]           > ddl:creatable, ddl:statement, postgresddl:databaseOperand mixin
-[postgresddl:createForeignDataWrapperStatement] > ddl:creatable, ddl:statement, postgresddl:foreignDataOperand mixin
-[postgresddl:createFunctionStatement]           > ddl:creatable, ddl:statement, postgresddl:functionOperand mixin
-[postgresddl:createGroupStatement]              > ddl:creatable, ddl:statement, postgresddl:groupOperand mixin
-[postgresddl:createIndexStatement]              > ddl:creatable, ddl:statement, postgresddl:indexOperand mixin
-[postgresddl:createLanguageStatement]           > ddl:creatable, ddl:statement, postgresddl:languageOperand mixin
-[postgresddl:createOperatorStatement]           > ddl:creatable, ddl:statement, postgresddl:operatorOperand mixin
-[postgresddl:createRoleStatement]               > ddl:creatable, ddl:statement, postgresddl:roleOperand mixin
-[postgresddl:createRuleStatement]               > ddl:creatable, ddl:statement, postgresddl:ruleOperand mixin
-[postgresddl:createSequenceStatement]           > ddl:creatable, ddl:statement, postgresddl:sequenceOperand mixin
-[postgresddl:createServerStatement]             > ddl:creatable, ddl:statement, postgresddl:serverOperand mixin
-[postgresddl:createTablespaceStatement]         > ddl:creatable, ddl:statement, postgresddl:tablespaceOperand mixin
-[postgresddl:createTextSearchStatement]         > ddl:creatable, ddl:statement, postgresddl:textSearchOperand mixin
-[postgresddl:createTriggerStatement]            > ddl:creatable, ddl:statement, postgresddl:triggerOperand mixin
-[postgresddl:createTypeStatement]               > ddl:creatable, ddl:statement, postgresddl:typeOperand mixin
-[postgresddl:createUserStatement]               > ddl:creatable, ddl:statement, postgresddl:userOperand mixin
-[postgresddl:createUserMappingStatement]        > ddl:creatable, ddl:statement, postgresddl:userMappingOperand mixin
-
-// =============================================================================
-// DROP STATEMENTS
-// =============================================================================
-
-[postgresddl:dropAggregateStatement]            > ddl:droppable, ddl:statement, postgresddl:aggregateOperand mixin
-[postgresddl:dropCastStatement]                 > ddl:droppable, ddl:statement, postgresddl:castOperand mixin
-[postgresddl:dropConstraintTriggerStatement]    > ddl:droppable, ddl:statement, postgresddl:constraintTriggerOperand mixin
-[postgresddl:dropConversionStatement]           > ddl:droppable, ddl:statement, postgresddl:conversionOperand mixin
-[postgresddl:dropDatabaseStatement]             > ddl:droppable, ddl:statement, postgresddl:databaseOperand mixin
-[postgresddl:dropForeignDataWrapperStatement]   > ddl:droppable, ddl:statement, postgresddl:foreignDataOperand mixin
-[postgresddl:dropFunctionStatement]             > ddl:droppable, ddl:statement, postgresddl:functionOperand mixin
-[postgresddl:dropGroupStatement]                > ddl:droppable, ddl:statement, postgresddl:groupOperand mixin
-[postgresddl:dropIndexStatement]                > ddl:droppable, ddl:statement, postgresddl:indexOperand mixin
-[postgresddl:dropLanguageStatement]             > ddl:droppable, ddl:statement, postgresddl:languageOperand mixin
-[postgresddl:dropOperatorStatement]             > ddl:droppable, ddl:statement, postgresddl:operatorOperand mixin
-[postgresddl:dropOwnedByStatement]              > ddl:droppable, ddl:statement, postgresddl:ownedByOperand mixin
-[postgresddl:dropRoleStatement]                 > ddl:droppable, ddl:statement, postgresddl:roleOperand mixin
-[postgresddl:dropRuleStatement]                 > ddl:droppable, ddl:statement, postgresddl:ruleOperand mixin
-[postgresddl:dropSequenceStatement]             > ddl:droppable, ddl:statement, postgresddl:sequenceOperand mixin
-[postgresddl:dropServerStatement]               > ddl:droppable, ddl:statement, postgresddl:serverOperand mixin
-[postgresddl:dropTablespaceStatement]           > ddl:droppable, ddl:statement, postgresddl:tablespaceOperand mixin
-[postgresddl:dropTextSearchStatement]           > ddl:droppable, ddl:statement, postgresddl:textSearchOperand mixin
-[postgresddl:dropTriggerStatement]              > ddl:droppable, ddl:statement, postgresddl:triggerOperand mixin
-[postgresddl:dropTypeStatement]                 > ddl:droppable, ddl:statement, postgresddl:typeOperand mixin
-[postgresddl:dropUserStatement]                 > ddl:droppable, ddl:statement, postgresddl:userOperand mixin
-[postgresddl:dropUserMappingStatement]          > ddl:droppable, ddl:statement, postgresddl:userMappingOperand mixin
-
-// =============================================================================
-// MISC STATEMENTS
-// =============================================================================
-
-[postgresddl:abortStatement]            > ddl:statement mixin
-[postgresddl:analyzeStatement]          > ddl:statement mixin
-[postgresddl:clusterStatement]          > ddl:statement mixin
-[postgresddl:commentOnStatement]        > ddl:statement mixin
-[postgresddl:copyStatement]             > ddl:statement mixin
-[postgresddl:deallocateStatement]       > ddl:statement mixin
-[postgresddl:declareStatement]          > ddl:statement mixin
-[postgresddl:discardStatement]          > ddl:statement mixin
-[postgresddl:explainStatement]          > ddl:statement mixin
-[postgresddl:fetchStatement]            > ddl:statement mixin
-[postgresddl:listenStatement]           > ddl:statement mixin
-[postgresddl:loadStatement]             > ddl:statement mixin
-[postgresddl:lockTableStatement]        > ddl:statement mixin
-[postgresddl:moveStatement]             > ddl:statement mixin
-[postgresddl:notifyStatement]           > ddl:statement mixin
-[postgresddl:prepareStatement]          > ddl:statement mixin
-[postgresddl:reassignOwnedStatement]    > ddl:statement mixin
-[postgresddl:reindexStatement]          > ddl:statement mixin
-[postgresddl:releaseSavepointStatement] > ddl:statement mixin
-[postgresddl:rollbackStatement]         > ddl:statement mixin
-[postgresddl:selectIntoStatement]       > ddl:statement mixin
-[postgresddl:showStatement]             > ddl:statement mixin
-[postgresddl:truncateStatement]         > ddl:statement mixin
-[postgresddl:unlistenStatement]         > ddl:statement mixin
-[postgresddl:vacuumStatement]           > ddl:statement mixin
-
-

Modified: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlLexicon.java
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlLexicon.java	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlLexicon.java	2009-12-16 20:44:18 UTC (rev 1447)
@@ -136,4 +136,9 @@
     public static final Name TYPE_RENAME_COLUMN 					= new BasicName(Namespace.URI, "renameColumn");
     
     public static final Name SCHEMA_NAME 							= new BasicName(Namespace.URI, "schemaName");
+    
+    // PROPERTY NAMES
+    public static final Name TARGET_OBJECT_TYPE = new BasicName(Namespace.URI, "targetObjectType"); //$NON-NLS-1$
+    public static final Name TARGET_OBJECT_NAME = new BasicName(Namespace.URI, "targetObjectName"); //$NON-NLS-1$
+    public static final Name COMMENT = new BasicName(Namespace.URI, "comment"); //$NON-NLS-1$
 }

Modified: trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlParser.java
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlParser.java	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/java/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdlParser.java	2009-12-16 20:44:18 UTC (rev 1447)
@@ -125,7 +125,6 @@
 import org.jboss.dna.sequencer.ddl.DdlTokenStream.DdlTokenizer;
 import org.jboss.dna.sequencer.ddl.datatype.DataType;
 import org.jboss.dna.sequencer.ddl.datatype.DataTypeParser;
-import org.jboss.dna.sequencer.ddl.dialect.oracle.OracleDdlLexicon;
 import org.jboss.dna.sequencer.ddl.node.AstNode;
 
 /**
@@ -1165,8 +1164,6 @@
 
         markStartOfStatement(tokens);
 
-        AstNode commentNode = nodeFactory().node("commentOn", parentNode, TYPE_COMMENT_ON_STATEMENT);
-
         /*
         --  TABLE object_name |
         --  COLUMN table_name.column_name |
@@ -1318,15 +1315,21 @@
             tokens.consume("NULL");
             commentString = "NULL";
         } else {
-            commentString = parseUntilTerminator(tokens);
+            commentString = parseUntilTerminator(tokens).trim();
         }
 
-        commentNode.setProperty(OracleDdlLexicon.COMMENT, commentString);
-        commentNode.setProperty(OracleDdlLexicon.TARGET_OBJECT_TYPE, objectType);
+        AstNode commentNode = null;
+        
+
         if (objectName != null) {
-            commentNode.setProperty(OracleDdlLexicon.TARGET_OBJECT_NAME, objectName);
+            commentNode = nodeFactory().node(objectName, parentNode, TYPE_COMMENT_ON_STATEMENT);
+        } else {
+            commentNode = nodeFactory().node("commentOn", parentNode, TYPE_COMMENT_ON_STATEMENT);
+            commentNode.setProperty(PostgresDdlLexicon.TARGET_OBJECT_NAME, objectName);
         }
-
+        commentNode.setProperty(PostgresDdlLexicon.COMMENT, commentString);
+        commentNode.setProperty(PostgresDdlLexicon.TARGET_OBJECT_TYPE, objectType);
+        
         markEndOfStatement(tokens, commentNode);
 
         return commentNode;

Deleted: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -1,72 +0,0 @@
-/*
- * JBoss DNA (http://www.jboss.org/dna)
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * See the AUTHORS.txt file in the distribution for a full listing of 
- * individual contributors. 
- *
- * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
- * is licensed to you under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * JBoss DNA is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
- 
- //------------------------------------------------------------------------------
-// N A M E S P A C E S
-//------------------------------------------------------------------------------
-<jcr='http://www.jcp.org/jcr/1.0'>
-<nt='http://www.jcp.org/jcr/nt/1.0'>
-<mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
-<derbyddl='http://jboss.org/dna/ddl/derby/1.0'>
-
-// =============================================================================
-// OPERANDS
-// =============================================================================
-[derbyddl:functionOperand]  < ddl:operand abstract
-[derbyddl:indexOperand]     < ddl:operand abstract
-[derbyddl:procedureOperand] < ddl:operand abstract
-[derbyddl:roleOperand]      < ddl:operand abstract
-[derbyddl:synonymOperand]   < ddl:operand abstract
-[derbyddl:triggerOperand]   < ddl:operand abstract
-
-// =============================================================================
-// COLUMN
-// =============================================================================
-[derbyddl:columnDefinition] > ddl:columnDefinition mixin
-  - derbyddl:dropDefault (boolean)
-  
-// =============================================================================
-// CREATE STATEMENTS
-// =============================================================================
-[derbyddl:createFunctionStatement]     > ddl:creatable, ddl:statement, derbyddl:functionOperand mixin
-[derbyddl:createIndex]                 > ddl:statement, ddl:creatable, derbyddl:indexOperand mixin
-  - derbyddl:tableName (string) mandatory
-  - derbyddl:unique (boolean)
-  + * (ddl:columnReference) = ddl:columnReference multiple
-[derbyddl:createProcedureStatement]    > ddl:creatable, ddl:statement, derbyddl:procedureOperand mixin
-[derbyddl:createRoleStatement]         > ddl:creatable, ddl:statement, derbyddl:roleOperand mixin
-[derbyddl:createSynonymStatement]      > ddl:creatable, ddl:statement, derbyddl:synonymOperand mixin
-[derbyddl:createTriggerStatement]      > ddl:creatable, ddl:statement, derbyddl:triggerOperand mixin
-
-
-// =============================================================================
-// DROP STATEMENTS
-// =============================================================================
-[derbyddl:dropFunctionStatement]    > ddl:droppable, derbyddl:functionOperand mixin
-[derbyddl:dropIndexStatement]       > ddl:droppable, derbyddl:indexOperand mixin
-[derbyddl:dropProcedureStatement]   > ddl:droppable, derbyddl:procedureOperand mixin
-[derbyddl:dropRoleStatement]        > ddl:droppable, derbyddl:roleOperand mixin
-[derbyddl:dropSynonymStatement]     > ddl:droppable, derbyddl:synonymOperand mixin
-[derbyddl:dropTriggerStatement]     > ddl:droppable, derbyddl:triggerOperand mixin

Added: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd	                        (rev 0)
+++ trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -0,0 +1,72 @@
+/*
+ * JBoss DNA (http://www.jboss.org/dna)
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership.  Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ * See the AUTHORS.txt file in the distribution for a full listing of 
+ * individual contributors. 
+ *
+ * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
+ * is licensed to you under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * JBoss DNA is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+ 
+ //------------------------------------------------------------------------------
+// N A M E S P A C E S
+//------------------------------------------------------------------------------
+<jcr='http://www.jcp.org/jcr/1.0'>
+<nt='http://www.jcp.org/jcr/nt/1.0'>
+<mix='http://www.jcp.org/jcr/mix/1.0'>
+<ddl='http://www.jboss.org/dna/ddl/1.0'>
+<derbyddl='http://www.jboss.org/dna/ddl/derby/1.0'>
+
+// =============================================================================
+// OPERANDS
+// =============================================================================
+[derbyddl:functionOperand]  > ddl:operand abstract
+[derbyddl:indexOperand]     > ddl:operand abstract
+[derbyddl:procedureOperand] > ddl:operand abstract
+[derbyddl:roleOperand]      > ddl:operand abstract
+[derbyddl:synonymOperand]   > ddl:operand abstract
+[derbyddl:triggerOperand]   > ddl:operand abstract
+
+// =============================================================================
+// COLUMN
+// =============================================================================
+[derbyddl:columnDefinition] > ddl:columnDefinition mixin
+  - derbyddl:dropDefault (boolean)
+  
+// =============================================================================
+// CREATE STATEMENTS
+// =============================================================================
+[derbyddl:createFunctionStatement]     > ddl:creatable, ddl:statement, derbyddl:functionOperand mixin
+[derbyddl:createIndex]                 > ddl:statement, ddl:creatable, derbyddl:indexOperand mixin
+  - derbyddl:tableName (string) mandatory
+  - derbyddl:unique (boolean)
+  + * (ddl:columnReference) = ddl:columnReference multiple
+[derbyddl:createProcedureStatement]    > ddl:creatable, ddl:statement, derbyddl:procedureOperand mixin
+[derbyddl:createRoleStatement]         > ddl:creatable, ddl:statement, derbyddl:roleOperand mixin
+[derbyddl:createSynonymStatement]      > ddl:creatable, ddl:statement, derbyddl:synonymOperand mixin
+[derbyddl:createTriggerStatement]      > ddl:creatable, ddl:statement, derbyddl:triggerOperand mixin
+
+
+// =============================================================================
+// DROP STATEMENTS
+// =============================================================================
+[derbyddl:dropFunctionStatement]    > ddl:droppable, derbyddl:functionOperand mixin
+[derbyddl:dropIndexStatement]       > ddl:droppable, derbyddl:indexOperand mixin
+[derbyddl:dropProcedureStatement]   > ddl:droppable, derbyddl:procedureOperand mixin
+[derbyddl:dropRoleStatement]        > ddl:droppable, derbyddl:roleOperand mixin
+[derbyddl:dropSynonymStatement]     > ddl:droppable, derbyddl:synonymOperand mixin
+[derbyddl:dropTriggerStatement]     > ddl:droppable, derbyddl:triggerOperand mixin


Property changes on: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/derby/DerbyDdl.cnd
___________________________________________________________________
Name: svn:executable
   + *

Deleted: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -1,201 +0,0 @@
-/*
- * JBoss DNA (http://www.jboss.org/dna)
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * See the AUTHORS.txt file in the distribution for a full listing of 
- * individual contributors. 
- *
- * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
- * is licensed to you under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * JBoss DNA is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
- 
- //------------------------------------------------------------------------------
-// N A M E S P A C E S
-//------------------------------------------------------------------------------
-<jcr='http://www.jcp.org/jcr/1.0'>
-<nt='http://www.jcp.org/jcr/nt/1.0'>
-<mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
-<oracleddl='http://jboss.org/dna/ddl/oracle/1.0'>
-
-// =============================================================================
-// OPERANDS
-// =============================================================================
-[oracleddl:clusterOperand]      < ddl:operand abstract
-[oracleddl:contextOperand]      < ddl:operand abstract
-[oracleddl:controlfileOperand]  < ddl:operand abstract
-[oracleddl:databaseOperand]     < ddl:operand abstract
-[oracleddl:dimensionOperand]    < ddl:operand abstract
-[oracleddl:directoryOperand]    < ddl:operand abstract
-[oracleddl:diskgroupOperand]    < ddl:operand abstract
-[oracleddl:functionOperand]     < ddl:operand abstract
-[oracleddl:indexOperand]        < ddl:operand abstract
-[oracleddl:indextypeOperand]    < ddl:operand abstract
-[oracleddl:javaOperand]         < ddl:operand abstract
-[oracleddl:libraryOperand]      < ddl:operand abstract
-[oracleddl:materializedOperand] < ddl:operand abstract
-[oracleddl:operatorOperand]     < ddl:operand abstract
-[oracleddl:outlineOperand]      < ddl:operand abstract
-[oracleddl:packageOperand]      < ddl:operand abstract
-[oracleddl:pfileOperand]        < ddl:operand abstract
-[oracleddl:procedureOperand]    < ddl:operand abstract
-[oracleddl:profileOperand]      < ddl:operand abstract
-[oracleddl:resourceOperand]     < ddl:operand abstract
-[oracleddl:roleOperand]         < ddl:operand abstract
-[oracleddl:rollbackOperand]     < ddl:operand abstract
-[oracleddl:sequenceOperand]     < ddl:operand abstract
-[oracleddl:sessionOperand]      < ddl:operand abstract
-[oracleddl:spfileOperand]       < ddl:operand abstract
-[oracleddl:systemOperand]       < ddl:operand abstract
-[oracleddl:synonymOperand]      < ddl:operand abstract
-[oracleddl:tablespaceOperand]   < ddl:operand abstract
-[oracleddl:triggerOperand]      < ddl:operand abstract
-[oracleddl:typeOperand]         < ddl:operand abstract
-[oracleddl:userOperand]         < ddl:operand abstract
-
-// =============================================================================
-// COLUMN
-// =============================================================================
-[oracleddl:columnDefinition] > ddl:columnDefinition
-  - oracleddl:dropDefault (boolean)
-  
-// =============================================================================
-// ALTER STATEMENTS
-// =============================================================================
-[oracleddl:alterClusterStatement]       > ddl:alterable, ddl:statement, oracleddl:clusterOperand mixin
-[oracleddl:alterDatabaseStatement]      > ddl:alterable, ddl:statement, oracleddl:databaseOperand mixin
-[oracleddl:alterDimensionStatement]     > ddl:alterable, ddl:statement, oracleddl:dimensionOperand mixin
-[oracleddl:alterDiskgroupStatement]     > ddl:alterable, ddl:statement, oracleddl:diskgroupOperand mixin
-[oracleddl:alterFunctionStatement]      > ddl:alterable, ddl:statement, oracleddl:functionOperand mixin
-[oracleddl:alterIndexStatement]         > ddl:alterable, ddl:statement, oracleddl:indexOperand mixin
-[oracleddl:alterIndextypeStatement]     > ddl:alterable, ddl:statement, oracleddl:indextypeOperand mixin
-[oracleddl:alterJavaStatement]          > ddl:alterable, ddl:statement, oracleddl:javaOperand mixin
-[oracleddl:alterMaterializedStatement]  > ddl:alterable, ddl:statement, oracleddl:materializedOperand mixin
-[oracleddl:alterOperatorStatement]      > ddl:alterable, ddl:statement, oracleddl:operatorOperand mixin
-[oracleddl:alterOutlineStatement]       > ddl:alterable, ddl:statement, oracleddl:outlineOperand mixin
-[oracleddl:alterPackageStatement]       > ddl:alterable, ddl:statement, oracleddl:packageOperand mixin
-[oracleddl:alterProcedureStatement]     > ddl:alterable, ddl:statement, oracleddl:procedureOperand mixin
-[oracleddl:alterProfileStatement]       > ddl:alterable, ddl:statement, oracleddl:profileOperand mixin
-[oracleddl:alterResourceStatement]      > ddl:alterable, ddl:statement, oracleddl:resourceOperand mixin
-[oracleddl:alterRoleStatement]          > ddl:alterable, ddl:statement, oracleddl:roleOperand mixin
-[oracleddl:alterRollbackStatement]      > ddl:alterable, ddl:statement, oracleddl:rollbackOperand mixin
-[oracleddl:alterSequenceStatement]      > ddl:alterable, ddl:statement, oracleddl:sequenceOperand mixin
-[oracleddl:alterSessionStatement]       > ddl:alterable, ddl:statement, oracleddl:sessionOperand mixin
-[oracleddl:alterSystemStatement]        > ddl:alterable, ddl:statement, oracleddl:systemOperand mixin
-[oracleddl:alterTablespaceStatement]    > ddl:alterable, ddl:statement, oracleddl:tablespaceOperand mixin
-[oracleddl:alterTriggerStatement]       > ddl:alterable, ddl:statement, oracleddl:triggerOperand mixin
-[oracleddl:alterTypeStatement]          > ddl:alterable, ddl:statement, oracleddl:typeOperand mixin
-[oracleddl:alterUserStatement]          > ddl:alterable, ddl:statement, oracleddl:userOperand mixin
-[oracleddl:alterViewStatement]          > ddl:alterable, ddl:statement,       ddl:viewOperand mixin
-
-[oraclesddl:alterTableStatement] > ddl:alterTableStatement mixin
-  - oraclesddl:newTableName (STRING)
-  + oracleddl:renameColumn (ddl:renamable) = ddl:renamable multiple
-  + oracleddl:renameConstraint (ddl:renamable) = ddl:renamable multiple
-
-// =============================================================================
-// CREATE STATEMENTS
-// =============================================================================
-
-[oracleddl:createClusterStatement]      > ddl:creatable, ddl:statement, oracleddl:clusterOperand mixin
-[oracleddl:createContextStatement]      > ddl:creatable, ddl:statement, oracleddl:contextOperand mixin
-[oracleddl:createControlfileStatement]  > ddl:creatable, ddl:statement, oracleddl:controlfileOperand mixin
-[oracleddl:createDatabaseStatement]     > ddl:creatable, ddl:statement, oracleddl:databaseOperand mixin
-[oracleddl:createDimensionStatement]    > ddl:creatable, ddl:statement, oracleddl:dimensionOperand mixin
-[oracleddl:createDirectoryStatement]    > ddl:creatable, ddl:statement, oracleddl:directoryOperand mixin
-[oracleddl:createDiskgroupStatement]    > ddl:creatable, ddl:statement, oracleddl:diskgroupOperand mixin
-[oracleddl:createFunctionStatement]     > ddl:creatable, ddl:statement, oracleddl:functionOperand mixin
-[oracleddl:createIndexStatement]        > ddl:creatable, ddl:statement, oracleddl:indexOperand mixin
-  - oracleddl:tableName (string) mandatory
-  - oracleddl:unique (boolean)
-  - oracleddl:bitmap (boolean)
-  + * (ddl:columnReference) = ddl:columnReference multiple
-[oracleddl:createIndexTypeStatement]    > ddl:creatable, ddl:statement, oracleddl:indextypeOperand mixin
-[oracleddl:createJavaStatement]         > ddl:creatable, ddl:statement, oracleddl:javaOperand mixin
-[oracleddl:createLibraryStatement]      > ddl:creatable, ddl:statement, oracleddl:libraryOperand mixin
-[oracleddl:createMaterializedStatement] > ddl:creatable, ddl:statement, oracleddl:materializedOperand mixin
-[oracleddl:createOperatorStatement]     > ddl:creatable, ddl:statement, oracleddl:operatorOperand mixin
-[oracleddl:createOutlineStatement]      > ddl:creatable, ddl:statement, oracleddl:outlineOperand mixin
-[oracleddl:createPackageStatement]      > ddl:creatable, ddl:statement, oracleddl:packageOperand mixin
-[oracleddl:createPfileStatement]        > ddl:creatable, ddl:statement, oracleddl:pfileOperand mixin
-[oracleddl:createProcedureStatement]    > ddl:creatable, ddl:statement, oracleddl:procedureOperand mixin
-[oracleddl:createRoleStatement]         > ddl:creatable, ddl:statement, oracleddl:roleOperand mixin
-[oracleddl:createRollbackStatement]     > ddl:creatable, ddl:statement, oracleddl:rollbackOperand mixin
-[oracleddl:createSequenceStatement]     > ddl:creatable, ddl:statement, oracleddl:sequenceOperand mixin
-[oracleddl:createSpfileStatement]       > ddl:creatable, ddl:statement, oracleddl:spfileOperand mixin
-[oracleddl:createSynonymStatement]      > ddl:creatable, ddl:statement, oracleddl:synonymOperand mixin
-[oracleddl:createTablespaceStatement]   > ddl:creatable, ddl:statement, oracleddl:tablespaceOperand mixin
-[oracleddl:createTriggerStatement]      > ddl:creatable, ddl:statement, oracleddl:triggerOperand mixin
-[oracleddl:createTypeStatement]         > ddl:creatable, ddl:statement, oracleddl:typeOperand mixin
-[oracleddl:createUserStatement]         > ddl:creatable, ddl:statement, oracleddl:userOperand mixin
-
-// =============================================================================
-// DROP STATEMENTS
-// =============================================================================
-
-[oracleddl:dropClusterStatement]        > ddl:droppable, ddl:statement, oracleddl:clusterOperand mixin
-[oracleddl:dropContextStatement]        > ddl:droppable, ddl:statement, oracleddl:contextOperand mixin
-[oracleddl:dropDatabaseStatement]       > ddl:droppable, ddl:statement, oracleddl:databaseOperand mixin
-[oracleddl:dropDimensionStatement]      > ddl:droppable, ddl:statement, oracleddl:dimensionOperand mixin
-[oracleddl:dropDirectoryStatement]      > ddl:droppable, ddl:statement, oracleddl:directoryOperand mixin
-[oracleddl:dropDiskgroupStatement]      > ddl:droppable, ddl:statement, oracleddl:diskgroupOperand mixin
-[oracleddl:dropFunctionStatement]       > ddl:droppable, ddl:statement, oracleddl:functionOperand mixin
-[oracleddl:dropIndexStatement]          > ddl:droppable, ddl:statement, oracleddl:indexOperand mixin
-[oracleddl:dropIndextypeStatement]      > ddl:droppable, ddl:statement, oracleddl:indextypeOperand mixin
-[oracleddl:dropJavaStatement]           > ddl:droppable, ddl:statement, oracleddl:javaOperand mixin
-[oracleddl:dropLibraryStatement]        > ddl:droppable, ddl:statement, oracleddl:libraryOperand mixin
-[oracleddl:dropMaterializedStatement]   > ddl:droppable, ddl:statement, oracleddl:materializedOperand mixin
-[oracleddl:dropOperatorStatement]       > ddl:droppable, ddl:statement, oracleddl:operatorOperand mixin
-[oracleddl:dropOutlineStatement]        > ddl:droppable, ddl:statement, oracleddl:outlineOperand mixin
-[oracleddl:dropPackageStatement]        > ddl:droppable, ddl:statement, oracleddl:packageOperand mixin
-[oracleddl:dropProcedureStatement]      > ddl:droppable, ddl:statement, oracleddl:procedureOperand mixin
-[oracleddl:dropProfileStatement]        > ddl:droppable, ddl:statement, oracleddl:profileOperand mixin
-[oracleddl:dropRoleStatement]           > ddl:droppable, ddl:statement, oracleddl:roleOperand mixin
-[oracleddl:dropRollbackStatement]       > ddl:droppable, ddl:statement, oracleddl:rollbackOperand mixin
-[oracleddl:dropSequenceStatement]       > ddl:droppable, ddl:statement, oracleddl:sequenceOperand mixin
-[oracleddl:dropSynonymStatement]        > ddl:droppable, ddl:statement, oracleddl:synonymOperand mixin
-[oracleddl:dropTablespaceStatement]     > ddl:droppable, ddl:statement, oracleddl:tablespaceOperand mixin
-[oracleddl:dropTriggerStatement]        > ddl:droppable, ddl:statement, oracleddl:triggerOperand mixin
-[oracleddl:dropTypeStatement]           > ddl:droppable, ddl:statement, oracleddl:typeOperand mixin
-[oracleddl:dropUserStatement]           > ddl:droppable, ddl:statement, oracleddl:userOperand mixin
-
-// =============================================================================
-// MISC STATEMENTS
-// =============================================================================
-
-[oracleddl:analyzeStatement]         > ddl:statement mixin
-[oracleddl:associateStatisticsStatement]     > ddl:statement mixin
-[oracleddl:auditStatement]           > ddl:statement mixin
-[oracleddl:commitStatement]          > ddl:statement mixin
-[oracleddl:commentOnStatement]       > ddl:statement mixin
-  - oracleddl:targetObjectType (STRING) mandatory
-  - oracleddl:targetObjectName (STRING) mandatory
-  - oracleddl:comment (STRING) mandatory
-[oracleddl:disassociateStatisticsStatement]     > ddl:statement mixin
-[oracleddl:explainPlanStatement]     > ddl:statement mixin
-[oracleddl:flashbackStatement]       > ddl:statement mixin
-[oracleddl:lockTableStatement]       > ddl:statement mixin
-[oracleddl:mergeStatement]           > ddl:statement mixin
-[oracleddl:nestedTableStatement]     > ddl:statement mixin
-[oracleddl:noauditStatement]         > ddl:statement mixin
-[oracleddl:purgeStatement]           > ddl:statement mixin
-[oracleddl:renameStatement]          > ddl:statement mixin
-[oracleddl:revokeStatement]          > ddl:statement mixin
-[oracleddl:rollbackStatement]        > ddl:statement mixin
-[oracleddl:setConstraintsStatement]  > ddl:statement, ddl:settable, mixin
-[oracleddl:setRoleStatement]         > ddl:statement, ddl:settable, mixin
-[oracleddl:setTransactionStatement]  > ddl:statement, ddl:settable, mixin
-[oracleddl:truncateStatement]        > ddl:statement mixin

Added: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd	                        (rev 0)
+++ trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -0,0 +1,202 @@
+/*
+ * JBoss DNA (http://www.jboss.org/dna)
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership.  Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ * See the AUTHORS.txt file in the distribution for a full listing of 
+ * individual contributors. 
+ *
+ * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
+ * is licensed to you under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * JBoss DNA is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+ 
+ //------------------------------------------------------------------------------
+// N A M E S P A C E S
+//------------------------------------------------------------------------------
+<jcr='http://www.jcp.org/jcr/1.0'>
+<nt='http://www.jcp.org/jcr/nt/1.0'>
+<mix='http://www.jcp.org/jcr/mix/1.0'>
+<ddl='http://www.jboss.org/dna/ddl/1.0'>
+<oracleddl='http://www.jboss.org/dna/ddl/oracle/1.0'>
+
+// =============================================================================
+// OPERANDS
+// =============================================================================
+[oracleddl:clusterOperand]      > ddl:operand abstract
+[oracleddl:commentOperand]      > ddl:operand abstract
+[oracleddl:contextOperand]      > ddl:operand abstract
+[oracleddl:controlfileOperand]  > ddl:operand abstract
+[oracleddl:databaseOperand]     > ddl:operand abstract
+[oracleddl:dimensionOperand]    > ddl:operand abstract
+[oracleddl:directoryOperand]    > ddl:operand abstract
+[oracleddl:diskgroupOperand]    > ddl:operand abstract
+[oracleddl:functionOperand]     > ddl:operand abstract
+[oracleddl:indexOperand]        > ddl:operand abstract
+[oracleddl:indextypeOperand]    > ddl:operand abstract
+[oracleddl:javaOperand]         > ddl:operand abstract
+[oracleddl:libraryOperand]      > ddl:operand abstract
+[oracleddl:materializedOperand] > ddl:operand abstract
+[oracleddl:operatorOperand]     > ddl:operand abstract
+[oracleddl:outlineOperand]      > ddl:operand abstract
+[oracleddl:packageOperand]      > ddl:operand abstract
+[oracleddl:pfileOperand]        > ddl:operand abstract
+[oracleddl:procedureOperand]    > ddl:operand abstract
+[oracleddl:profileOperand]      > ddl:operand abstract
+[oracleddl:resourceOperand]     > ddl:operand abstract
+[oracleddl:roleOperand]         > ddl:operand abstract
+[oracleddl:rollbackOperand]     > ddl:operand abstract
+[oracleddl:sequenceOperand]     > ddl:operand abstract
+[oracleddl:sessionOperand]      > ddl:operand abstract
+[oracleddl:spfileOperand]       > ddl:operand abstract
+[oracleddl:systemOperand]       > ddl:operand abstract
+[oracleddl:synonymOperand]      > ddl:operand abstract
+[oracleddl:tablespaceOperand]   > ddl:operand abstract
+[oracleddl:triggerOperand]      > ddl:operand abstract
+[oracleddl:typeOperand]         > ddl:operand abstract
+[oracleddl:userOperand]         > ddl:operand abstract
+
+// =============================================================================
+// COLUMN
+// =============================================================================
+[oracleddl:columnDefinition] > ddl:columnDefinition
+  - oracleddl:dropDefault (boolean)
+  
+// =============================================================================
+// ALTER STATEMENTS
+// =============================================================================
+[oracleddl:alterClusterStatement]       > ddl:alterable, ddl:statement, oracleddl:clusterOperand mixin
+[oracleddl:alterDatabaseStatement]      > ddl:alterable, ddl:statement, oracleddl:databaseOperand mixin
+[oracleddl:alterDimensionStatement]     > ddl:alterable, ddl:statement, oracleddl:dimensionOperand mixin
+[oracleddl:alterDiskgroupStatement]     > ddl:alterable, ddl:statement, oracleddl:diskgroupOperand mixin
+[oracleddl:alterFunctionStatement]      > ddl:alterable, ddl:statement, oracleddl:functionOperand mixin
+[oracleddl:alterIndexStatement]         > ddl:alterable, ddl:statement, oracleddl:indexOperand mixin
+[oracleddl:alterIndextypeStatement]     > ddl:alterable, ddl:statement, oracleddl:indextypeOperand mixin
+[oracleddl:alterJavaStatement]          > ddl:alterable, ddl:statement, oracleddl:javaOperand mixin
+[oracleddl:alterMaterializedStatement]  > ddl:alterable, ddl:statement, oracleddl:materializedOperand mixin
+[oracleddl:alterOperatorStatement]      > ddl:alterable, ddl:statement, oracleddl:operatorOperand mixin
+[oracleddl:alterOutlineStatement]       > ddl:alterable, ddl:statement, oracleddl:outlineOperand mixin
+[oracleddl:alterPackageStatement]       > ddl:alterable, ddl:statement, oracleddl:packageOperand mixin
+[oracleddl:alterProcedureStatement]     > ddl:alterable, ddl:statement, oracleddl:procedureOperand mixin
+[oracleddl:alterProfileStatement]       > ddl:alterable, ddl:statement, oracleddl:profileOperand mixin
+[oracleddl:alterResourceStatement]      > ddl:alterable, ddl:statement, oracleddl:resourceOperand mixin
+[oracleddl:alterRoleStatement]          > ddl:alterable, ddl:statement, oracleddl:roleOperand mixin
+[oracleddl:alterRollbackStatement]      > ddl:alterable, ddl:statement, oracleddl:rollbackOperand mixin
+[oracleddl:alterSequenceStatement]      > ddl:alterable, ddl:statement, oracleddl:sequenceOperand mixin
+[oracleddl:alterSessionStatement]       > ddl:alterable, ddl:statement, oracleddl:sessionOperand mixin
+[oracleddl:alterSystemStatement]        > ddl:alterable, ddl:statement, oracleddl:systemOperand mixin
+[oracleddl:alterTablespaceStatement]    > ddl:alterable, ddl:statement, oracleddl:tablespaceOperand mixin
+[oracleddl:alterTriggerStatement]       > ddl:alterable, ddl:statement, oracleddl:triggerOperand mixin
+[oracleddl:alterTypeStatement]          > ddl:alterable, ddl:statement, oracleddl:typeOperand mixin
+[oracleddl:alterUserStatement]          > ddl:alterable, ddl:statement, oracleddl:userOperand mixin
+[oracleddl:alterViewStatement]          > ddl:alterable, ddl:statement,       ddl:viewOperand mixin
+
+[oracleddl:alterTableStatement] > ddl:alterTableStatement mixin
+  - oracleddl:newTableName (STRING)
+  + oracleddl:renameColumn (ddl:renamable) = ddl:renamable multiple
+  + oracleddl:renameConstraint (ddl:renamable) = ddl:renamable multiple
+
+// =============================================================================
+// CREATE STATEMENTS
+// =============================================================================
+
+[oracleddl:createClusterStatement]      > ddl:creatable, ddl:statement, oracleddl:clusterOperand mixin
+[oracleddl:createContextStatement]      > ddl:creatable, ddl:statement, oracleddl:contextOperand mixin
+[oracleddl:createControlfileStatement]  > ddl:creatable, ddl:statement, oracleddl:controlfileOperand mixin
+[oracleddl:createDatabaseStatement]     > ddl:creatable, ddl:statement, oracleddl:databaseOperand mixin
+[oracleddl:createDimensionStatement]    > ddl:creatable, ddl:statement, oracleddl:dimensionOperand mixin
+[oracleddl:createDirectoryStatement]    > ddl:creatable, ddl:statement, oracleddl:directoryOperand mixin
+[oracleddl:createDiskgroupStatement]    > ddl:creatable, ddl:statement, oracleddl:diskgroupOperand mixin
+[oracleddl:createFunctionStatement]     > ddl:creatable, ddl:statement, oracleddl:functionOperand mixin
+[oracleddl:createIndexStatement]        > ddl:creatable, ddl:statement, oracleddl:indexOperand mixin
+  - oracleddl:tableName (string) mandatory
+  - oracleddl:unique (boolean)
+  - oracleddl:bitmap (boolean)
+  + * (ddl:columnReference) = ddl:columnReference multiple
+[oracleddl:createIndexTypeStatement]    > ddl:creatable, ddl:statement, oracleddl:indextypeOperand mixin
+[oracleddl:createJavaStatement]         > ddl:creatable, ddl:statement, oracleddl:javaOperand mixin
+[oracleddl:createLibraryStatement]      > ddl:creatable, ddl:statement, oracleddl:libraryOperand mixin
+[oracleddl:createMaterializedStatement] > ddl:creatable, ddl:statement, oracleddl:materializedOperand mixin
+[oracleddl:createOperatorStatement]     > ddl:creatable, ddl:statement, oracleddl:operatorOperand mixin
+[oracleddl:createOutlineStatement]      > ddl:creatable, ddl:statement, oracleddl:outlineOperand mixin
+[oracleddl:createPackageStatement]      > ddl:creatable, ddl:statement, oracleddl:packageOperand mixin
+[oracleddl:createPfileStatement]        > ddl:creatable, ddl:statement, oracleddl:pfileOperand mixin
+[oracleddl:createProcedureStatement]    > ddl:creatable, ddl:statement, oracleddl:procedureOperand mixin
+[oracleddl:createRoleStatement]         > ddl:creatable, ddl:statement, oracleddl:roleOperand mixin
+[oracleddl:createRollbackStatement]     > ddl:creatable, ddl:statement, oracleddl:rollbackOperand mixin
+[oracleddl:createSequenceStatement]     > ddl:creatable, ddl:statement, oracleddl:sequenceOperand mixin
+[oracleddl:createSpfileStatement]       > ddl:creatable, ddl:statement, oracleddl:spfileOperand mixin
+[oracleddl:createSynonymStatement]      > ddl:creatable, ddl:statement, oracleddl:synonymOperand mixin
+[oracleddl:createTablespaceStatement]   > ddl:creatable, ddl:statement, oracleddl:tablespaceOperand mixin
+[oracleddl:createTriggerStatement]      > ddl:creatable, ddl:statement, oracleddl:triggerOperand mixin
+[oracleddl:createTypeStatement]         > ddl:creatable, ddl:statement, oracleddl:typeOperand mixin
+[oracleddl:createUserStatement]         > ddl:creatable, ddl:statement, oracleddl:userOperand mixin
+
+// =============================================================================
+// DROP STATEMENTS
+// =============================================================================
+
+[oracleddl:dropClusterStatement]        > ddl:droppable, ddl:statement, oracleddl:clusterOperand mixin
+[oracleddl:dropContextStatement]        > ddl:droppable, ddl:statement, oracleddl:contextOperand mixin
+[oracleddl:dropDatabaseStatement]       > ddl:droppable, ddl:statement, oracleddl:databaseOperand mixin
+[oracleddl:dropDimensionStatement]      > ddl:droppable, ddl:statement, oracleddl:dimensionOperand mixin
+[oracleddl:dropDirectoryStatement]      > ddl:droppable, ddl:statement, oracleddl:directoryOperand mixin
+[oracleddl:dropDiskgroupStatement]      > ddl:droppable, ddl:statement, oracleddl:diskgroupOperand mixin
+[oracleddl:dropFunctionStatement]       > ddl:droppable, ddl:statement, oracleddl:functionOperand mixin
+[oracleddl:dropIndexStatement]          > ddl:droppable, ddl:statement, oracleddl:indexOperand mixin
+[oracleddl:dropIndextypeStatement]      > ddl:droppable, ddl:statement, oracleddl:indextypeOperand mixin
+[oracleddl:dropJavaStatement]           > ddl:droppable, ddl:statement, oracleddl:javaOperand mixin
+[oracleddl:dropLibraryStatement]        > ddl:droppable, ddl:statement, oracleddl:libraryOperand mixin
+[oracleddl:dropMaterializedStatement]   > ddl:droppable, ddl:statement, oracleddl:materializedOperand mixin
+[oracleddl:dropOperatorStatement]       > ddl:droppable, ddl:statement, oracleddl:operatorOperand mixin
+[oracleddl:dropOutlineStatement]        > ddl:droppable, ddl:statement, oracleddl:outlineOperand mixin
+[oracleddl:dropPackageStatement]        > ddl:droppable, ddl:statement, oracleddl:packageOperand mixin
+[oracleddl:dropProcedureStatement]      > ddl:droppable, ddl:statement, oracleddl:procedureOperand mixin
+[oracleddl:dropProfileStatement]        > ddl:droppable, ddl:statement, oracleddl:profileOperand mixin
+[oracleddl:dropRoleStatement]           > ddl:droppable, ddl:statement, oracleddl:roleOperand mixin
+[oracleddl:dropRollbackStatement]       > ddl:droppable, ddl:statement, oracleddl:rollbackOperand mixin
+[oracleddl:dropSequenceStatement]       > ddl:droppable, ddl:statement, oracleddl:sequenceOperand mixin
+[oracleddl:dropSynonymStatement]        > ddl:droppable, ddl:statement, oracleddl:synonymOperand mixin
+[oracleddl:dropTablespaceStatement]     > ddl:droppable, ddl:statement, oracleddl:tablespaceOperand mixin
+[oracleddl:dropTriggerStatement]        > ddl:droppable, ddl:statement, oracleddl:triggerOperand mixin
+[oracleddl:dropTypeStatement]           > ddl:droppable, ddl:statement, oracleddl:typeOperand mixin
+[oracleddl:dropUserStatement]           > ddl:droppable, ddl:statement, oracleddl:userOperand mixin
+
+// =============================================================================
+// MISC STATEMENTS
+// =============================================================================
+
+[oracleddl:analyzeStatement]         > ddl:statement mixin
+[oracleddl:associateStatisticsStatement]     > ddl:statement mixin
+[oracleddl:auditStatement]           > ddl:statement mixin
+[oracleddl:commitStatement]          > ddl:statement mixin
+[oracleddl:commentOnStatement]       > ddl:statement, oracleddl:commentOperand mixin
+  - oracleddl:targetObjectType (STRING) mandatory
+  - oracleddl:targetObjectName (STRING)
+  - oracleddl:comment (STRING) mandatory
+[oracleddl:disassociateStatisticsStatement]     > ddl:statement mixin
+[oracleddl:explainPlanStatement]     > ddl:statement mixin
+[oracleddl:flashbackStatement]       > ddl:statement mixin
+[oracleddl:lockTableStatement]       > ddl:statement mixin
+[oracleddl:mergeStatement]           > ddl:statement mixin
+[oracleddl:nestedTableStatement]     > ddl:statement mixin
+[oracleddl:noauditStatement]         > ddl:statement mixin
+[oracleddl:purgeStatement]           > ddl:statement mixin
+[oracleddl:renameStatement]          > ddl:statement mixin
+[oracleddl:revokeStatement]          > ddl:statement mixin
+[oracleddl:rollbackStatement]        > ddl:statement mixin
+[oracleddl:setConstraintsStatement]  > ddl:statement, ddl:settable mixin
+[oracleddl:setRoleStatement]         > ddl:statement, ddl:settable mixin
+[oracleddl:setTransactionStatement]  > ddl:statement, ddl:settable mixin
+[oracleddl:truncateStatement]        > ddl:statement mixin


Property changes on: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/oracle/OracleDdl.cnd
___________________________________________________________________
Name: svn:executable
   + *

Deleted: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -1,174 +0,0 @@
-/*
- * JBoss DNA (http://www.jboss.org/dna)
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership.  Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- * See the AUTHORS.txt file in the distribution for a full listing of 
- * individual contributors. 
- *
- * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
- * is licensed to you under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * JBoss DNA is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
- 
- //------------------------------------------------------------------------------
-// N A M E S P A C E S
-//------------------------------------------------------------------------------
-<jcr='http://www.jcp.org/jcr/1.0'>
-<nt='http://www.jcp.org/jcr/nt/1.0'>
-<mix='http://www.jcp.org/jcr/mix/1.0'>
-<ddl='http://jboss.org/dna/ddl/1.0'>
-<postgresddl='http://jboss.org/dna/ddl/postgres/1.0'>
-
-// =============================================================================
-// OPERANDS
-// =============================================================================
-[postgresddl:aggregateOperand]      < ddl:operand abstract
-[postgresddl:caseOperand]           < ddl:operand abstract
-[postgresddl:contraintTriggerOperand] < ddl:operand abstract
-[postgresddl:conversionOperand]     < ddl:operand abstract
-[postgresddl:databaseOperand]       < ddl:operand abstract
-[postgresddl:foreignDataOperand]    < ddl:operand abstract
-[postgresddl:groupOperand]          < ddl:operand abstract
-[postgresddl:functionOperand]       < ddl:operand abstract
-[postgresddl:indexOperand]          < ddl:operand abstract
-[postgresddl:languageOperand]       < ddl:operand abstract
-[postgresddl:operatorOperand]       < ddl:operand abstract
-[postgresddl:ownedByOperand]        < ddl:operand abstract
-[postgresddl:roleOperand]           < ddl:operand abstract
-[postgresddl:ruleOperand]           < ddl:operand abstract
-[postgresddl:sequenceOperand]       < ddl:operand abstract
-[postgresddl:serverOperand]         < ddl:operand abstract
-[postgresddl:tablespaceOperand]     < ddl:operand abstract
-[postgresddl:textSearchOperand]     < ddl:operand abstract
-[postgresddl:triggerOperand]        < ddl:operand abstract
-[postgresddl:typeOperand]           < ddl:operand abstract
-[postgresddl:userOperand]           < ddl:operand abstract
-[postgresddl:userMappingOperand]    < ddl:operand abstract
-
-
-// =============================================================================
-// ALTER STATEMENTS
-// =============================================================================
-[postgresddl:alterAggregateStatement]           > ddl:alterable, ddl:statement, postgresddl:aggregateOperand mixin
-[postgresddl:alterConversionStatement]          > ddl:alterable, ddl:statement, postgresddl:conversionOperand mixin
-[postgresddl:alterDatabaseStatement]            > ddl:alterable, ddl:statement, postgresddl:databaseOperand mixin
-[postgresddl:alterForeignDataWrapperStatement]  > ddl:alterable, ddl:statement, postgresddl:foreignDataOperand mixin
-[postgresddl:alterFunctionStatement]            > ddl:alterable, ddl:statement, postgresddl:functionOperand mixin
-[postgresddl:alterGroupStatement]               > ddl:alterable, ddl:statement, postgresddl:groupOperand mixin
-[postgresddl:alterIndexStatement]               > ddl:alterable, ddl:statement, postgresddl:indexOperand mixin
-[postgresddl:alterLanguageStatement]            > ddl:alterable, ddl:statement, postgresddl:languageOperand mixin
-[postgresddl:alterOperatorStatement]            > ddl:alterable, ddl:statement, postgresddl:operatorOperand mixin
-[postgresddl:alterRoleStatement]                > ddl:alterable, ddl:statement, postgresddl:roleOperand mixin
-[postgresddl:alterSchemaStatement]              > ddl:alterable, ddl:statement, ddl:schemaOperand mixin
-[postgresddl:alterSequenceStatement]            > ddl:alterable, ddl:statement, postgresddl:sequenceOperand mixin
-[postgresddl:alterServerStatement]              > ddl:alterable, ddl:statement, postgresddl:serverOperand mixin
-[postgresddl:alterTablespaceStatement]          > ddl:alterable, ddl:statement, postgresddl:tablespaceOperand mixin
-[postgresddl:alterTextSearchStatement]          > ddl:alterable, ddl:statement, postgresddl:textSearchOperand mixin
-[postgresddl:alterTriggerStatement]             > ddl:alterable, ddl:statement, postgresddl:triggerOperand mixin
-[postgresddl:alterTypeStatement]                > ddl:alterable, ddl:statement, postgresddl:typeOperand mixin
-[postgresddl:alterUserStatement]                > ddl:alterable, ddl:statement, postgresddl:userOperand mixin
-[postgresddl:alterUserMappingStatement]         > ddl:alterable, ddl:statement, postgresddl:userMappingOperand mixin
-[postgresddl:alterViewStatement]                > ddl:alterable, ddl:statement, postgresddl:viewOperand mixin
-
-[postgresddl:alterTableStatement] > ddl:alterTableStatement mixin
-  - postgresddl:newTableName (STRING)
-  - postgresddl:schemaName (STRING)
-  + postgresddl:renameColumn (ddl:renamable) = ddl:renamable multiple
-
-  
-// =============================================================================
-// CREATE STATEMENTS
-// =============================================================================
-
-[postgresddl:createAggregateStatement]          > ddl:creatable, ddl:statement, postgresddl:aggregateOperand mixin
-[postgresddl:createCastStatement]               > ddl:creatable, ddl:statement, postgresddl:castOperand mixin
-[postgresddl:createConstraintTriggerStatement]  > ddl:creatable, ddl:statement, postgresddl:constraintTriggerOperand mixin
-[postgresddl:createConversionStatement]         > ddl:creatable, ddl:statement, postgresddl:conversionOperand mixin
-[postgresddl:createDatabaseStatement]           > ddl:creatable, ddl:statement, postgresddl:databaseOperand mixin
-[postgresddl:createForeignDataWrapperStatement] > ddl:creatable, ddl:statement, postgresddl:foreignDataOperand mixin
-[postgresddl:createFunctionStatement]           > ddl:creatable, ddl:statement, postgresddl:functionOperand mixin
-[postgresddl:createGroupStatement]              > ddl:creatable, ddl:statement, postgresddl:groupOperand mixin
-[postgresddl:createIndexStatement]              > ddl:creatable, ddl:statement, postgresddl:indexOperand mixin
-[postgresddl:createLanguageStatement]           > ddl:creatable, ddl:statement, postgresddl:languageOperand mixin
-[postgresddl:createOperatorStatement]           > ddl:creatable, ddl:statement, postgresddl:operatorOperand mixin
-[postgresddl:createRoleStatement]               > ddl:creatable, ddl:statement, postgresddl:roleOperand mixin
-[postgresddl:createRuleStatement]               > ddl:creatable, ddl:statement, postgresddl:ruleOperand mixin
-[postgresddl:createSequenceStatement]           > ddl:creatable, ddl:statement, postgresddl:sequenceOperand mixin
-[postgresddl:createServerStatement]             > ddl:creatable, ddl:statement, postgresddl:serverOperand mixin
-[postgresddl:createTablespaceStatement]         > ddl:creatable, ddl:statement, postgresddl:tablespaceOperand mixin
-[postgresddl:createTextSearchStatement]         > ddl:creatable, ddl:statement, postgresddl:textSearchOperand mixin
-[postgresddl:createTriggerStatement]            > ddl:creatable, ddl:statement, postgresddl:triggerOperand mixin
-[postgresddl:createTypeStatement]               > ddl:creatable, ddl:statement, postgresddl:typeOperand mixin
-[postgresddl:createUserStatement]               > ddl:creatable, ddl:statement, postgresddl:userOperand mixin
-[postgresddl:createUserMappingStatement]        > ddl:creatable, ddl:statement, postgresddl:userMappingOperand mixin
-
-// =============================================================================
-// DROP STATEMENTS
-// =============================================================================
-
-[postgresddl:dropAggregateStatement]            > ddl:droppable, ddl:statement, postgresddl:aggregateOperand mixin
-[postgresddl:dropCastStatement]                 > ddl:droppable, ddl:statement, postgresddl:castOperand mixin
-[postgresddl:dropConstraintTriggerStatement]    > ddl:droppable, ddl:statement, postgresddl:constraintTriggerOperand mixin
-[postgresddl:dropConversionStatement]           > ddl:droppable, ddl:statement, postgresddl:conversionOperand mixin
-[postgresddl:dropDatabaseStatement]             > ddl:droppable, ddl:statement, postgresddl:databaseOperand mixin
-[postgresddl:dropForeignDataWrapperStatement]   > ddl:droppable, ddl:statement, postgresddl:foreignDataOperand mixin
-[postgresddl:dropFunctionStatement]             > ddl:droppable, ddl:statement, postgresddl:functionOperand mixin
-[postgresddl:dropGroupStatement]                > ddl:droppable, ddl:statement, postgresddl:groupOperand mixin
-[postgresddl:dropIndexStatement]                > ddl:droppable, ddl:statement, postgresddl:indexOperand mixin
-[postgresddl:dropLanguageStatement]             > ddl:droppable, ddl:statement, postgresddl:languageOperand mixin
-[postgresddl:dropOperatorStatement]             > ddl:droppable, ddl:statement, postgresddl:operatorOperand mixin
-[postgresddl:dropOwnedByStatement]              > ddl:droppable, ddl:statement, postgresddl:ownedByOperand mixin
-[postgresddl:dropRoleStatement]                 > ddl:droppable, ddl:statement, postgresddl:roleOperand mixin
-[postgresddl:dropRuleStatement]                 > ddl:droppable, ddl:statement, postgresddl:ruleOperand mixin
-[postgresddl:dropSequenceStatement]             > ddl:droppable, ddl:statement, postgresddl:sequenceOperand mixin
-[postgresddl:dropServerStatement]               > ddl:droppable, ddl:statement, postgresddl:serverOperand mixin
-[postgresddl:dropTablespaceStatement]           > ddl:droppable, ddl:statement, postgresddl:tablespaceOperand mixin
-[postgresddl:dropTextSearchStatement]           > ddl:droppable, ddl:statement, postgresddl:textSearchOperand mixin
-[postgresddl:dropTriggerStatement]              > ddl:droppable, ddl:statement, postgresddl:triggerOperand mixin
-[postgresddl:dropTypeStatement]                 > ddl:droppable, ddl:statement, postgresddl:typeOperand mixin
-[postgresddl:dropUserStatement]                 > ddl:droppable, ddl:statement, postgresddl:userOperand mixin
-[postgresddl:dropUserMappingStatement]          > ddl:droppable, ddl:statement, postgresddl:userMappingOperand mixin
-
-// =============================================================================
-// MISC STATEMENTS
-// =============================================================================
-
-[postgresddl:abortStatement]            > ddl:statement mixin
-[postgresddl:analyzeStatement]          > ddl:statement mixin
-[postgresddl:clusterStatement]          > ddl:statement mixin
-[postgresddl:commentOnStatement]        > ddl:statement mixin
-[postgresddl:copyStatement]             > ddl:statement mixin
-[postgresddl:deallocateStatement]       > ddl:statement mixin
-[postgresddl:declareStatement]          > ddl:statement mixin
-[postgresddl:discardStatement]          > ddl:statement mixin
-[postgresddl:explainStatement]          > ddl:statement mixin
-[postgresddl:fetchStatement]            > ddl:statement mixin
-[postgresddl:listenStatement]           > ddl:statement mixin
-[postgresddl:loadStatement]             > ddl:statement mixin
-[postgresddl:lockTableStatement]        > ddl:statement mixin
-[postgresddl:moveStatement]             > ddl:statement mixin
-[postgresddl:notifyStatement]           > ddl:statement mixin
-[postgresddl:prepareStatement]          > ddl:statement mixin
-[postgresddl:reassignOwnedStatement]    > ddl:statement mixin
-[postgresddl:reindexStatement]          > ddl:statement mixin
-[postgresddl:releaseSavepointStatement] > ddl:statement mixin
-[postgresddl:rollbackStatement]         > ddl:statement mixin
-[postgresddl:selectIntoStatement]       > ddl:statement mixin
-[postgresddl:showStatement]             > ddl:statement mixin
-[postgresddl:truncateStatement]         > ddl:statement mixin
-[postgresddl:unlistenStatement]         > ddl:statement mixin
-[postgresddl:vacuumStatement]           > ddl:statement mixin
-
-

Added: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd	                        (rev 0)
+++ trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd	2009-12-16 20:44:18 UTC (rev 1447)
@@ -0,0 +1,178 @@
+/*
+ * JBoss DNA (http://www.jboss.org/dna)
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership.  Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ * See the AUTHORS.txt file in the distribution for a full listing of 
+ * individual contributors. 
+ *
+ * JBoss DNA is free software. Unless otherwise indicated, all code in JBoss DNA
+ * is licensed to you under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * JBoss DNA is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+ 
+ //------------------------------------------------------------------------------
+// N A M E S P A C E S
+//------------------------------------------------------------------------------
+<jcr='http://www.jcp.org/jcr/1.0'>
+<nt='http://www.jcp.org/jcr/nt/1.0'>
+<mix='http://www.jcp.org/jcr/mix/1.0'>
+<ddl='http://www.jboss.org/dna/ddl/1.0'>
+<postgresddl='http://www.jboss.org/dna/ddl/postgres/1.0'>
+
+// =============================================================================
+// OPERANDS
+// =============================================================================
+[postgresddl:aggregateOperand]      > ddl:operand abstract
+[postgresddl:castOperand]           > ddl:operand abstract
+[postgresddl:commentOperand]      > ddl:operand abstract
+[postgresddl:constraintTriggerOperand] > ddl:operand abstract
+[postgresddl:conversionOperand]     > ddl:operand abstract
+[postgresddl:databaseOperand]       > ddl:operand abstract
+[postgresddl:foreignDataOperand]    > ddl:operand abstract
+[postgresddl:groupOperand]          > ddl:operand abstract
+[postgresddl:functionOperand]       > ddl:operand abstractmandatory
+[postgresddl:indexOperand]          > ddl:operand abstract
+[postgresddl:languageOperand]       > ddl:operand abstract
+[postgresddl:operatorOperand]       > ddl:operand abstract
+[postgresddl:ownedByOperand]        > ddl:operand abstract
+[postgresddl:roleOperand]           > ddl:operand abstract
+[postgresddl:ruleOperand]           > ddl:operand abstract
+[postgresddl:sequenceOperand]       > ddl:operand abstract
+[postgresddl:serverOperand]         > ddl:operand abstract
+[postgresddl:tablespaceOperand]     > ddl:operand abstract
+[postgresddl:textSearchOperand]     > ddl:operand abstract
+[postgresddl:triggerOperand]        > ddl:operand abstract
+[postgresddl:typeOperand]           > ddl:operand abstract
+[postgresddl:userOperand]           > ddl:operand abstract
+[postgresddl:userMappingOperand]    > ddl:operand abstract
+
+
+// =============================================================================
+// ALTER STATEMENTS
+// =============================================================================
+[postgresddl:alterAggregateStatement]           > ddl:alterable, ddl:statement, postgresddl:aggregateOperand mixin
+[postgresddl:alterConversionStatement]          > ddl:alterable, ddl:statement, postgresddl:conversionOperand mixin
+[postgresddl:alterDatabaseStatement]            > ddl:alterable, ddl:statement, postgresddl:databaseOperand mixin
+[postgresddl:alterForeignDataWrapperStatement]  > ddl:alterable, ddl:statement, postgresddl:foreignDataOperand mixin
+[postgresddl:alterFunctionStatement]            > ddl:alterable, ddl:statement, postgresddl:functionOperand mixin
+[postgresddl:alterGroupStatement]               > ddl:alterable, ddl:statement, postgresddl:groupOperand mixin
+[postgresddl:alterIndexStatement]               > ddl:alterable, ddl:statement, postgresddl:indexOperand mixin
+[postgresddl:alterLanguageStatement]            > ddl:alterable, ddl:statement, postgresddl:languageOperand mixin
+[postgresddl:alterOperatorStatement]            > ddl:alterable, ddl:statement, postgresddl:operatorOperand mixin
+[postgresddl:alterRoleStatement]                > ddl:alterable, ddl:statement, postgresddl:roleOperand mixin
+[postgresddl:alterSchemaStatement]              > ddl:alterable, ddl:statement,         ddl:schemaOperand mixin
+[postgresddl:alterSequenceStatement]            > ddl:alterable, ddl:statement, postgresddl:sequenceOperand mixin
+[postgresddl:alterServerStatement]              > ddl:alterable, ddl:statement, postgresddl:serverOperand mixin
+[postgresddl:alterTablespaceStatement]          > ddl:alterable, ddl:statement, postgresddl:tablespaceOperand mixin
+[postgresddl:alterTextSearchStatement]          > ddl:alterable, ddl:statement, postgresddl:textSearchOperand mixin
+[postgresddl:alterTriggerStatement]             > ddl:alterable, ddl:statement, postgresddl:triggerOperand mixin
+[postgresddl:alterTypeStatement]                > ddl:alterable, ddl:statement, postgresddl:typeOperand mixin
+[postgresddl:alterUserStatement]                > ddl:alterable, ddl:statement, postgresddl:userOperand mixin
+[postgresddl:alterUserMappingStatement]         > ddl:alterable, ddl:statement, postgresddl:userMappingOperand mixin
+[postgresddl:alterViewStatement]                > ddl:alterable, ddl:statement,         ddl:viewOperand mixin
+
+[postgresddl:alterTableStatement] > ddl:alterTableStatement mixin
+  - postgresddl:newTableName (STRING)
+  - postgresddl:schemaName (STRING)
+  + postgresddl:renameColumn (ddl:renamable) = ddl:renamable multiple
+
+  
+// =============================================================================
+// CREATE STATEMENTS
+// =============================================================================
+
+[postgresddl:createAggregateStatement]          > ddl:creatable, ddl:statement, postgresddl:aggregateOperand mixin
+[postgresddl:createCastStatement]               > ddl:creatable, ddl:statement, postgresddl:castOperand mixin
+[postgresddl:createConstraintTriggerStatement]  > ddl:creatable, ddl:statement, postgresddl:constraintTriggerOperand mixin
+[postgresddl:createConversionStatement]         > ddl:creatable, ddl:statement, postgresddl:conversionOperand mixin
+[postgresddl:createDatabaseStatement]           > ddl:creatable, ddl:statement, postgresddl:databaseOperand mixin
+[postgresddl:createForeignDataWrapperStatement] > ddl:creatable, ddl:statement, postgresddl:foreignDataOperand mixin
+[postgresddl:createFunctionStatement]           > ddl:creatable, ddl:statement, postgresddl:functionOperand mixin
+[postgresddl:createGroupStatement]              > ddl:creatable, ddl:statement, postgresddl:groupOperand mixin
+[postgresddl:createIndexStatement]              > ddl:creatable, ddl:statement, postgresddl:indexOperand mixin
+[postgresddl:createLanguageStatement]           > ddl:creatable, ddl:statement, postgresddl:languageOperand mixin
+[postgresddl:createOperatorStatement]           > ddl:creatable, ddl:statement, postgresddl:operatorOperand mixin
+[postgresddl:createRoleStatement]               > ddl:creatable, ddl:statement, postgresddl:roleOperand mixin
+[postgresddl:createRuleStatement]               > ddl:creatable, ddl:statement, postgresddl:ruleOperand mixin
+[postgresddl:createSequenceStatement]           > ddl:creatable, ddl:statement, postgresddl:sequenceOperand mixin
+[postgresddl:createServerStatement]             > ddl:creatable, ddl:statement, postgresddl:serverOperand mixin
+[postgresddl:createTablespaceStatement]         > ddl:creatable, ddl:statement, postgresddl:tablespaceOperand mixin
+[postgresddl:createTextSearchStatement]         > ddl:creatable, ddl:statement, postgresddl:textSearchOperand mixin
+[postgresddl:createTriggerStatement]            > ddl:creatable, ddl:statement, postgresddl:triggerOperand mixin
+[postgresddl:createTypeStatement]               > ddl:creatable, ddl:statement, postgresddl:typeOperand mixin
+[postgresddl:createUserStatement]               > ddl:creatable, ddl:statement, postgresddl:userOperand mixin
+[postgresddl:createUserMappingStatement]        > ddl:creatable, ddl:statement, postgresddl:userMappingOperand mixin
+
+// =============================================================================
+// DROP STATEMENTS
+// =============================================================================
+
+[postgresddl:dropAggregateStatement]            > ddl:droppable, ddl:statement, postgresddl:aggregateOperand mixin
+[postgresddl:dropCastStatement]                 > ddl:droppable, ddl:statement, postgresddl:castOperand mixin
+[postgresddl:dropConstraintTriggerStatement]    > ddl:droppable, ddl:statement, postgresddl:constraintTriggerOperand mixin
+[postgresddl:dropConversionStatement]           > ddl:droppable, ddl:statement, postgresddl:conversionOperand mixin
+[postgresddl:dropDatabaseStatement]             > ddl:droppable, ddl:statement, postgresddl:databaseOperand mixin
+[postgresddl:dropForeignDataWrapperStatement]   > ddl:droppable, ddl:statement, postgresddl:foreignDataOperand mixin
+[postgresddl:dropFunctionStatement]             > ddl:droppable, ddl:statement, postgresddl:functionOperand mixin
+[postgresddl:dropGroupStatement]                > ddl:droppable, ddl:statement, postgresddl:groupOperand mixin
+[postgresddl:dropIndexStatement]                > ddl:droppable, ddl:statement, postgresddl:indexOperand mixin
+[postgresddl:dropLanguageStatement]             > ddl:droppable, ddl:statement, postgresddl:languageOperand mixin
+[postgresddl:dropOperatorStatement]             > ddl:droppable, ddl:statement, postgresddl:operatorOperand mixin
+[postgresddl:dropOwnedByStatement]              > ddl:droppable, ddl:statement, postgresddl:ownedByOperand mixin
+[postgresddl:dropRoleStatement]                 > ddl:droppable, ddl:statement, postgresddl:roleOperand mixin
+[postgresddl:dropRuleStatement]                 > ddl:droppable, ddl:statement, postgresddl:ruleOperand mixin
+[postgresddl:dropSequenceStatement]             > ddl:droppable, ddl:statement, postgresddl:sequenceOperand mixin
+[postgresddl:dropServerStatement]               > ddl:droppable, ddl:statement, postgresddl:serverOperand mixin
+[postgresddl:dropTablespaceStatement]           > ddl:droppable, ddl:statement, postgresddl:tablespaceOperand mixin
+[postgresddl:dropTextSearchStatement]           > ddl:droppable, ddl:statement, postgresddl:textSearchOperand mixin
+[postgresddl:dropTriggerStatement]              > ddl:droppable, ddl:statement, postgresddl:triggerOperand mixin
+[postgresddl:dropTypeStatement]                 > ddl:droppable, ddl:statement, postgresddl:typeOperand mixin
+[postgresddl:dropUserStatement]                 > ddl:droppable, ddl:statement, postgresddl:userOperand mixin
+[postgresddl:dropUserMappingStatement]          > ddl:droppable, ddl:statement, postgresddl:userMappingOperand mixin
+
+// =============================================================================
+// MISC STATEMENTS
+// =============================================================================
+
+[postgresddl:abortStatement]            > ddl:statement mixin
+[postgresddl:analyzeStatement]          > ddl:statement mixin
+[postgresddl:clusterStatement]          > ddl:statement mixin
+[postgresddl:commentOnStatement]        > ddl:statement, postgresddl:commentOperand mixin
+  - postgresddl:targetObjectType (STRING) mandatory
+  - postgresddl:targetObjectName (STRING)
+  - postgresddl:comment (STRING) mandatory
+[postgresddl:copyStatement]             > ddl:statement mixin
+[postgresddl:deallocateStatement]       > ddl:statement mixin
+[postgresddl:declareStatement]          > ddl:statement mixin
+[postgresddl:discardStatement]          > ddl:statement mixin
+[postgresddl:explainStatement]          > ddl:statement mixin
+[postgresddl:fetchStatement]            > ddl:statement mixin
+[postgresddl:listenStatement]           > ddl:statement mixin
+[postgresddl:loadStatement]             > ddl:statement mixin
+[postgresddl:lockTableStatement]        > ddl:statement mixin
+[postgresddl:moveStatement]             > ddl:statement mixin
+[postgresddl:notifyStatement]           > ddl:statement mixin
+[postgresddl:prepareStatement]          > ddl:statement mixin
+[postgresddl:reassignOwnedStatement]    > ddl:statement mixin
+[postgresddl:reindexStatement]          > ddl:statement mixin
+[postgresddl:releaseSavepointStatement] > ddl:statement mixin
+[postgresddl:rollbackStatement]         > ddl:statement mixin
+[postgresddl:selectIntoStatement]       > ddl:statement mixin
+[postgresddl:showStatement]             > ddl:statement mixin
+[postgresddl:truncateStatement]         > ddl:statement mixin
+[postgresddl:unlistenStatement]         > ddl:statement mixin
+[postgresddl:vacuumStatement]           > ddl:statement mixin
+
+


Property changes on: trunk/extensions/dna-sequencer-ddl/src/main/resources/org/jboss/dna/sequencer/ddl/dialect/postgres/PostgresDdl.cnd
___________________________________________________________________
Name: svn:executable
   + *

Modified: trunk/extensions/dna-sequencer-ddl/src/test/java/org/jboss/dna/sequencer/ddl/DdlParsersTest.java
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/test/java/org/jboss/dna/sequencer/ddl/DdlParsersTest.java	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/test/java/org/jboss/dna/sequencer/ddl/DdlParsersTest.java	2009-12-16 20:44:18 UTC (rev 1447)
@@ -180,11 +180,11 @@
     @Test
     public void shouldParseUntypedPostgresFile() {
     	printTest("shouldParseUntypedPostgresFile()");
-      	String content = getFileContent(DDL_TEST_FILE_PATH + "dialect/postgres/postgres_test_statements_2.ddl");
+      	String content = getFileContent(DDL_TEST_FILE_PATH + "dialect/postgres/postgres_test_statements_1.ddl");
 
         parsers.parse(content, rootNode);
 
-        assertEquals("POSTGRES", rootNode.getProperty(StandardDdlLexicon.PARSER_ID).getFirstValue());
+        assertThat("POSTGRES", is((String)rootNode.getProperty(StandardDdlLexicon.PARSER_ID).getFirstValue()));
     }
     
     @Test

Modified: trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_1.ddl
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_1.ddl	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_1.ddl	2009-12-16 20:44:18 UTC (rev 1447)
@@ -71,10 +71,10 @@
 
 --ALTER FOREIGN DATA WRAPPER name
 --    [ VALIDATOR valfunction | NO VALIDATOR ]
---    [ OPTIONS ( [ ADD | SET | DROP ] option [’value’] [, ... ]) ]
+--    [ OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ]) ]
 --ALTER FOREIGN DATA WRAPPER name OWNER TO new_owner
 
-ALTER FOREIGN DATA WRAPPER dbi OPTIONS (ADD foo ’1’, DROP ’bar’);
+ALTER FOREIGN DATA WRAPPER dbi OPTIONS (ADD foo '1', DROP 'bar');
 
 ALTER FOREIGN DATA WRAPPER dbi VALIDATOR bob.myvalidator;
 
@@ -211,8 +211,8 @@
 --	    | INHERIT | NOINHERIT
 --	    | LOGIN | NOLOGIN
 --	    | CONNECTION LIMIT connlimit
---	    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD ’password ’
---	    | VALID UNTIL ’timestamp’
+--	    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password '
+--	    | VALID UNTIL 'timestamp'
 --
 --ALTER ROLE name RENAME TO newname
 --ALTER ROLE name      SET configuration_parameter { TO | = } { value | DEFAULT }
@@ -220,13 +220,13 @@
 --ALTER ROLE name      RESET configuration_parameter
 --ALTER ROLE name      RESET ALL
 
-ALTER ROLE davide WITH PASSWORD ’hu8jmn3’;
+ALTER ROLE davide WITH PASSWORD 'hu8jmn3';
 
 ALTER ROLE davide WITH PASSWORD NULL;
 
-ALTER ROLE chris VALID UNTIL ’May 4 12:00:00 2015 +1’;
+ALTER ROLE chris VALID UNTIL 'May 4 12:00:00 2015 +1';
 
-ALTER ROLE fred VALID UNTIL ’infinity’;
+ALTER ROLE fred VALID UNTIL 'infinity';
 
 ALTER ROLE miriam CREATEROLE CREATEDB;
 -- 40 STATEMENTS *******************************************************
@@ -250,13 +250,13 @@
 
 ALTER SEQUENCE serial RESTART WITH 105;
 
---ALTER SERVER servername [ VERSION ’newversion’ ]
---    [ OPTIONS ( [ ADD | SET | DROP ] option [’value’] [, ... ] ) ]
+--ALTER SERVER servername [ VERSION 'newversion' ]
+--    [ OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] ) ]
 --ALTER SERVER servername OWNER TO new_owner
 
-ALTER SERVER foo OPTIONS (host ’foo’, dbname ’foodb’);
+ALTER SERVER foo OPTIONS (host 'foo', dbname 'foodb');
 
-ALTER SERVER foo VERSION ’8.4’ OPTIONS (SET host ’baz’);
+ALTER SERVER foo VERSION '8.4' OPTIONS (SET host 'baz');
 
 --ALTER TABLE [ ONLY ] name [ * ]
 --    action [, ... ]
@@ -309,13 +309,13 @@
 ALTER TABLE foo
     ALTER COLUMN foo_timestamp SET DATA TYPE timestamp with time zone
     USING
-        timestamp with time zone ’epoch’ + foo_timestamp * interval ’1 second’;
+        timestamp with time zone 'epoch' + foo_timestamp * interval '1 second';
 -- 50 STATEMENTS *******************************************************
 ALTER TABLE foo
     ALTER COLUMN foo_timestamp DROP DEFAULT,
     ALTER COLUMN foo_timestamp TYPE timestamp with time zone
     USING
-        timestamp with time zone ’epoch’ + foo_timestamp *GO interval ’1 second’,
+        timestamp with time zone 'epoch' + foo_timestamp *GO interval '1 second',
     ALTER COLUMN foo_timestamp SET DEFAULT now();
 
 ALTER TABLE distributors RENAME COLUMN address TO city;
@@ -407,8 +407,8 @@
 --    | INHERIT | NOINHERIT
 --    | LOGIN | NOLOGIN
 --    | CONNECTION LIMIT connlimit
---    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD ’password ’
---    | VALID UNTIL ’timestamp’
+--    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password '
+--    | VALID UNTIL 'timestamp'
 --ALTER USER name RENAME TO newname
 --ALTER USER name      SET configuration_parameter { TO | = } { value | DEFAULT }
 --ALTER USER name      SET configuration_parameter FROM CURRENT
@@ -417,9 +417,9 @@
 
 --ALTER USER MAPPING FOR { username | USER | CURRENT_USER | PUBLIC }
 --    SERVER servername
---    OPTIONS ( [ ADD | SET | DROP ] option [’value’] [, ... ] )
+--    OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )
 
-ALTER USER MAPPING FOR bob SERVER foo OPTIONS (user ’bob’, password ’public’);
+ALTER USER MAPPING FOR bob SERVER foo OPTIONS (user 'bob', password 'public');
 
 --ALTER VIEW name     ALTER [ COLUMN ] column SET DEFAULT expression
 --ALTER VIEW name     ALTER [ COLUMN ] column DROP DEFAULT

Modified: trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_2.ddl
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_2.ddl	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_2.ddl	2009-12-16 20:44:18 UTC (rev 1447)
@@ -31,39 +31,39 @@
 --  TRIGGER trigger_name ON table_name |
 --  TYPE object_name |
 --  VIEW object_name
---} IS ’text’
+--} IS 'text'
 
-COMMENT ON TABLE mytable IS ’This is my table.’;
+COMMENT ON TABLE mytable IS 'This is my table.';
 COMMENT ON TABLE mytable IS NULL;
-COMMENT ON AGGREGATE my_aggregate (double precision) IS ’Computes sample variance’;
-COMMENT ON CAST (text AS int4) IS ’Allow casts from text to int4’;
-COMMENT ON COLUMN my_table.my_column IS ’Employee ID number’;
-COMMENT ON CONVERSION my_conv IS ’Conversion to UTF8’;
-COMMENT ON DATABASE my_database IS ’Development Database’;
-COMMENT ON DOMAIN my_domain IS ’Email Address Domain’;
-COMMENT ON FUNCTION my_function (timestamp) IS ’Returns Roman Numeral’;
-COMMENT ON INDEX my_index IS ’Enforces uniqueness on employee ID’;
+COMMENT ON AGGREGATE my_aggregate (double precision) IS 'Computes sample variance';
+COMMENT ON CAST (text AS int4) IS 'Allow casts from text to int4';
+COMMENT ON COLUMN my_table.my_column IS 'Employee ID number';
+COMMENT ON CONVERSION my_conv IS 'Conversion to UTF8';
+COMMENT ON DATABASE my_database IS 'Development Database';
+COMMENT ON DOMAIN my_domain IS 'Email Address Domain';
+COMMENT ON FUNCTION my_function (timestamp) IS 'Returns Roman Numeral';
+COMMENT ON INDEX my_index IS 'Enforces uniqueness on employee ID';
 -- 10 STATEMENTS *******************************************************
-COMMENT ON LANGUAGE plpython IS ’Python support for stored procedures’;
-COMMENT ON LARGE OBJECT 346344 IS ’Planning document’;
-COMMENT ON OPERATOR ^ (text, text) IS ’Performs intersection of two texts’;
-COMMENT ON OPERATOR - (NONE, text) IS ’This is a prefix operator on text’;
-COMMENT ON OPERATOR CLASS int4ops USING btree IS ’4 byte integer operators for btrees’;
-COMMENT ON OPERATOR FAMILY integer_ops USING btree IS ’all integer operators for btrees’;
-COMMENT ON ROLE my_role IS ’Administration group for finance tables’;
-COMMENT ON RULE my_rule ON my_table IS ’Logs updates of employee records’;
-COMMENT ON SCHEMA my_schema IS ’Departmental data’;
-COMMENT ON SEQUENCE my_sequence IS ’Used to generate primary keys’;
+COMMENT ON LANGUAGE plpython IS 'Python support for stored procedures';
+COMMENT ON LARGE OBJECT 346344 IS 'Planning document';
+COMMENT ON OPERATOR ^ (text, text) IS 'Performs intersection of two texts';
+COMMENT ON OPERATOR - (NONE, text) IS 'This is a prefix operator on text';
+COMMENT ON OPERATOR CLASS int4ops USING btree IS '4 byte integer operators for btrees';
+COMMENT ON OPERATOR FAMILY integer_ops USING btree IS 'all integer operators for btrees';
+COMMENT ON ROLE my_role IS 'Administration group for finance tables';
+COMMENT ON RULE my_rule ON my_table IS 'Logs updates of employee records';
+COMMENT ON SCHEMA my_schema IS 'Departmental data';
+COMMENT ON SEQUENCE my_sequence IS 'Used to generate primary keys';
 -- 20 STATEMENTS *******************************************************
-COMMENT ON TABLE my_schema.my_table IS ’Employee Information’;
-COMMENT ON TABLESPACE my_tablespace IS ’Tablespace for indexes’;
-COMMENT ON TEXT SEARCH CONFIGURATION my_config IS ’Special word filtering’;
-COMMENT ON TEXT SEARCH DICTIONARY swedish IS ’Snowball stemmer for swedish language’;
-COMMENT ON TEXT SEARCH PARSER my_parser IS ’Splits text into words’;
-COMMENT ON TEXT SEARCH TEMPLATE snowball IS ’Snowball stemmer’;
-COMMENT ON TRIGGER my_trigger ON my_table IS ’Used for RI’;
-COMMENT ON TYPE complex IS ’Complex number data type’;
-COMMENT ON VIEW my_view IS ’View of departmental costs’;
+COMMENT ON TABLE my_schema.my_table IS 'Employee Information';
+COMMENT ON TABLESPACE my_tablespace IS 'Tablespace for indexes';
+COMMENT ON TEXT SEARCH CONFIGURATION my_config IS 'Special word filtering';
+COMMENT ON TEXT SEARCH DICTIONARY swedish IS 'Snowball stemmer for swedish language';
+COMMENT ON TEXT SEARCH PARSER my_parser IS 'Splits text into words';
+COMMENT ON TEXT SEARCH TEMPLATE snowball IS 'Snowball stemmer';
+COMMENT ON TRIGGER my_trigger ON my_table IS 'Used for RI';
+COMMENT ON TYPE complex IS 'Complex number data type';
+COMMENT ON VIEW my_view IS 'View of departmental costs';
 --COMMIT [ WORK | TRANSACTION ]
 
 COMMIT WORK;
@@ -74,36 +74,36 @@
 
 --COMMIT PREPARED transaction_id;
 
-COMMIT PREPARED ’foobar’;
+COMMIT PREPARED 'foobar';
 
 --COPY tablename [ ( column [, ...] ) ]
---    FROM { ’filename’ | STDIN }
+--    FROM { 'filename' | STDIN }
 --    [ [ WITH ]
 --           [ BINARY ]
 --           [ OIDS ]
---           [ DELIMITER [ AS ] ’delimiter ’ ]
---           [ NULL [ AS ] ’null string ’ ]
+--           [ DELIMITER [ AS ] 'delimiter ' ]
+--           [ NULL [ AS ] 'null string ' ]
 --           [ CSV [ HEADER ]
---                 [ QUOTE [ AS ] ’quote’ ]
---                 [ ESCAPE [ AS ] ’escape’ ]
+--                 [ QUOTE [ AS ] 'quote' ]
+--                 [ ESCAPE [ AS ] 'escape' ]
 --                 [ FORCE NOT NULL column [, ...] ]
 --COPY { tablename [ ( column [, ...] ) ] | ( query ) }
---    TO { ’filename’ | STDOUT }
+--    TO { 'filename' | STDOUT }
 --    [ [ WITH ]
 --           [ BINARY ]
 --           [ OIDS ]
---           [ DELIMITER [ AS ] ’delimiter ’ ]
---           [ NULL [ AS ] ’null string ’ ]
+--           [ DELIMITER [ AS ] 'delimiter ' ]
+--           [ NULL [ AS ] 'null string ' ]
 --           [ CSV [ HEADER ]
---                 [ QUOTE [ AS ] ’quote’ ]
---                 [ ESCAPE [ AS ] ’escape’ ]
+--                 [ QUOTE [ AS ] 'quote' ]
+--                 [ ESCAPE [ AS ] 'escape' ]
 --                 [ FORCE QUOTE column [, ...] ]
 
 COPY country TO STDOUT WITH DELIMITER '|';
 
 COPY country FROM '/usr1/proj/bray/sql/country_data';
 
-COPY (SELECT * FROM country WHERE country_name LIKE ’A%’) TO ’/usr1/proj/bray/sql/a_list_co’;
+COPY (SELECT * FROM country WHERE country_name LIKE 'A%') TO '/usr1/proj/bray/sql/a_list_co';
 
 --CREATE AGGREGATE name ( input_data_type [ , ... ] ) (
 --    SFUNC = sfunc,
@@ -146,7 +146,7 @@
 --CREATE [ DEFAULT ] CONVERSION name
 --    FOR source_encoding TO dest_encoding FROM funcname
 
-CREATE CONVERSION myconv FOR ’UTF8’ TO ’LATIN1’ FROM myfunc;
+CREATE CONVERSION myconv FOR 'UTF8' TO 'LATIN1' FROM myfunc;
 
 --CREATE DATABASE name
 --    [ [ WITH ] [ OWNER [=] dbowner ]
@@ -161,7 +161,7 @@
 
 CREATE DATABASE sales OWNER salesapp TABLESPACE salesspace;
 -- 40 STATEMENTS *******************************************************
-CREATE DATABASE music ENCODING ’LATIN1’ TEMPLATE template0;
+CREATE DATABASE music ENCODING 'LATIN1' TEMPLATE template0;
 
 
 --CREATE DOMAIN name [ AS ] data_type
@@ -173,20 +173,20 @@
 
 CREATE DOMAIN us_postal_code AS TEXT
 	CHECK(
-	   VALUE ~ ’^\\d{5}$’
-	OR VALUE ~ ’^\\d{5}-\\d{4}$’
+	   VALUE ~ '^\\d{5}$'
+	OR VALUE ~ '^\\d{5}-\\d{4}$'
 	);
 
 --CREATE FOREIGN DATA WRAPPER name
 --    [ VALIDATOR valfunction | NO VALIDATOR ]
---    [ OPTIONS ( option ’value’ [, ... ] ) ]
+--    [ OPTIONS ( option 'value' [, ... ] ) ]
 
 CREATE FOREIGN DATA WRAPPER dummy;
 
 CREATE FOREIGN DATA WRAPPER postgresql VALIDATOR postgresql_fdw_validator;
 
 CREATE FOREIGN DATA WRAPPER mywrapper
-    OPTIONS (debug ’true’);
+    OPTIONS (debug 'true');
 
 --CREATE [ OR REPLACE ] FUNCTION
 --    name ( [ [ argmode ] [ argname ] argtype [ { DEFAULT | = } defexpr ] [, ...] ] )
@@ -200,13 +200,13 @@
 --    | COST execution_cost
 --    | ROWS result_rows
 --    | SET configuration_parameter { TO value | = value | FROM CURRENT }
---    | AS ’definition’
---    | AS ’obj_file’, ’link_symbol’
+--    | AS 'definition'
+--    | AS 'obj_file', 'link_symbol'
 --  } ...
 --    [ WITH ( attribute [, ...] ) ]
 
 CREATE FUNCTION add(integer, integer) RETURNS integer
-    AS ’select $1 + $2;’
+    AS 'select $1 + $2;'
     LANGUAGE SQL
     IMMUTABLE
     RETURNS NULL ON NULL INPUT;
@@ -217,15 +217,15 @@
         END;
 
 CREATE FUNCTION dup(in int, out f1 int, out f2 text)
-    AS $$ SELECT $1, CAST($1 AS text) || ’ is text’ $$
+    AS $$ SELECT $1, CAST($1 AS text) || ' is text' $$
     LANGUAGE SQL;
 
 CREATE FUNCTION dup(int) RETURNS dup_result
-    AS $$ SELECT $1, CAST($1 AS text) || ’ is text’ $$
+    AS $$ SELECT $1, CAST($1 AS text) || ' is text' $$
     LANGUAGE SQL;
 
 CREATE FUNCTION dup(int) RETURNS TABLE(f1 int, f2 text)
-    AS $$ SELECT $1, CAST($1 AS text) || ’ is text’ $$
+    AS $$ SELECT $1, CAST($1 AS text) || ' is text' $$
     LANGUAGE SQL;
 -- 50 STATEMENTS *******************************************************
 --CREATE GROUP name [ [ WITH ] option [ ... ] ]
@@ -236,8 +236,8 @@
 --    | CREATEUSER | NOCREATEUSER
 --    | INHERIT | NOINHERIT
 --    | LOGIN | NOLOGIN
---    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD ’password ’
---    | VALID UNTIL ’timestamp’
+--    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password '
+--    | VALID UNTIL 'timestamp'
 --    | IN ROLE rolename [, ...]
 --    | IN GROUP rolename [, ...]
 --    | ROLE rolename [, ...]
@@ -333,8 +333,8 @@
 --    | INHERIT | NOINHERIT
 --    | LOGIN | NOLOGIN
 --    | CONNECTION LIMIT connlimit
---    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD ’password ’
---    | VALID UNTIL ’timestamp’
+--    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password '
+--    | VALID UNTIL 'timestamp'
 --    | IN ROLE rolename [, ...]
 --    | IN GROUP rolename [, ...]
 --    | ROLE rolename [, ...]
@@ -344,9 +344,9 @@
 
 CREATE ROLE jonathan LOGIN;
 
-CREATE USER davide WITH PASSWORD ’jw8s0F4’;
+CREATE USER davide WITH PASSWORD 'jw8s0F4';
 
-CREATE ROLE miriam WITH LOGIN PASSWORD ’jw8s0F4’ VALID UNTIL ’2005-01-01’;
+CREATE ROLE miriam WITH LOGIN PASSWORD 'jw8s0F4' VALID UNTIL '2005-01-01';
 
 CREATE ROLE admin WITH CREATEDB CREATEROLE;
 
@@ -385,13 +385,13 @@
 
 CREATE SEQUENCE serial START 101;
 
---CREATE SERVER servername [ TYPE ’servertype’ ] [ VERSION ’serverversion’ ]
+--CREATE SERVER servername [ TYPE 'servertype' ] [ VERSION 'serverversion' ]
 --    FOREIGN DATA WRAPPER fdwname
---    [ OPTIONS ( option ’value’ [, ... ] ) ]
+--    [ OPTIONS ( option 'value' [, ... ] ) ]
 
 CREATE SERVER foo FOREIGN DATA WRAPPER "default";
 
-CREATE SERVER myserver FOREIGN DATA WRAPPER pgsql OPTIONS (host ’foo’, dbname ’foodb’, port);
+CREATE SERVER myserver FOREIGN DATA WRAPPER pgsql OPTIONS (host 'foo', dbname 'foodb', port);
        
 --CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name 
 --  ( [
@@ -436,7 +436,7 @@
 );
 
 CREATE TABLE distributors (
-     did    integer PRIMARY KEY DEFAULT nextval(’serial’),
+     did    integer PRIMARY KEY DEFAULT nextval('serial'),
      name   varchar(40) NOT NULL CHECK (name <> ”)
      
 );
@@ -487,8 +487,8 @@
 );
 
 CREATE TABLE distributors (
-    name      varchar(40) DEFAULT ’Luso Films’,
-    did       integer DEFAULT nextval(’distributors_serial’),
+    name      varchar(40) DEFAULT 'Luso Films',
+    did       integer DEFAULT nextval('distributors_serial'),
     modtime   timestamp DEFAULT current_timestamp
 );
 
@@ -530,19 +530,19 @@
 --          [ WITH [ NO ] DATA ]
 
 CREATE TABLE films_recent AS
-  SELECT * FROM films WHERE date_prod >= ’2002-01-01’;
+  SELECT * FROM films WHERE date_prod >= '2002-01-01';
 
 CREATE TABLE films2 AS
   TABLE films;
 
 CREATE TEMP TABLE films_recent WITH (OIDS) ON COMMIT DROP AS
-  EXECUTE recentfilms(’2002-01-01’);
+  EXECUTE recentfilms('2002-01-01');
 
---CREATE TABLESPACE tablespacename [ OWNER username ] LOCATION ’directory ’
+--CREATE TABLESPACE tablespacename [ OWNER username ] LOCATION 'directory '
 
-CREATE TABLESPACE dbspace LOCATION ’/data/dbs’;
+CREATE TABLESPACE dbspace LOCATION '/data/dbs';
 
-CREATE TABLESPACE indexspace OWNER genevieve LOCATION ’/data/indexes’;
+CREATE TABLESPACE indexspace OWNER genevieve LOCATION '/data/indexes';
 
 --CREATE TEXT SEARCH CONFIGURATION name (
 --    PARSER = parser_name |

Modified: trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_3.ddl
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_3.ddl	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_3.ddl	2009-12-16 20:44:18 UTC (rev 1447)
@@ -5,7 +5,7 @@
 --CREATE TYPE name AS
 --    ( attribute_name data_type [, ... ] )
 --CREATE TYPE name AS ENUM
---    ( ’label’ [, ... ] )
+--    ( 'label' [, ... ] )
 --CREATE TYPE name (
 --    INPUT = input_function,
 --    OUTPUT = output_function
@@ -29,7 +29,7 @@
 
 CREATE TYPE compfoo AS (f1 int, f2 text);
 
-CREATE TYPE bug_status AS ENUM (’new’, ’open’, ’closed’);
+CREATE TYPE bug_status AS ENUM ('new', 'open', 'closed');
 
 CREATE TYPE box;
 
@@ -60,8 +60,8 @@
 --    | INHERIT | NOINHERIT
 --    | LOGIN | NOLOGIN
 --    | CONNECTION LIMIT connlimit
---    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD ’password ’
---    | VALID UNTIL ’timestamp’
+--    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password '
+--    | VALID UNTIL 'timestamp'
 --    | IN ROLE rolename [, ...]
 --    | IN GROUP rolename [, ...]
 --    | ROLE rolename [, ...]
@@ -71,21 +71,21 @@
 
 --CREATE USER MAPPING FOR { username | USER | CURRENT_USER | PUBLIC }
 --    SERVER servername
---    [ OPTIONS ( option ’value’ [ , ... ] ) ]
+--    [ OPTIONS ( option 'value' [ , ... ] ) ]
 
-CREATE USER MAPPING FOR bob SERVER foo OPTIONS (user ’bob’, password ’secret’);
+CREATE USER MAPPING FOR bob SERVER foo OPTIONS (user 'bob', password 'secret');
 
 --CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] VIEW name [ ( column_name [, ...] ) ]
 --    AS query
 
-CREATE VIEW vista AS SELECT ’Hello World’;
+CREATE VIEW vista AS SELECT 'Hello World';
 
-CREATE VIEW vista AS SELECT text ’Hello World’ AS hello;
+CREATE VIEW vista AS SELECT text 'Hello World' AS hello;
 
 CREATE VIEW comedies AS
     SELECT *
     FROM films
-    WHERE kind = ’Comedy’;
+    WHERE kind = 'Comedy';
 -- 10 STATEMENTS *******************************************************
 --DEALLOCATE [ PREPARE ] { name | ALL }
 

Modified: trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_4.ddl
===================================================================
--- trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_4.ddl	2009-12-16 20:41:05 UTC (rev 1446)
+++ trunk/extensions/dna-sequencer-ddl/src/test/resources/ddl/dialect/postgres/postgres_test_statements_4.ddl	2009-12-16 20:44:18 UTC (rev 1447)
@@ -62,19 +62,19 @@
 --    [ RETURNING * | output_expression [ [ AS ] output_name ] [, ...] ]
 
 INSERT INTO films VALUES
-    (’UA502’, ’Bananas’, 105, ’1971-07-13’, ’Comedy’, ’82 minutes’);
+    ('UA502', 'Bananas', 105, '1971-07-13', 'Comedy', '82 minutes');
 
 INSERT INTO films (code, title, did, date_prod, kind)
-    VALUES (’T_601’, ’Yojimbo’, 106, ’1961-06-16’, ’Drama’);
+    VALUES ('T_601', 'Yojimbo', 106, '1961-06-16', 'Drama');
 -- 20 STATEMENTS *******************************************************
-INSERT INTO distributors (did, dname) VALUES (DEFAULT, ’XYZ Widgets’)
+INSERT INTO distributors (did, dname) VALUES (DEFAULT, 'XYZ Widgets')
    RETURNING did;
 
 -- LISTEN name
 
 LISTEN virtual;
 
-LOAD ’filename’;
+LOAD 'filename';
 
 --LOCK [ TABLE ] [ ONLY ] name [, ...] [ IN lockmode MODE ] [ NOWAIT ]
 --    where lockmode is one of:



More information about the dna-commits mailing list