package SUSHI::SUSHITypes::ReportItem;
use strict;
use warnings;


__PACKAGE__->_set_element_form_qualified(0);

sub get_xmlns { 'http://www.niso.org/schemas/counter' };

our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;

sub __get_attr_class {
    return $XML_ATTRIBUTE_CLASS;
}

use Class::Std::Fast::Storable constructor => 'none';
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);

Class::Std::initialize();

{ # BLOCK to scope variables

my %ItemIdentifier_of :ATTR(:get<ItemIdentifier>);
my %ItemPlatform_of :ATTR(:get<ItemPlatform>);
my %ItemPublisher_of :ATTR(:get<ItemPublisher>);
my %ItemName_of :ATTR(:get<ItemName>);
my %ItemDataType_of :ATTR(:get<ItemDataType>);
my %ItemPerformance_of :ATTR(:get<ItemPerformance>);

__PACKAGE__->_factory(
    [ qw(        ItemIdentifier
        ItemPlatform
        ItemPublisher
        ItemName
        ItemDataType
        ItemPerformance

    ) ],
    {
        'ItemIdentifier' => \%ItemIdentifier_of,
        'ItemPlatform' => \%ItemPlatform_of,
        'ItemPublisher' => \%ItemPublisher_of,
        'ItemName' => \%ItemName_of,
        'ItemDataType' => \%ItemDataType_of,
        'ItemPerformance' => \%ItemPerformance_of,
    },
    {
        'ItemIdentifier' => 'SUSHI::SUSHITypes::Identifier',
        'ItemPlatform' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
        'ItemPublisher' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
        'ItemName' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
        'ItemDataType' => 'SUSHI::SUSHITypes::DataType',
        'ItemPerformance' => 'SUSHI::SUSHITypes::Metric',
    },
    {

        'ItemIdentifier' => 'ItemIdentifier',
        'ItemPlatform' => 'ItemPlatform',
        'ItemPublisher' => 'ItemPublisher',
        'ItemName' => 'ItemName',
        'ItemDataType' => 'ItemDataType',
        'ItemPerformance' => 'ItemPerformance',
    }
);

} # end BLOCK







1;


=pod

=head1 NAME

SUSHI::SUSHITypes::ReportItem

=head1 DESCRIPTION

Perl data type class for the XML Schema defined complexType
ReportItem from the namespace http://www.niso.org/schemas/counter.

The container for usage data and other information related to an item such as a journal, book, database, etc.




=head2 PROPERTIES

The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:

=over

=item * ItemIdentifier


=item * ItemPlatform


=item * ItemPublisher


=item * ItemName


=item * ItemDataType


=item * ItemPerformance




=back


=head1 METHODS

=head2 new

Constructor. The following data structure may be passed to new():

 { # SUSHI::SUSHITypes::ReportItem
   ItemIdentifier =>  { # SUSHI::SUSHITypes::Identifier
     Type => $some_value, # IdentifierType
     Value =>  $some_value, # string
   },
   ItemPlatform =>  $some_value, # string
   ItemPublisher =>  $some_value, # string
   ItemName =>  $some_value, # string
   ItemDataType => $some_value, # DataType
   ItemPerformance =>  { # SUSHI::SUSHITypes::Metric
     Period =>  { # SUSHI::SUSHITypes::DateRange
       Begin =>  $some_value, # date
       End =>  $some_value, # date
     },
     Category => $some_value, # Category
     Instance =>  { # SUSHI::SUSHITypes::PerformanceCounter
       MetricType => $some_value, # MetricType
       Count =>  $some_value, # nonNegativeInteger
     },
   },
 },




=head1 AUTHOR

Generated by SOAP::WSDL

=cut

