XML-Schema

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

  working but the interface may change slightly pending some further
  investigation required into namespace processing.  The process
  options SKIP, LAX and STRICT are supported but they currently don't
  have any effect as no namespace processing is performed.  Note also
  that this implementation works only on namespace prefixes and
  doesn't resolve them into their actual namespace values (which it
  should).

* Added XML::Schema::Attribute::Group and totally cleaned up and (mostly)
  completed the implementation of attributes, including scoped type 
  management, relocatable attribute groups, nested groups, wildcards
  within nested groups, usage: OPTIONAL, REQUIRED, PROHIBIT.  The 
  only support missing is in those areas that wildcards lack, described
  above.  Added t/attrgroup.t and various new tests to t/attribute.t

* Changed attribute to perform FIXED constraint check on the post-
  validation, but pre-activation value.  Previously, this was hacked
  by scheduling an instance action to check the fixed constraint.

* Had a major overhaul of the documentation, correcting and completing 
  many more pages.  Still got some ay to go...

docs/html/modules.html  view on Meta::CPAN

  rely on passing references to type objects around.  Secondly, and
  perhaps more significantly, it means that you can use types before
  you define them, something which the XML Schema specification
  explicitly permits.  
</p>
<p> 
  Moving upwards from attributes, we have the 
  <a href="modules/XML/Schema/Attribute/Group.html#HASH(0x84a88f0)">XML::Schema::Attribute::Group</a> module which acts as a
  container for attributes.  Complex types use an attribute group
  to define their attributes.  They are also used to represent
  free-standing collections of attributes which can be relocated 
  into numerous different complex type definitions.
</p>
<p>
  The <a href="modules/XML/Schema/Type/Complex.html#HASH(0x87de208)">XML::Schema::Type::Complex</a> module implements the 
  complex types.  A complex type has an attribute group which defines
  the permitted attributes for the element and a content model which 
  specifies what other elements and/or character content the element
  may contain.  Complex types can nest indefinately within complex
  type.
</p>

docs/html/modules/XML/Schema/Attribute.html  view on Meta::CPAN

    </p>


    <p>
    An attribute can be defined within a particular scope.  Usually,
    it is within the definition of a <a href="../../../modules/XML/Schema/Type/Complex.html">complex type</a>, but can 
    also exist within an <a href="../../../modules/XML/Schema/Attribute/Group.html">attribute group</a>.
    The attribute communicates with its enclosing scope to resolve
    its type name (e.g. 'string') with a type object.  This allows 
    types to effectively be used before they are defined, and also 
    for attributes to be relocated for use in different scope (e.g.
    as part of an attribute group) and to resolve the correct type
    in each location.
    </p>

    
  

<hr width="100%" size="1" noshade="1"><a name="section_Methods"><h2>Methods</h2></a><ul>
<li><p>
<a name="method_new"><b>new()</b></a>

docs/html/modules/XML/Schema/Attribute/Group.html  view on Meta::CPAN


  
<hr width="100%" size="1" noshade="1"><a name="section_Description"><h2>Description</h2></a>
    <p>
    This module implements an object class for representing XML
    attribute groups within XML Schema.  An attribute group defines a
    collection of attributes and their usage constraints (e.g
    OPTIONAL, REQUIRED or PROHIBITED).  A <a href="../../../../modules/XML/Schema/Type/Complex.html">complex type</a> definition
    uses an attribute group to define the acceptable attributes for
    elements of that type.  Attribute groups can also be defined as
    independant entities to represent a relocatable collection of 
    attributes that can be reused in different complex type definitions
    as required.
    </p>

    <p>
    For further information on attribute groups, please consult the
    W3C XML Schema specification.
    </p>

  

docs/src/modules.html  view on Meta::CPAN

  rely on passing references to type objects around.  Secondly, and
  perhaps more significantly, it means that you can use types before
  you define them, something which the XML Schema specification
  explicitly permits.  
</p>
<p> 
  Moving upwards from attributes, we have the 
  [% cl('XML::Schema::Attribute::Group') %] module which acts as a
  container for attributes.  Complex types use an attribute group
  to define their attributes.  They are also used to represent
  free-standing collections of attributes which can be relocated 
  into numerous different complex type definitions.
</p>
<p>
  The [% cl('XML::Schema::Type::Complex') %] module implements the 
  complex types.  A complex type has an attribute group which defines
  the permitted attributes for the element and a content model which 
  specifies what other elements and/or character content the element
  may contain.  Complex types can nest indefinately within complex
  type.
</p>

docs/xml/modules/XML/Schema/Attribute.xml  view on Meta::CPAN


    <p>
    An attribute can be defined within a particular scope.  Usually,
    it is within the definition of a <module
    class="XML::Schema::Type::Complex">complex type</module>, but can 
    also exist within an <module
    class="XML::Schema::Attribute::Group">attribute group</module>.
    The attribute communicates with its enclosing scope to resolve
    its type name (e.g. 'string') with a type object.  This allows 
    types to effectively be used before they are defined, and also 
    for attributes to be relocated for use in different scope (e.g.
    as part of an attribute group) and to resolve the correct type
    in each location.
    </p>
    
  </description>

  <methods>
    <method id="new">
      <p>
        Constructor method called to create a new attribute object.  A

docs/xml/modules/XML/Schema/Attribute/Group.xml  view on Meta::CPAN


  <description>
    <p>
    This module implements an object class for representing XML
    attribute groups within XML Schema.  An attribute group defines a
    collection of attributes and their usage constraints (e.g
    OPTIONAL, REQUIRED or PROHIBITED).  A <module
    class="XML::Schema::Type::Complex">complex type</module> definition
    uses an attribute group to define the acceptable attributes for
    elements of that type.  Attribute groups can also be defined as
    independant entities to represent a relocatable collection of 
    attributes that can be reused in different complex type definitions
    as required.
    </p>
    <p>
    For further information on attribute groups, please consult the
    W3C XML Schema specification.
    </p>
  </description>


lib/XML/Schema/Attribute/Group.pm  view on Meta::CPAN

#============================================================= -*-perl-*-
#
# XML::Schema::Attribute::Group.pm
#
# DESCRIPTION
#   Module implementing an attribute group which is used by the 
#   XML::Schema::Type::Complex module to store attributes for a
#   complex type, and also to define Attribute Groups within a 
#   schema to represent relocatable collections of attributes.
#
# AUTHOR
#   Andy Wardley <abw@kfs.org>
#
# COPYRIGHT
#   Copyright (C) 2001 Canon Research Centre Europe Ltd.
#   All Rights Reserved.
#
#   This module is free software; you can redistribute it and/or
#   modify it under the same terms as Perl itself.



( run in 2.701 seconds using v1.01-cache-2.11-cpan-71847e10f99 )