blx::xsdsql::xml - read/write xml file from/to sql database
this package is a class - instance it with the method new
this module defined the followed functions
new - constructor
PARAMS: XMLWRITER => instance of class XML::Writer if is not set the object is instance automatically XMLPARSER => instance of class XML::Parser if is not set the object is instance automatically OUTPUT_NAMESPACE => output namespace (default 'sql') DB_NAMESPACE => database namespace DB_CONN => DBI connection SCHEMA => schema object EXECUTE_OBJECTS_PREFIX => prefix for objects in execution EXECUTE_OBJECTS_SUFFIX => suffix for objects in execution DEBUG => emit debug info
read - read a xml file and put into the database
PARAMS: FD => input file description (default stdin) the method return the id inserted into the root table
write - write a xml file from database
PARAMS: FD => output file descriptor (default stdout) ROOT_ID => root_id - the result of the method read DELETE_ROWS => if true write to FD and delete the rows from the database ROOT_TAG_PARAMS => force a hash or array of key/value for root tag in write xml HANDLE_BEFORE_XMLDECL => pointer sub called before xmlDecl HANDLE_AFTER_XMLDECL => pointer sub called after xmlDecl HANDLE_BEFORE_START_NODE => pointer sub called before a start node is write HANDLE_AFTER_START_NODE => pointer sub called after a start node is write HANDLE_BEFORE_END_NODE => pointer sub called before a end node is write HANDLE_AFTER_END_NODE => pointer sub called after a end node is write HANDLE_BEFORE_DATA_ELEMENT => pointer sub called before write dataElement HANDLE_AFTER_DATA_ELEMENT => pointer sub called after write dataElement HANDLE_BEFORE_END => pointer sub called before end of document HANDLE_AFTER_END => pointer sub called after end of document NO_WRITE_HEADER => if true not write the xml header NO_WRITE_FOOTER => if true not write the xml footer the method return the self object if root_id exist in the database else return undef
finish - close the sql statements prepared
the method return the self object
None by default.
See blx:.xsdsql::generator for generate the schema of the database and blx::xsdsql::parser for parse a xsd file (schema file)
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.