## Package Specification

The Query-Text utilities serves as parsers that extract infomation from the saved query-text
The standard format of the query text supported is specified below:

SELECT "originalColumn1" [AS alias1] [,"originalColumn2" [AS alias2]]... [,"originalColumnN" [AS aliasN]] FROM tableName [ : { "columnName1", "originalColumn1" ,DataType [;"columnName2","originalColumn2",DataType]... [;"columnNameN", "originalColumnN",DataType]}]
An example of the specification above is shown below:
SELECT "A", "B" FROM table : {"a","A",STRING; "b","B",DATE}

- A and B are the original column names specified in the flatfile or
  generated by the flatfile driver if there is no column name line in flatfile
- : in the query-text is the delimiter that seperates the query and the
  columns information, and this : should never be double quoted or escaped by \
- The string between { and } is the saved columns information.
  The information of all saved columns is separated by a semicolon,
  and the information of each column is separated by a comma
  i.e. a is the defined column name of the original column name A,
  and they all should be double quoted, STRING is the data type of this column
- NOTE: All the delimiters of the query-text: : , ; , { , } should never be double quoted, unless they are part of the columns information or the query