XML::Pastor::Schema::AttributeGroup - Class that represents the META information
about a W3C schema attribute group.
This module is used internally by XML::Pastor. You do not normally know much
about this module to actually use XML::Pastor. It is documented here for
completeness and for XML::Pastor developers. Do not count on the interface of
this module. It may change in any of the subsequent releases. You have been
This class descends from XML::Pastor::Schema::Object.
my $ag = XML::Pastor::Schema::AttributeGroup->new();
$ag->setFields(name => 'personal', scope=> 'global', nameIsAutoGenerated=>0);
$ag->attributes(['lastName', 'firstName', 'title', 'dateOfBirth']);
print $ag->name(); # prints 'personal'.
print $ag->scope(); # prints 'global'.
is a data-oriented object class that
reprsents a W3C attribute group
. It is parsed from the W3C schema and
is used a building block for the produced schema model
. Objects of this
class contain META information about the W3C schema attribute group
that they represent.
Like other schema object classes, this is a data-oriented object class, meaning
it doesn't have many methods other than a constructor and various accessors.
constructor method instantiates a new
object. It is inheritable, and indeed
inherited, by the decsendant classes.
Any -named- fields that are passed as parameters are initialized to those values
within the newly created object.
In its overriden form, what this method does is as follows:
- sets the contentType field to 'attributeGroup';
- creates the attributes array-ref field if not passed already as a
- creates the attributeInfo hash-ref field if not passed already as a
Several accessors are inherited by this class from its ancestor
XML::Pastor::Schema::Object. Please see XML::Pastor::Schema::Object for a
documentation of those.
Accessors defined here
my $attribs = $object->attributes(); # GET
$object->attributes($attribs); # SET
A reference to an array containing the names of the attributes that this
my $ai = $object->attributeInfo(); # GET
$object->attributeInfo($ai); # SET
A reference to a hash whose keys are the names of the attributes, and whose
values are objects of type XML::Pastor::Schema::Attribute, that give meta
information about those attributes.
There no known bugs at this time, but this doesn't mean there are aren't any.
Note that, although some testing was done prior to releasing the module, this
should still be considered alpha code. So use it at your own risk.
Note that there may be other bugs or limitations that the author is not aware
Ayhan Ulusoy <dev(at)ulusoy(dot)name>
Copyright (C) 2006-2007 Ayhan Ulusoy. All Rights Reserved.
This module is free software; you can redistribute it and/or modify it under the
same terms as Perl itself.
See also XML::Pastor, XML::Pastor::ComplexType, XML::Pastor::SimpleType
If you are curious about the implementation, see XML::Pastor::Schema::Parser,
If you really want to dig in, see XML::Pastor::Schema::Attribute,