NAME

blx::xsdsql::schema - a schema is a class with include the common objects and search methods

SYNOPSIS

use blx::xsdsql::schema

DESCRIPTION

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

FUNCTIONS

this module defined the followed functions

new - constructor standard params: TYPES - set an array of tables type TABLE_DICTIONARY - set/get the dictionary of the tables COLUMN_DICTIONARY - set/get the dictionary of the columns RELATION_DICTIONARY - set/get the dictionary of the relations ROOT - set/get the root table SEQUENCE - set/get the sequence object

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_types_name - return an hash of object types - the key are names

get_types_path - return an hash of object types - the key are node path

resolve_path - return the table and the column associated to the the pathnode the method return an array ref if the path is associated to a tables otherwise return an hash if the path is associated to a column

	arguments
		absolute node path 
		
	params:
		DEBUG - emit debug info 
 

resolve_column_link - return the column link a tables

arguments
	parent table
	child table

resolve_attributes - return columns that bind node attributes

the arguments are a table name and a attribute node name list

	

get_root_table - return the root table objects

get_dictionary_table - return a dictionary object the first argument is a constant string TABLE_DICTIONARY|COLUMN_DICTIONARY|RELATION_DICTIONARY

get_sequence_name - return the sequence name associated to the root table

mapping_paths - mapping the all path node to tables and columns

params:
	DEBUG - emit debug info 

the method return the self object

EXPORT

None by default.

EXPORT_OK

None

SEE ALSO

blx::xsdsql::path_map   - mapping a xml path to table/column 

AUTHOR

lorenzo.bellotti, <pauseblx@gmail.com>

COPYRIGHT AND LICENSE

Copyright (C) 2011 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