PackageDescription | Many (professional) applications process XML messages based on a formal
specification, expressed in XML Schemas. XML::Compile translates between
XML and Perl with the help of such schemas. Your Perl program only handles
a tree of nested HASHes and ARRAYs, and does not need to understand
namespaces and other general XML and schema nastiness.
Three serious WARNINGS:
* The focus is on *data-centric XML*, which means that mixed elements are not
handler automatically: you need to work with XML::LibXML nodes yourself, on
these spots.
* The *data is not strictly validated*, still a large number of compile-time
errors can be reported. Values are checked quite thoroughly. Structure as
well.
* Imports and includes, as used in the schemas, are NOT performed
automatically. Schema's and such are NOT collected from internet
dynamically; you have to call XML::Compile::Schema::importDefinitions()
explicitly with filenames of locally stored copies. Includes do only work
if they have a targetNamespace defined, which is the same as that of the
schema it is included into. |