Brian M. Ames

NAME

Rinchi::XMLSchema - Module for creating XML Schema objects from XSD files.

SYNOPSIS

  use Rinchi::XMLSchema;

  $document = Rinchi::XMLSchema->parse($file);

DESCRIPTION

  This module parses XML Schema files and produces Perl objects representing 
  them. There is also the capability to compare objects to see if they are the 
  same (not necessarily equal). The intent of this module is to allow the 
  comparison of various schemas to find common constructs between them. A 
  module I intend to release later will allow the production of UML from
  schema files.
  
  Note: Imports and includes are not performed as at this time that would be
  contrary to the purpose of the module.

EXPORT

None by default.

$Object = Rinchi::XMLSchema::?Class?->new();

Create an object of the appropriate class, based on the local name of the element being represented.

    Local Name                            Class;
all                                  Rinchi::XMLSchema::All;
annotation                           Rinchi::XMLSchema::Annotation;
any                                  Rinchi::XMLSchema::Any;
anyAttribute                         Rinchi::XMLSchema::AnyAttribute;
appinfo                              Rinchi::XMLSchema::Appinfo;
attribute                            Rinchi::XMLSchema::Attribute;
attributeGroup                       Rinchi::XMLSchema::AttributeGroup;
choice                               Rinchi::XMLSchema::Choice;
complexContent                       Rinchi::XMLSchema::ComplexContent;
complexType                          Rinchi::XMLSchema::ComplexType;
documentation                        Rinchi::XMLSchema::Documentation;
element                              Rinchi::XMLSchema::Element;
enumeration                          Rinchi::XMLSchema::Enumeration;
extension                            Rinchi::XMLSchema::Extension;
field                                Rinchi::XMLSchema::Field;
fractionDigits                       Rinchi::XMLSchema::FractionDigits;
group                                Rinchi::XMLSchema::Group;
import                               Rinchi::XMLSchema::Import;
include                              Rinchi::XMLSchema::Include;
key                                  Rinchi::XMLSchema::Key;
keyref                               Rinchi::XMLSchema::Keyref;
length                               Rinchi::XMLSchema::Length;
list                                 Rinchi::XMLSchema::List;
maxExclusive                         Rinchi::XMLSchema::MaxExclusive;
maxInclusive                         Rinchi::XMLSchema::MaxInclusive;
maxLength                            Rinchi::XMLSchema::MaxLength;
minExclusive                         Rinchi::XMLSchema::MinExclusive;
minInclusive                         Rinchi::XMLSchema::MinInclusive;
minLength                            Rinchi::XMLSchema::MinLength;
notation                             Rinchi::XMLSchema::Notation;
pattern                              Rinchi::XMLSchema::Pattern;
redefine                             Rinchi::XMLSchema::Redefine;
restriction                          Rinchi::XMLSchema::Restriction;
schema                               Rinchi::XMLSchema::Schema;
selector                             Rinchi::XMLSchema::Selector;
sequence                             Rinchi::XMLSchema::Sequence;
simpleContent                        Rinchi::XMLSchema::SimpleContent;
simpleType                           Rinchi::XMLSchema::SimpleType;
totalDigits                          Rinchi::XMLSchema::TotalDigits;
union                                Rinchi::XMLSchema::Union;
unique                               Rinchi::XMLSchema::Unique;
whiteSpace                           Rinchi::XMLSchema::WhiteSpace;
$Document = Rinchi::XMLSchema->parsefile($path);

Calls XML::Parser->parsefile with the given path and the Rinchi::XMLSchema handlers. Objects are created for the namespaces with available handlers, arrays with the tags and attributes. A tree of the objects and arrays is returned, with children accessible as @{$Object->{'_content_'}}.

Open FILE for reading, then call parse with the open handle. The file is closed no matter how parse returns. Returns what parse returns.

$nsdef = Rinchi::XMLSchema->namespace_def();

Returns a hash reference containing the following key-value pairs:

Start Hash reference to SAX Start event handlers End Hash reference to SAX End event handlers Namespace Namespace URI

$Document = Rinchi::XMLSchema->add_namespace($nsdef);

Adds the namespace and handlers to the list of routines called by the parser to create objects of the specified classes. For example:

use Rinchi::XMLSchema::HFP; my $nsdef = Rinchi::HFP->namespace_def(); $nsdef->{'Prefix'} = 'hfp'; Rinchi::XMLSchema->add_namespace($nsdef); my $Document = Rinchi::XMLSchema->parsefile('datatypes.xsd');

This will cause Rinchi::HFP subclassed objects from the namespace 'http://www.w3.org/2001/XMLSchema-hasFacetAndProperty' to be created as well as those from the XMLSchema namespace.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of All class

Rinchi::XMLSchema::All is used for creating XML Schema All objects.

 id = ID
 maxOccurs = 1 : 1
 minOccurs = (0 | 1) : 1
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, element*)
$Object = Rinchi::XMLSchema::All->new();

Create a new Rinchi::XMLSchema::All object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->maxOccurs([$new_value]);

Set or get value of the 'maxOccurs' attribute.

$value = $Object->minOccurs([$new_value]);

Set or get value of the 'minOccurs' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Annotation class

Rinchi::XMLSchema::Annotation is used for creating XML Schema Annotation objects.

 id = ID
 {any attributes with non-schema namespace ...}>
 Content: (appinfo | documentation)*
$Object = Rinchi::XMLSchema::Annotation->new();

Create a new Rinchi::XMLSchema::Annotation object.

DESCRIPTION of Any class

Rinchi::XMLSchema::Any is used for creating XML Schema Any objects.

  id = ID
  maxOccurs = (nonNegativeInteger | unbounded)  : 1
  minOccurs = nonNegativeInteger : 1
  namespace = ((##any | ##other) | List of (anyURI | (##targetNamespace | ##local)) )  : ##any
  processContents = (lax | skip | strict) : strict
  {any attributes with non-schema namespace ...}>
  Content: (annotation?)
$Object = Rinchi::XMLSchema::Any->new();

Create a new Rinchi::XMLSchema::Any object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->maxOccurs([$new_value]);

Set or get value of the 'maxOccurs' attribute.

$value = $Object->minOccurs([$new_value]);

Set or get value of the 'minOccurs' attribute.

$value = $Object->namespace([$new_value]);

Set or get value of the 'namespace' attribute.

$value = $Object->processContents([$new_value]);

Set or get value of the 'processContents' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of AnyAttribute class

Rinchi::XMLSchema::AnyAttribute is used for creating XML Schema AnyAttribute objects.

$Object = Rinchi::XMLSchema::AnyAttribute->new();

Create a new Rinchi::XMLSchema::AnyAttribute object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->namespace([$new_value]);

Set or get value of the 'namespace' attribute.

$value = $Object->processContents([$new_value]);

Set or get value of the 'processContents' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Appinfo class

Rinchi::XMLSchema::Appinfo is used for creating XML Schema Appinfo objects.

 source = anyURI
 {any attributes with non-schema namespace ...}>
 Content: ({any})*
$Object = Rinchi::XMLSchema::Appinfo->new();

Create a new Rinchi::XMLSchema::Appinfo object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->source([$new_value]);

Set or get value of the 'source' attribute.

DESCRIPTION of Attribute class

Rinchi::XMLSchema::Attribute is used for creating XML Schema Attribute objects.

 default = string
 fixed = string
 form = (qualified | unqualified)
 id = ID
 name = NCName
 ref = QName
 type = QName
 use = (optional | prohibited | required) : optional
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, simpleType?)
$Object = Rinchi::XMLSchema::Attribute->new();

Create a new Rinchi::XMLSchema::Attribute object.

$value = $Object->default([$new_value]);

Set or get value of the 'default' attribute.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->form([$new_value]);

Set or get value of the 'form' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->ref([$new_value]);

Set or get value of the 'ref' attribute.

$value = $Object->type([$new_value]);

Set or get value of the 'type' attribute.

$value = $Object->use([$new_value]);

Set or get value of the 'use' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of AttributeGroup class

Rinchi::XMLSchema::AttributeGroup is used for creating XML Schema AttributeGroup objects.

 id = ID
 name = NCName
 ref = QName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, ((attribute | attributeGroup)*, anyAttribute?))
$Object = Rinchi::XMLSchema::AttributeGroup->new();

Create a new Rinchi::XMLSchema::AttributeGroup object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->ref([$new_value]);

Set or get value of the 'ref' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Choice class

Rinchi::XMLSchema::Choice is used for creating XML Schema Choice objects.

 id = ID
 maxOccurs = (nonNegativeInteger | unbounded)  : 1
 minOccurs = nonNegativeInteger : 1
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (element | group | choice | sequence | any)*)
$Object = Rinchi::XMLSchema::Choice->new();

Create a new Rinchi::XMLSchema::Choice object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->maxOccurs([$new_value]);

Set or get value of the 'maxOccurs' attribute.

$value = $Object->minOccurs([$new_value]);

Set or get value of the 'minOccurs' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of ComplexContent class

Rinchi::XMLSchema::ComplexContent is used for creating XML Schema ComplexContent objects.

$Object = Rinchi::XMLSchema::ComplexContent->new();

Create a new Rinchi::XMLSchema::ComplexContent object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->mixed([$new_value]);

Set or get value of the 'mixed' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of ComplexType class

Rinchi::XMLSchema::ComplexType is used for creating XML Schema ComplexType objects.

 abstract = boolean : false
 block = (#all | List of (extension | restriction))
 final = (#all | List of (extension | restriction))
 id = ID
 mixed = boolean : false
 name = NCName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (simpleContent | complexContent | ((group | all | choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?))))
$Object = Rinchi::XMLSchema::ComplexType->new();

Create a new Rinchi::XMLSchema::ComplexType object.

$value = $Object->abstract([$new_value]);

Set or get value of the 'abstract' attribute.

$value = $Object->block([$new_value]);

Set or get value of the 'block' attribute.

$value = $Object->final([$new_value]);

Set or get value of the 'final' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->mixed([$new_value]);

Set or get value of the 'mixed' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Documentation class

Rinchi::XMLSchema::Documentation is used for creating XML Schema Documentation objects.

 source = anyURI
 xml:lang = language
 {any attributes with non-schema namespace ...}>
 Content: ({any})*
$Object = Rinchi::XMLSchema::Documentation->new();

Create a new Rinchi::XMLSchema::Documentation object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->source([$new_value]);

Set or get value of the 'source' attribute.

$value = $Object->xml_lang([$new_value]);

Set or get value of the 'xml:lang' attribute.

DESCRIPTION of Element class

Rinchi::XMLSchema::Element is used for creating XML Schema Element objects.

 abstract = boolean : false
 block = (#all | List of (extension | restriction | substitution))
 default = string
 final = (#all | List of (extension | restriction))
 fixed = string
 form = (qualified | unqualified)
 id = ID
 maxOccurs = (nonNegativeInteger | unbounded)  : 1
 minOccurs = nonNegativeInteger : 1
 name = NCName
 nillable = boolean : false
 ref = QName
 substitutionGroup = QName
 type = QName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, ((simpleType | complexType)?, (unique | key | keyref)*))
$Object = Rinchi::XMLSchema::Element->new();

Create a new Rinchi::XMLSchema::Element object.

$value = $Object->abstract([$new_value]);

Set or get value of the 'abstract' attribute.

$value = $Object->block([$new_value]);

Set or get value of the 'block' attribute.

$value = $Object->default([$new_value]);

Set or get value of the 'default' attribute.

$value = $Object->final([$new_value]);

Set or get value of the 'final' attribute.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->form([$new_value]);

Set or get value of the 'form' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->maxOccurs([$new_value]);

Set or get value of the 'maxOccurs' attribute.

$value = $Object->minOccurs([$new_value]);

Set or get value of the 'minOccurs' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->nillable([$new_value]);

Set or get value of the 'nillable' attribute.

$value = $Object->ref([$new_value]);

Set or get value of the 'ref' attribute.

$value = $Object->substitutionGroup([$new_value]);

Set or get value of the 'substitutionGroup' attribute.

$value = $Object->type([$new_value]);

Set or get value of the 'type' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Enumeration class

Rinchi::XMLSchema::Enumeration is used for creating XML Schema Enumeration objects.

$Object = Rinchi::XMLSchema::Enumeration->new();

Create a new Rinchi::XMLSchema::Enumeration object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Extension class

Rinchi::XMLSchema::Extension is used for creating XML Schema Extension objects.

$Object = Rinchi::XMLSchema::Extension->new();

Create a new Rinchi::XMLSchema::Extension object.

$value = $Object->base([$new_value]);

Set or get value of the 'base' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Field class

Rinchi::XMLSchema::Field is used for creating XML Schema Field objects.

 id = ID
 xpath = a subset of XPath expression, see below
 {any attributes with non-schema namespace ...}>
 Content: (annotation?)
$Object = Rinchi::XMLSchema::Field->new();

Create a new Rinchi::XMLSchema::Field object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->xpath([$new_value]);

Set or get value of the 'xpath' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of FractionDigits class

Rinchi::XMLSchema::FractionDigits is used for creating XML Schema FractionDigits objects.

$Object = Rinchi::XMLSchema::FractionDigits->new();

Create a new Rinchi::XMLSchema::FractionDigits object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Group class

Rinchi::XMLSchema::Group is used for creating XML Schema Group objects.

 id = ID
 maxOccurs = (nonNegativeInteger | unbounded)  : 1
 minOccurs = nonNegativeInteger : 1
 name = NCName
 ref = QName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (all | choice | sequence)?)
$Object = Rinchi::XMLSchema::Group->new();

Create a new Rinchi::XMLSchema::Group object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->maxOccurs([$new_value]);

Set or get value of the 'maxOccurs' attribute.

$value = $Object->minOccurs([$new_value]);

Set or get value of the 'minOccurs' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->ref([$new_value]);

Set or get value of the 'ref' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Import class

Rinchi::XMLSchema::Import is used for creating XML Schema Import objects.

 id = ID
 namespace = anyURI
 schemaLocation = anyURI
 {any attributes with non-schema namespace . . .}>
 Content: (annotation?)
$Object = Rinchi::XMLSchema::Import->new();

Create a new Rinchi::XMLSchema::Import object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->namespace([$new_value]);

Set or get value of the 'namespace' attribute.

$value = $Object->schemaLocation([$new_value]);

Set or get value of the 'schemaLocation' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Include class

Rinchi::XMLSchema::Include is used for creating XML Schema Include objects.

 id = ID
 schemaLocation = anyURI
 {any attributes with non-schema namespace . . .}>
 Content: (annotation?)
$Object = Rinchi::XMLSchema::Include->new();

Create a new Rinchi::XMLSchema::Include object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->schemaLocation([$new_value]);

Set or get value of the 'schemaLocation' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Key class

Rinchi::XMLSchema::Key is used for creating XML Schema Key objects.

 id = ID
 name = NCName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (selector, field+))
$Object = Rinchi::XMLSchema::Key->new();

Create a new Rinchi::XMLSchema::Key object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Keyref class

Rinchi::XMLSchema::Keyref is used for creating XML Schema Keyref objects.

 id = ID
 name = NCName
 refer = QName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (selector, field+))
$Object = Rinchi::XMLSchema::Keyref->new();

Create a new Rinchi::XMLSchema::Keyref object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->refer([$new_value]);

Set or get value of the 'refer' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Length class

Rinchi::XMLSchema::Length is used for creating XML Schema Length objects.

$Object = Rinchi::XMLSchema::Length->new();

Create a new Rinchi::XMLSchema::Length object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of List class

Rinchi::XMLSchema::List is used for creating XML Schema List objects.

 id = ID
 itemType = QName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, simpleType?)
$Object = Rinchi::XMLSchema::List->new();

Create a new Rinchi::XMLSchema::List object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->itemType([$new_value]);

Set or get value of the 'itemType' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of MaxExclusive class

Rinchi::XMLSchema::MaxExclusive is used for creating XML Schema MaxExclusive objects.

$Object = Rinchi::XMLSchema::MaxExclusive->new();

Create a new Rinchi::XMLSchema::MaxExclusive object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of MaxInclusive class

Rinchi::XMLSchema::MaxInclusive is used for creating XML Schema MaxInclusive objects.

$Object = Rinchi::XMLSchema::MaxInclusive->new();

Create a new Rinchi::XMLSchema::MaxInclusive object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of MaxLength class

Rinchi::XMLSchema::MaxLength is used for creating XML Schema MaxLength objects.

$Object = Rinchi::XMLSchema::MaxLength->new();

Create a new Rinchi::XMLSchema::MaxLength object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of MinExclusive class

Rinchi::XMLSchema::MinExclusive is used for creating XML Schema MinExclusive objects.

$Object = Rinchi::XMLSchema::MinExclusive->new();

Create a new Rinchi::XMLSchema::MinExclusive object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of MinInclusive class

Rinchi::XMLSchema::MinInclusive is used for creating XML Schema MinInclusive objects.

$Object = Rinchi::XMLSchema::MinInclusive->new();

Create a new Rinchi::XMLSchema::MinInclusive object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of MinLength class

Rinchi::XMLSchema::MinLength is used for creating XML Schema MinLength objects.

$Object = Rinchi::XMLSchema::MinLength->new();

Create a new Rinchi::XMLSchema::MinLength object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Notation class

Rinchi::XMLSchema::Notation is used for creating XML Schema Notation objects.

 id = ID
 name = NCName
 public = token
 system = anyURI
 {any attributes with non-schema namespace ...}>
 Content: (annotation?)
$Object = Rinchi::XMLSchema::Notation->new();

Create a new Rinchi::XMLSchema::Notation object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->public([$new_value]);

Set or get value of the 'public' attribute.

$value = $Object->system([$new_value]);

Set or get value of the 'system' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Pattern class

Rinchi::XMLSchema::Pattern is used for creating XML Schema Pattern objects.

$Object = Rinchi::XMLSchema::Pattern->new();

Create a new Rinchi::XMLSchema::Pattern object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Redefine class

Rinchi::XMLSchema::Redefine is used for creating XML Schema Redefine objects.

 id = ID
 schemaLocation = anyURI
 {any attributes with non-schema namespace . . .}>
 Content: (annotation | (simpleType | complexType | group | attributeGroup))*
$Object = Rinchi::XMLSchema::Redefine->new();

Create a new Rinchi::XMLSchema::Redefine object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->schemaLocation([$new_value]);

Set or get value of the 'schemaLocation' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Restriction class

Rinchi::XMLSchema::Restriction is used for creating XML Schema Restriction objects.

 base = QName
 id = ID
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (simpleType?, (minExclusive | minInclusive | maxExclusive | maxInclusive | totalDigits | fractionDigits | length | minLength | maxLength | enumeration | whiteSpace | pattern)*))
$Object = Rinchi::XMLSchema::Restriction->new();

Create a new Rinchi::XMLSchema::Restriction object.

$value = $Object->base([$new_value]);

Set or get value of the 'base' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Schema class

Rinchi::XMLSchema::Schema is used for creating XML Schema Schema objects.

 attributeFormDefault = (qualified | unqualified) : unqualified
 blockDefault = (#all | List of (extension | restriction | substitution))  : ''
 elementFormDefault = (qualified | unqualified) : unqualified
 finalDefault = (#all | List of (extension | restriction | list | union))  : ''
 id = ID
 targetNamespace = anyURI
 version = token
 xml:lang = language
 {any attributes with non-schema namespace . . .}>
 Content: ((include | import | redefine | annotation)*, (((simpleType | complexType | group | attributeGroup) | element | attribute | notation), annotation*)*)
$Object = Rinchi::XMLSchema::Schema->new();

Create a new Rinchi::XMLSchema::Schema object.

$value = $Object->attributeFormDefault([$new_value]);

Set or get value of the 'attributeFormDefault' attribute.

$value = $Object->blockDefault([$new_value]);

Set or get value of the 'blockDefault' attribute.

$value = $Object->elementFormDefault([$new_value]);

Set or get value of the 'elementFormDefault' attribute.

$value = $Object->finalDefault([$new_value]);

Set or get value of the 'finalDefault' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->targetNamespace([$new_value]);

Set or get value of the 'targetNamespace' attribute.

$value = $Object->version([$new_value]);

Set or get value of the 'version' attribute.

$value = $Object->xml_lang([$new_value]);

Set or get value of the 'xml:lang' attribute.

$value = $Object->xmlns([$new_value]);

Set or get value of the 'xmlns' attribute.

$value = $Object->xmlns_xs([$new_value]);

Set or get value of the 'xmlns:xs' attribute.

$value = $Object->elements();

Get the top-level element objects.

$value = $Object->attributes();

Get the top-level attribute objects.

$value = $Object->types();

Get the top-level type objects.

$value = $Object->groups();

Get the top-level groups objects.

$value = $Object->attributeGroups();

Get the top-level attributeGroups objects.

$value = $Object->notations();

Get the top-level notation objects.

$value = $Object->identityConstraints();

Get the top-level identityConstraint objects.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Selector class

Rinchi::XMLSchema::Selector is used for creating XML Schema Selector objects.

 id = ID
 xpath = a subset of XPath expression, see below
 {any attributes with non-schema namespace ...}>
 Content: (annotation?)
$Object = Rinchi::XMLSchema::Selector->new();

Create a new Rinchi::XMLSchema::Selector object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->xpath([$new_value]);

Set or get value of the 'xpath' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Sequence class

Rinchi::XMLSchema::Sequence is used for creating XML Schema Sequence objects.

 id = ID
 maxOccurs = (nonNegativeInteger | unbounded)  : 1
 minOccurs = nonNegativeInteger : 1
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (element | group | choice | sequence | any)*)
$Object = Rinchi::XMLSchema::Sequence->new();

Create a new Rinchi::XMLSchema::Sequence object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->maxOccurs([$new_value]);

Set or get value of the 'maxOccurs' attribute.

$value = $Object->minOccurs([$new_value]);

Set or get value of the 'minOccurs' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of SimpleContent class

Rinchi::XMLSchema::SimpleContent is used for creating XML Schema SimpleContent objects.

$Object = Rinchi::XMLSchema::SimpleContent->new();

Create a new Rinchi::XMLSchema::SimpleContent object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of SimpleType class

Rinchi::XMLSchema::SimpleType is used for creating XML Schema SimpleType objects.

 final = (#all | List of (list | union | restriction))
 id = ID
 name = NCName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (restriction | list | union))
$Object = Rinchi::XMLSchema::SimpleType->new();

Create a new Rinchi::XMLSchema::SimpleType object.

$value = $Object->final([$new_value]);

Set or get value of the 'final' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of TotalDigits class

Rinchi::XMLSchema::TotalDigits is used for creating XML Schema TotalDigits objects.

$Object = Rinchi::XMLSchema::TotalDigits->new();

Create a new Rinchi::XMLSchema::TotalDigits object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Union class

Rinchi::XMLSchema::Union is used for creating XML Schema Union objects.

 id = ID
 memberTypes = List of QName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, simpleType*)
$Object = Rinchi::XMLSchema::Union->new();

Create a new Rinchi::XMLSchema::Union object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->memberTypes([$new_value]);

Set or get value of the 'memberTypes' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of Unique class

Rinchi::XMLSchema::Unique is used for creating XML Schema Unique objects.

 id = ID
 name = NCName
 {any attributes with non-schema namespace ...}>
 Content: (annotation?, (selector, field+))
$Object = Rinchi::XMLSchema::Unique->new();

Create a new Rinchi::XMLSchema::Unique object.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->name([$new_value]);

Set or get value of the 'name' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

DESCRIPTION of WhiteSpace class

Rinchi::XMLSchema::WhiteSpace is used for creating XML Schema WhiteSpace objects.

$Object = Rinchi::XMLSchema::WhiteSpace->new();

Create a new Rinchi::XMLSchema::WhiteSpace object.

$value = $Object->fixed([$new_value]);

Set or get value of the 'fixed' attribute.

$value = $Object->id([$new_value]);

Set or get value of the 'id' attribute.

$value = $Object->value([$new_value]);

Set or get value of the 'value' attribute.

$value = $Object->sameAs($other);

Compares self to other returning 1 if they are the same, 0 otherwise;

AUTHOR

Brian M. Ames, <bmames.net>

SEE ALSO

XML::Parser.

COPYRIGHT and LICENSE

Copyright 2008 Brian M. Ames. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.

86 POD Errors

The following errors were encountered while parsing the POD:

Around line 169:

'=item' outside of any '=over'

Around line 1849:

You forgot a '=back' before '=head1'

Around line 1863:

'=item' outside of any '=over'

Around line 2002:

You forgot a '=back' before '=head1'

Around line 2014:

'=item' outside of any '=over'

Around line 2040:

You forgot a '=back' before '=head1'

Around line 2056:

'=item' outside of any '=over'

Around line 2257:

You forgot a '=back' before '=head1'

Around line 2265:

'=item' outside of any '=over'

Around line 2388:

You forgot a '=back' before '=head1'

Around line 2400:

'=item' outside of any '=over'

Around line 2464:

You forgot a '=back' before '=head1'

Around line 2483:

'=item' outside of any '=over'

Around line 2777:

You forgot a '=back' before '=head1'

Around line 2791:

'=item' outside of any '=over'

Around line 2938:

You forgot a '=back' before '=head1'

Around line 2952:

'=item' outside of any '=over'

Around line 3095:

You forgot a '=back' before '=head1'

Around line 3103:

'=item' outside of any '=over'

Around line 3219:

You forgot a '=back' before '=head1'

Around line 3236:

'=item' outside of any '=over'

Around line 3470:

You forgot a '=back' before '=head1'

Around line 3483:

'=item' outside of any '=over'

Around line 3564:

You forgot a '=back' before '=head1'

Around line 3589:

'=item' outside of any '=over'

Around line 4057:

You forgot a '=back' before '=head1'

Around line 4065:

'=item' outside of any '=over'

Around line 4157:

You forgot a '=back' before '=head1'

Around line 4165:

'=item' outside of any '=over'

Around line 4281:

You forgot a '=back' before '=head1'

Around line 4294:

'=item' outside of any '=over'

Around line 4386:

You forgot a '=back' before '=head1'

Around line 4394:

'=item' outside of any '=over'

Around line 4517:

You forgot a '=back' before '=head1'

Around line 4533:

'=item' outside of any '=over'

Around line 4738:

You forgot a '=back' before '=head1'

Around line 4752:

'=item' outside of any '=over'

Around line 4871:

You forgot a '=back' before '=head1'

Around line 4884:

'=item' outside of any '=over'

Around line 4976:

You forgot a '=back' before '=head1'

Around line 4989:

'=item' outside of any '=over'

Around line 5105:

You forgot a '=back' before '=head1'

Around line 5119:

'=item' outside of any '=over'

Around line 5266:

You forgot a '=back' before '=head1'

Around line 5274:

'=item' outside of any '=over'

Around line 5397:

You forgot a '=back' before '=head1'

Around line 5410:

'=item' outside of any '=over'

Around line 5526:

You forgot a '=back' before '=head1'

Around line 5534:

'=item' outside of any '=over'

Around line 5657:

You forgot a '=back' before '=head1'

Around line 5665:

'=item' outside of any '=over'

Around line 5788:

You forgot a '=back' before '=head1'

Around line 5796:

'=item' outside of any '=over'

Around line 5919:

You forgot a '=back' before '=head1'

Around line 5927:

'=item' outside of any '=over'

Around line 6050:

You forgot a '=back' before '=head1'

Around line 6058:

'=item' outside of any '=over'

Around line 6181:

You forgot a '=back' before '=head1'

Around line 6189:

'=item' outside of any '=over'

Around line 6312:

You forgot a '=back' before '=head1'

Around line 6327:

'=item' outside of any '=over'

Around line 6477:

You forgot a '=back' before '=head1'

Around line 6485:

'=item' outside of any '=over'

Around line 6577:

You forgot a '=back' before '=head1'

Around line 6590:

'=item' outside of any '=over'

Around line 6702:

You forgot a '=back' before '=head1'

Around line 6715:

'=item' outside of any '=over'

Around line 6831:

You forgot a '=back' before '=head1'

Around line 6850:

'=item' outside of any '=over'

Around line 7371:

You forgot a '=back' before '=head1'

Around line 7384:

'=item' outside of any '=over'

Around line 7476:

You forgot a '=back' before '=head1'

Around line 7490:

'=item' outside of any '=over'

Around line 7633:

You forgot a '=back' before '=head1'

Around line 7641:

'=item' outside of any '=over'

Around line 7726:

You forgot a '=back' before '=head1'

Around line 7740:

'=item' outside of any '=over'

Around line 7883:

You forgot a '=back' before '=head1'

Around line 7891:

'=item' outside of any '=over'

Around line 8014:

You forgot a '=back' before '=head1'

Around line 8027:

'=item' outside of any '=over'

Around line 8143:

You forgot a '=back' before '=head1'

Around line 8156:

'=item' outside of any '=over'

Around line 8272:

You forgot a '=back' before '=head1'

Around line 8280:

'=item' outside of any '=over'

Around line 8418:

You forgot a '=back' before '=head1'