SYNOPSIS

 my $cache = XML::Compile::Cache->new(...);

 $cache->declare('READER',  $type,  @options);
 $cache->declare(RW     => \@types, @options);
 $cache->declare(WRITER =>  $type, \@options);

 $cache->compileAll;
 $cache->compileAll('RW');

 # get the cached code ref for the reader
 my $reader = $cache->reader($type, @opts);
 use Data::Dumper;
 print Dumper $reader->($xml);

 # get the cached code ref for the writer, and use it
 my $doc = XML::LibXML::Document->new('1.0', 'UTF-8');
 my $xml = $cache->writer($type)->($doc, $perl);
 print $xml->toString(1);

 # use the base-class uncached, the XML::Compile::Schema
 my $do = $cache->compile(READER => $type, @opts);

See SYNOPSIS in XML::Compile::Schema

DESCRIPTION

See DESCRIPTION in XML::Compile::Schema

DETAILS

Distribution collection overview

See Distribution collection overview in XML::Compile

Comparison

See Comparison in XML::Compile

Collecting definitions

See Collecting definitions in XML::Compile::Schema

Organizing your definitions

See Organizing your definitions in XML::Compile::Schema

Addressing components

See Addressing components in XML::Compile::Schema

Representing data-structures

See Representing data-structures in XML::Compile::Schema

simpleType

See simpleType in XML::Compile::Schema

complexType/simpleContent

See complexType/simpleContent in XML::Compile::Schema

complexType and complexType/complexContent

See complexType and complexType/complexContent in XML::Compile::Schema

Manually produced XML NODE

See Manually produced XML NODE in XML::Compile::Schema

Occurence

See Occurence in XML::Compile::Schema

Default Values

See Default Values in XML::Compile::Schema

Repetative blocks

See Repetative blocks in XML::Compile::Schema

List type

See List type in XML::Compile::Schema

Using substitutionGroup constructs

See Using substitutionGroup constructs in XML::Compile::Schema

Wildcards via any and anyAttribute

See Wildcards via any and anyAttribute in XML::Compile::Schema

ComplexType with "mixed" attribute

See ComplexType with "mixed" attribute in XML::Compile::Schema

hexBinary and base64Binary

See hexBinary and base64Binary in XML::Compile::Schema

Schema hooks

See Schema hooks in XML::Compile::Schema

Defining hooks

See Defining hooks in XML::Compile::Schema

General syntax

See General syntax in XML::Compile::Schema

Hooks on matching types

See Hooks on matching types in XML::Compile::Schema

Hooks on extended type

See Hooks on extended type in XML::Compile::Schema

Hooks on matching ids

See Hooks on matching ids in XML::Compile::Schema

Hooks on matching paths

See Hooks on matching paths in XML::Compile::Schema

Typemaps

See Typemaps in XML::Compile::Schema

Private variables in objects

See Private variables in objects in XML::Compile::Schema

Typemap limitations

See Typemap limitations in XML::Compile::Schema

Handling xsi:type

See Handling xsi:type in XML::Compile::Schema

Key rewrite

See Key rewrite in XML::Compile::Schema

key_rewrite via table

See key_rewrite via table in XML::Compile::Schema

Rewrite via function

See Rewrite via function in XML::Compile::Schema

key_rewrite when localNames collide

See key_rewrite when localNames collide in XML::Compile::Schema

Rewrite for convenience

See Rewrite for convenience in XML::Compile::Schema

Pre-defined key_rewrite rules

See Pre-defined key_rewrite rules in XML::Compile::Schema