1SOAP::WSDL::XSD::TypeliUbs:e:rElCeomnetnrti(b3u)ted PerlSODAoPc:u:mWeSnDtLa:t:iXoSnD::Typelib::Element(3)
2
3
4
6 SOAP::WSDL::XSD::Typelib::Element - element base clase
7
9 This example creates a class for this XML schema definition:
10
11 <element name="MyElement" type="xsd:string" nillable="1"
12 minOccurs="1" maxOccurs="1"/>
13
14 package MyElement;
15 use strict;
16 use Class::Std::Fast::Storable constructor => 'none';
17 use base (
18 'SOAP::WSDL::XSD::Typelib::Element',
19 'SOAP::WSDL::XSD::Typelib::Builtin::string',
20 );
21
22 __PACKAGE__->__set_name('MyElementName');
23 __PACKAGE__->__set_nillable(1);
24 __PACKAGE__->__set_minOccurs(1);
25 __PACKAGE__->__set_maxOccurs(1);
26 __PACKAGE__->__set_ref(0);
27
28 Now we create this XML schema definition type class:
29
30 <element name="MyElement2" ref="tns:MyElement"/>
31
32 package MyElement2;
33 use strict;
34 use Class::Std::Fast::Storable constructor => 'none';
35 use base (
36 'SOAP::WSDL::XSD::Typelib::Element',
37 'MyElement'
38 );
39
40 __PACKAGE__->__set_name('MyElementName');
41 __PACKAGE__->__set_nillable(0);
42 __PACKAGE__->__set_ref(1);
43
45 · type="Foo"
46
47 Implemented via inheritance.
48
49 · ref="Foo"
50
51 Implemented via inheritance, too. Calling
52
53 __PACKAGE__->__set_ref(1) is highly encouraged, though it has no
54 effect yet - it will probably be needed for serialization to XML
55 Schema definitions some day.
56
58 · minOccurs maxOccurs not implemented
59
60 These attributes are not yet supported, though they may be set as
61 class properties via __PACKAGE__->__set_FOO methods.
62
63 · 'http://www.w3.org/2001/XMLSchema-instance prefix is hardcoded
64
65 The prefix for 'http://www.w3.org/2001/XMLSchema-instance (used as
66 namespace for the
67 {http://www.w3.org/2001/XMLSchema-instance}nil="true" attribute is
68 hardcoded as 'xsi'.
69
70 You should definitely provide your XML envelope generator with the
71 same prefix namespace combination (Default for
72 SOAP::WSDL::Envelope).
73
75 Copyright 2004-2007 Martin Kutter.
76
77 This file is part of SOAP-WSDL. You may distribute/modify it under the
78 same terms as perl itself
79
81 Martin Kutter <martin.kutter fen-net.de>
82
84 $Rev: 851 $
85 $LastChangedBy: kutterma $
86 $Id: Element.pm 851 2009-05-15 22:45:18Z kutterma $
87 $HeadURL: https://soap-wsdl.svn.sourceforge.net/svnroot/soap-wsdl/SOAP-WSDL/trunk/lib/SOAP/WSDL/XSD/Typelib/Element.pm $
88
89
90
91perl v5.32.0 2020-07-2S8OAP::WSDL::XSD::Typelib::Element(3)