The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

blx::xsdsql::xml::generic::column - a generic colum class

SYNOPSIS

use blx::xsdsql::xml::generic::column

DESCRIPTION

this package is a class - instance it with the method new

FUNCTIONS

this module defined the followed functions

new - constructor

        PARAMS:
                COLUMN_SEQUENCE - a sequence number into the table - the first column has sequence 0
                XSD_SEQ  - a sequence number into a choise 
                MIN_OCCURS - default 1
                MAX_OCCURS - default 1
                NAME  - a basename of xml node
                PATH    - a path name of xml xml node
                PATH_REFERENCE - the referenced by column 
                TABLE_REFERENCE - the table referenced by column
                INTERNAL_REFERENCE - true if the column is an array of simple types
                PK_SEQ  - sequence into the primary key 
                GROUP_REF - the column reference a GROUP
                TABLE_NAME - the table name of the column
                

set_attrs_value - set a value of attributes

        the arguments are a pairs NAME => VALUE
        the method return a self object

get_attrs_value - return a list of attributes values

        the arguments are a list of attributes name

get_column_sequence - return the sequence into the table - the first column has sequence 0

get_sql_type - return the sql type of the column

get_sql_name - return the name of the column

get_min_occurs - return the value of the minoccurs into the xsd schema

get_max_occurs - return the value of the maxoccurs into the xsd schema

is_internal_reference - return true if the column is an array of simple types

is_group_reference - return true if the column reference a xsd group

get_path - return the node path name

get_path_reference - return the path referenced

get_table_reference - return the table referenced

get_table_name - return the table name of the column

is_pk - return true if the column is part of the primary key

get_pk_seq - return the sequence into the primary key

get_xsd_seq - return a sequence number into a choise

factory_column - factory a generic column object

        the first argument must be  ID|SEQ|VALUE|undef
                ID    - factory the first column of a primary key 
                SEQ  - factory the second column of a primary key
                VALUE - factory a generic value column
                undef - factory a user custom column 
                                        other params must be NAME,SQL_TYPE and optionally SQL_SIZE
        the method return an object  of the same type of the self object
 

factory_sql_type - factory a generic sql type

        the first argument must be   VARCHAR|CHAR|NUMBER|DOUBLE|FLOAT|DECIMAL|DATETIME|DATE|TIME|GYEAR|GYEARMONTH|GMONTHDAY|BOOLEAN
        the method return a string 

factory_dictionary_columns - factory the columns dictionary

        the first argument must be:
                TABLE_DICTIONARY - factory columns for table dictionary
                COLUMN_DICTIONARY - factory columns for column dictionary
                RELATION_DICTIONARY - factory columns for relation dictionary

get_dictionary_data - return an hash of dictionary column name => value for the insert into dictionary

        the first argument must be:
                COLUMN_DICTIONARY - return data for column dictionary (except TABLE_NAME)
                                

                 

EXPORT

None by default.

EXPORT_OK

none

SEE ALSO

See blx::xsdsql::xml::generic::catalog, it's the base class See blx:.xsdsql::generator for generate the schema of the database and blx::xsdsql::parser for parse a xsd file (schema file)

AUTHOR

lorenzo.bellotti, <pauseblx@gmail.com>

COPYRIG

Copyright (C) 2010 by lorenzo.bellotti

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html