1SOAP::WSDL::Manual::FAQU(s3e)r Contributed Perl DocumentaStOiAoPn::WSDL::Manual::FAQ(3)
2
3
4
6 SOAP::WSDL::Manual::FAQ - Frequently Asked Questions (and answers)
7
9 Can I use SOAP::WSDL in a production environment?
10 Yes. SOAP::WSDL is used in production environments. You should - as
11 always - apply common sense and take appropriate safety measures,
12 especially if running SOAP::WSDL as a server.
13
14 Can I throw the WSDL away after generating?
15 Please don't. Future versions of SOAP::WSDL may require you to re-
16 generate interfaces in order to use them.
17
19 Which SOAP / WSDL versions does SOAP::WSDL support?
20 SOAP1.1 and WSDL1.1. SOAP1.2 and WSDL2 are not supported yet.
21
22 Which SOAP message Styles are supported?
23 document/literal.
24
25 The message / encoding styles rpc/encoded and rpc/literal are not
26 supported (rpc/literal is hardly used).
27
28 rpc/literal is not implemented yet.
29
30 Unfortunately, SOAP::WSDL can't even parse many rpc/encoded WSDL
31 definitions, and thus cannot inform you about unsupported message
32 styles in some situations.
33
35 No. They can be as well-defined and useful as the document/literal
36 variant.
37
38 The difference between rpc and document is that rpc SOAP messages have
39 an additional container named after the remote procedure called.
40
41 rpc/literal is RPC with named parameters, whereas rpc/encoded
42 corresponds to positional parameters.
43
44 rpc/encoded is prohibited by the WS-I Basic Profile. However,
45 rpc/encoded is still popular, especially for scripting languages like
46 perl, python or php.
47
48 You should probably use SOAP::Lite for rpc/encoded web services.
49
50 All the document/rpc literal/encoded discussion will cede with WSDL2.0:
51 These variants are dropped in favour of an extensible operation style
52 mechanism.
53
55 Does SOAP::WSDL support namespaces?
56 Well, sort of. SOAP::WSDL can use WSDL definitions containing
57 namespaces, and emits SOAP messages with namespace information.
58
59 Its SOAP message parser however, is not namespace sensitive but uses
60 the pre-shared information from the WSDL for looking up what each XML
61 node means.
62
63 SOAP::WSDL can parse SOAP messages including namespace information up
64 to the point where equally named elements from different namespaces may
65 appear at the same position.
66
67 This is a long-standing feature request and will eventually be
68 resolved.
69
70 Validation
71 Does SOAP::WSDL perform XML Schema Validation?
72
73 No, SOAP::WSDL does not perform XML Schema Validation. It does,
74 however, enforce the correct structure on both XML and perl data.
75 Occurrence, ordering, value-spaces, and identity constraints are not
76 checked.
77
78 Does SOAP::WSDL perform XML Validation?
79
80 No, SOAP::WSDL does not perform XML Validation (that is, validation
81 against a DTD). WS-I prohibits the use of DTDs in WSDL definitions.
82
83 Isn't validation required for XML?
84
85 No. The XML Specification does not require validation from XML
86 processors. It states how validating and non-validating parsers must
87 react on errors.
88
89 Note: Validation in the context of (only) XML actually means DTD
90 validation.
91
92 And doesn't XML Schema require validation?
93
94 The XML Schema specification requires conformant XML Schema processors
95 to be able to validate XML Schema constraints.
96
97 SOAP::WSDL is not a conformant XML Schema processor in this sense, as
98 it does not validate all XML Schema constraints.
99
100 And does SOAP require XML Schema Validation?
101
102 No. The SOAP1.1 note does not say anything about validation. The
103 SOAP1.2. specification explicitly states that XML Schema validation is
104 not required for the SOAP envelope, and that applications may decide
105 whether they need XML Schema Validation for the SOAP payload or not.
106
107 The WSDL 1.1. specification does not mandate XML Schema validation. It
108 does actually not even mandate the use of XML Schema for type
109 definitions.
110
111 Can SOAP::WSDL parse SOAP message fragments?
112 No. SOAP::WSDL can parse neither well-formed nor not-well-formed SOAP
113 message chunks.
114
116 Can I use Storable to freeze/thaw SOAP::WSDL's objects?
117 You can freeze almost all of SOAP::WSDL's objects. The only exceptions
118 are the objects used in parsing WSDL definitions itself - they cannot
119 be frozen.
120
121 Note that freezing/thawing inside-out objects comes with a performance
122 penalty and is at around the speed of XML generation/parsing.
123
125 How fast is SOAP::WSDL?
126 As of this writing, SOAP::WSDL is the fastest SOAP Client toolkit for
127 perl available on CPAN. There are no published server benchmarks yet.
128
129 If you need extra speed you can try SOAP::WSDL_XS available from
130 SOAP::WSDL's subversion repository at:
131
132 https://soap-wsdl.svn.sourceforge.net/svnroot/soap-wsdl/SOAP-WSDL_XS/trunk
133
134 Note however that SOAP::WSDL_XS is not very mature yet and only
135 suitable for use in trusted environments - you definitely should not
136 use it on a public internet SOAP server yet.
137
138 Note further that SOAP::WSDL's inside-out objects come with a big
139 performance penalty when freezing/thawing them with Storable.
140
141 There's a lot of perl modules generated. Don't they eat up all my memory?
142 SOAP::WSDL usually uses a bit more memory than SOAP::Lite, but less
143 than XML::Compile. Test if in question.
144
145
146
147perl v5.28.0 2018-07-15 SOAP::WSDL::Manual::FAQ(3)