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

NAME

blx::xsdsql::schema_repository - API class for manage repository

SYNOPSIS

use blx::xsdsql::schema_repository

DESCRIPTION

this package is a class - install with a method new

VERSION

0.10.0

FUNCTIONS

this module defined the followed functions

get_namespaces - return a list of namespaces know this is a class method

check_namespaces - check if namespaces is know this is a class method PARAMS: OUTPUT_NAMESPACE - output namespace (default sql) DB_NAMESPACE - database type

new - constructor PARAMS: DB_CONN - connection object - normally a DBI connection object DEBUG - if true set the debug mode OUTPUT_NAMESPACE - output namespace - the defaul is 'sql' DB_NAMESPACE - database namespace

create_repository - create the repository on database if the repository is already installed and params FD it's not set the method return undef otherwise the self object PARAMS: FD - file description opened in output mode if it's set the repository is not create but emit on FD the commands for create the repository

create_catalog - create a catalog on database if the repository is not installed or the catalog already exists and the param FD it's not set return undef otherwise the a blx::xsdsql::schema_repository::catalog object ARGUMENTS: catalog name - a uniq name into the repository schema - schema object, is the output of method blx::xsdsql::xsd_parser::parsefile

    PARAMS:
            FD - file description opened in output mode
                 if it's set the catalog is not create but emit on FD the commands for create the catalog
            SCHEMA_CODE - schema code associated at schema  - if it's not set is automatically set by the system

drop_all_catalogs - drop all catalogs if the repository is not installed the method return undef otherwise the self object

drop_repository - drop the entiry repository if the repository is not installed the method return undef otherwise the self object

is_repository_installed - return true if the repository is installed on database

is_support_views - return true if database support complex views

get_catalog_names - return a list of catalog names stored into the repository if the repository is not installed in list mode return an empty list otherwise undef

get_catalog - return a blx::xsdsql::schema_repository::catalog object ARGUMENTS: catalog name - a uniq name into the repository

get_dictionary_tables - return a list of table objects relative to dictionary

get_dtd_tables - return a list of table objects relative to dtd

get_table_types - return a list of table types

get_table_from_type - return a table object or list of table object

    PARAMS:

        TYPE - a table type or a list of table type
               if it's not set all table types are assumed

SEE ALSO

blx::xsdsql::00_readme_API blx::xsdsql::schema_repository::catalog blx::xsdsql::schema_repository::catalog_xml blx::xsdsql::xsd_parser

BUGS

Please report any bugs or feature requests to https://rt.cpan.org/Public/Bug/Report.html?Queue=XSDSQL

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