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_NAME - a path name of 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
	

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_reference - return the path referenced

get_table_reference - return the table referenced

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