Martin Kutter > SOAP-WSDL-2.00.99_3 > SOAP::WSDL::XSD::Typelib::Builtin

Download:
SOAP-WSDL-2.00.99_3.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  20
Open  19
View/Report Bugs
Module Version: v2.0.99_3   Source   Latest Release: SOAP-WSDL-v3.002

NAME ^

SOAP::WSDL::XSD::Typelib::Builtin - Built-in XML Schema datatypes

DESCRIPTION ^

The SOAP::WSDL::XSD::Typelib::Builtin hierarchy implements all builtin types from the XML schema specification.

All XML schema derived types inherit from SOAP::WSDL::XSD::Typelib::Builtin::anyType.

These basic type classes are most useful when used as element or simpleType base classes.

Using SOAP::WSDL::XSD::Typelib::Builtin uses all of the builtin datatype classes.

All builtin types feature common behaviour described below in "OVERLOADED OPERATORS"

EXAMPLES ^

 my $bool = SOAP::WSDL::XSD::Typelib::Builtin::bool->new({ value => 0} );
 print $bool;    # prints "true"

 # implements <simpleType name="MySimpleType">
 #               <list itemType="xsd:string" />
 #            </simpleType>
 package MySimpleType;
 use SOAP::WSDL::XSD::Typelib::Builtin;
 use SOAP::WSDL::XSD::Typelib::SimpleType;

 use base qw(SOAP::WSDL::XSD::Typelib::SimpleType
    SOAP::WSDL::XSD::Typelib::Builtin::list
    SOAP::WSDL::XSD::Typelib::Builtin::string
 );
 1;

 # somewhere else
 my $list = MySimpleType->new({ value => [ 'You', 'shall', 'overcome' ] });
 print $list;   # prints "You shall overcome"

CLASS HIERARCHY ^

This is the inheritance graph for builtin types.

Types with [] marker describe types derived via the item in [] in the XML Schema specs.

Derivation is implemented via multiple inheritance with the derivation method as first item in the base class list.

 anyType
 - anySimpleType
     - duration
     - dateTime
     - date
     - time
     - gYearMonth
     - gYear
     - gMonthDay
     - gDay
     - gMonth
     - boolean
     - base64Binary
     - hexBinary
     - float
     - decimal
         - integer
         - nonPositiveInteger
             - negativeInteger
         - nonNegativeInteger
             - positiveInteger
             - unsignedLong
             - unsignedInt
             - unsignedShort
             - unsignedByte
         - long
             - int
                 - short
                     - byte
     - double
     - anyURI
     - NOTATION
     - string
          - normalizedString
              - language
              - Name
                  - NCName
                      - ID
                      - IDREF
                          - IDREFS [list]
                      - ENTITY
              - token
                  - NMTOKEN
                      - NMTOKENS [list]

OVERLOADED OPERATORS ^

Overloading is implemented via Class::Std's trait mechanism.

The following behaviours apply:

Subclasses ^

SOAP::WSDL::XSD::Typelib::Builtin::anyType

Base class for all types

SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType

Base class for all simple types

SOAP::WSDL::XSD::Typelib::Builtin::anyURI

Type representing URIs

SOAP::WSDL::XSD::Typelib::Builtin::boolean

Represents boolean data.

Serializes to "true" or "false".

Everything true in perl and not "false" is deserialized as true.

Returns true/false in boolean context.

Returns 1 / 0 in numeric context.

boolean objects have a special method for deleting their value, because calling setl_value(undef) results in the value being set to false.

 $obj->delete_value();

SOAP::WSDL::XSD::Typelib::Builtin::byte

byte integer objects.

SOAP::WSDL::XSD::Typelib::Builtin::date

date values are automatically converted into XML date strings during setting:

 YYYY-MM-DD+zz:zz

The time zone is set to the local time zone if not included.

All input variants supported by Date::Parse are supported. You may even pass in dateTime strings - the time part will be ignored. Note that set_value is around 100 times slower when setting non-XML-time strings

When setting dates before the beginning of the epoch (negative UNIX timestamp), you should use the XML date string format for setting dates. The behaviour of Date::Parse for dates before the epoch is system dependent.

SOAP::WSDL::XSD::Typelib::Builtin::dateTime

dateTime values are automatically converted into XML dateTime strings during setting:

 YYYY-MM-DDThh:mm:ss.nnnnnnn+zz:zz

The fraction of seconds (nnnnnnn) part is optional. Fractions of seconds may be given with arbitrary precision

The fraction of seconds part is excluded in converted values, as it would always be 0.

All input variants supported by Date::Parse are supported. Note that set_value is around 100 times slower when setting non-XML-time strings

SOAP::WSDL::XSD::Typelib::Builtin::decimal

decimal is the base of all non-float numbers

SOAP::WSDL::XSD::Typelib::Builtin::double

SOAP::WSDL::XSD::Typelib::Builtin::duration

SOAP::WSDL::XSD::Typelib::Builtin::ENTITY

SOAP::WSDL::XSD::Typelib::Builtin::float

SOAP::WSDL::XSD::Typelib::Builtin::gDay

SOAP::WSDL::XSD::Typelib::Builtin::gMonth

SOAP::WSDL::XSD::Typelib::Builtin::gMonthDay

SOAP::WSDL::XSD::Typelib::Builtin::gYear

SOAP::WSDL::XSD::Typelib::Builtin::gYearMonth

SOAP::WSDL::XSD::Typelib::Builtin::hexBinary

SOAP::WSDL::XSD::Typelib::Builtin::ID

SOAP::WSDL::XSD::Typelib::Builtin::IDREF

SOAP::WSDL::XSD::Typelib::Builtin::IDREFS

List of SOAP::WSDL::XSD::Typelib::Builtin::IDREF objects.

Derived by SOAP::WSDL::XSD::Typelib::Builtin::list.

SOAP::WSDL::XSD::Typelib::Builtin::int

SOAP::WSDL::XSD::Typelib::Builtin::integer

SOAP::WSDL::XSD::Typelib::Builtin::language

SOAP::WSDL::XSD::Typelib::Builtin::list

SOAP::WSDL::XSD::Typelib::Builtin::long

SOAP::WSDL::XSD::Typelib::Builtin::Name

SOAP::WSDL::XSD::Typelib::Builtin::NCName

SOAP::WSDL::XSD::Typelib::Builtin::negativeInteger

SOAP::WSDL::XSD::Typelib::Builtin::nonNegativeInteger

SOAP::WSDL::XSD::Typelib::Builtin::nonPositiveInteger

SOAP::WSDL::XSD::Typelib::Builtin::normalizedString

Tab, newline and carriage return characters are replaced by whitespace in set_value.

SOAP::WSDL::XSD::Typelib::Builtin::NOTATION

SOAP::WSDL::XSD::Typelib::Builtin::positiveInteger

SOAP::WSDL::XSD::Typelib::Builtin::QName

SOAP::WSDL::XSD::Typelib::Builtin::short

SOAP::WSDL::XSD::Typelib::Builtin::string

String values are XML-escaped on serialization.

The following characters are escaped: <, >, &

SOAP::WSDL::XSD::Typelib::Builtin::time

time values are automatically converted into XML time strings during setting:

 hh:mm:ss.nnnnnnn+zz:zz
 hh:mm:ss+zz:zz

The time zone is set to the local time zone if not included. The optional nanoseconds part is not included in converted values, as it would always be 0.

All input variants supported by Date::Parse are supported. You may even pass in dateTime strings - the date part will be ignored. Note that set_value is around 100 times slower when setting non-XML-time strings.

SOAP::WSDL::XSD::Typelib::Builtin::token

SOAP::WSDL::XSD::Typelib::Builtin::unsignedByte

SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt

SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong

SOAP::WSDL::XSD::Typelib::Builtin::unsignedShort

CAVEATS ^

BUGS AND LIMITATIONS ^

AUTHOR ^

Replace whitespace by @ in e-mail address.

 Martin Kutter E<gt>martin.kutter fen-net.deE<lt>

LICENSE AND COPYRIGHT ^

Copyright 2004-2007 Martin Kutter.

This file is part of SOAP-WSDL. You may distribute/modify it under the same terms as perl itself

syntax highlighting: