473,320 Members | 1,961 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

Removing sequence tag from SOAP WSDL Schema -- help please

Is that even possible?

I am creating a web service in .NET to expose some already created .NET
programs to other groups. One group is writing the client in PERL, and thus
wishes the wsdl schema to not be sequenced. (PERL hashes do not retain order
information) First, the w3 specs don't mention the sequence in any detail -
its just there in the examples, which makes me wonder if removing the
sequence tag is even supportable. Second, I can find nothing in the .NET
documentation that suggests how I would remove the sequence information, and
nothing in DefaultWsdlHelpGenerator.aspx that even mentions sequence.

I suppose I could try generating the .asmx?WSDL, manually removing the
sequence tags, then having people point to it, but I am not sure that would
work.

Anyone have any ideas?
Nov 23 '05 #1
3 4644
Hi,

Can i rephrase this question and post if back to you?

"Can you guys change the XSD spec so I can write a webservice which is
used by a perl implementation, which uses hashes and therefore cannot
maintain a sequence?"

The "sequence" is a composer. One of three possible;
- sequence
- choice
- all

It makes no sense removing the composer. If you do, the only thing
that might happen is that 'a default' is used. Which again would be
one of the three mentioned above.

My advise would be;

Get the "Perl" implementation to adhere to standards, not the other
way around.

Hope this helps,

Marvin Smit.
On Tue, 13 Sep 2005 06:56:03 -0700, "kevin"
<ke***@discussions.microsoft.com> wrote:
Is that even possible?

I am creating a web service in .NET to expose some already created .NET
programs to other groups. One group is writing the client in PERL, and thus
wishes the wsdl schema to not be sequenced. (PERL hashes do not retain order
information) First, the w3 specs don't mention the sequence in any detail -
its just there in the examples, which makes me wonder if removing the
sequence tag is even supportable. Second, I can find nothing in the .NET
documentation that suggests how I would remove the sequence information, and
nothing in DefaultWsdlHelpGenerator.aspx that even mentions sequence.

I suppose I could try generating the .asmx?WSDL, manually removing the
sequence tags, then having people point to it, but I am not sure that would
work.

Anyone have any ideas?


Nov 23 '05 #2


"Marvin Smit" wrote:
Hi,

Can i rephrase this question and post if back to you?

"Can you guys change the XSD spec so I can write a webservice which is
used by a perl implementation, which uses hashes and therefore cannot
maintain a sequence?"

The "sequence" is a composer. One of three possible;
- sequence
- choice
- all

It makes no sense removing the composer. If you do, the only thing
that might happen is that 'a default' is used. Which again would be
one of the three mentioned above.

My advise would be;

Get the "Perl" implementation to adhere to standards, not the other
way around.

Hope this helps,

Marvin Smit.
On Tue, 13 Sep 2005 06:56:03 -0700, "kevin"
<ke***@discussions.microsoft.com> wrote:
Is that even possible?

I am creating a web service in .NET to expose some already created .NET
programs to other groups. One group is writing the client in PERL, and thus
wishes the wsdl schema to not be sequenced. (PERL hashes do not retain order
information) First, the w3 specs don't mention the sequence in any detail -
its just there in the examples, which makes me wonder if removing the
sequence tag is even supportable. Second, I can find nothing in the .NET
documentation that suggests how I would remove the sequence information, and
nothing in DefaultWsdlHelpGenerator.aspx that even mentions sequence.

I suppose I could try generating the .asmx?WSDL, manually removing the
sequence tags, then having people point to it, but I am not sure that would
work.

Anyone have any ideas?


Marvin

I am going to assume that my last line is the problem here. I suppose that
last line could be read as asking for a way to remove the entire tag and not
just change the sequence information. The problem is that the .NET API for
creating web services does not seem to allow me to change that information
from the default of "sequence" to "all".

Having said that, the implementation on the PERL side does adhere to the
service standard. Hashes are just data constructs -- the output can be
massaged however we see fit. Since it’s a hash, however, it doesn't retain
information about order or structure and thus allowing the web service to use
the "all" option would make the PERL implementation faster and cleaner.

If the .NET API doesn't provide for a means of changing the value of the
sequence tag, then I would have to say that it’s the .NET implementation with
the problem adhering to standards. I doubt that, though -- I am sure there
is a way to do this, I just haven't found it.

Nov 23 '05 #3
I don't know if it'll help you, but I ran into a similar issue with
generating XML (non web-services) from a C++ client, using the MSXML
components. The schema we had to adhere to demanded proper sequence, but
without hard-coding cardinality information ("b" follows "a", "d1" must come
before "d2.2", etc), it was extremely difficult to keep everything in
sequence.

What I wound up doing was to assign each element an ordinal attribute. As
the element was inserted into the document, the code would walk the tree and
ensure that proper sequence was maintained.

This produced proper sequence, but caused a side effect: the ordinal
attributes were rejected on the receiving end because they weren't in the
schema. The solution was to build all the XML, then feed it through an XSL
transform that stripped out the cardinality data. It was easy, clean, and
fast.

Whether this can be done from your perl client, I don't know, but it's worth
a try.

Erik J Sawyer
Appro Systems

"kevin" wrote:


"Marvin Smit" wrote:
Hi,

Can i rephrase this question and post if back to you?

"Can you guys change the XSD spec so I can write a webservice which is
used by a perl implementation, which uses hashes and therefore cannot
maintain a sequence?"

The "sequence" is a composer. One of three possible;
- sequence
- choice
- all

It makes no sense removing the composer. If you do, the only thing
that might happen is that 'a default' is used. Which again would be
one of the three mentioned above.

My advise would be;

Get the "Perl" implementation to adhere to standards, not the other
way around.

Hope this helps,

Marvin Smit.
On Tue, 13 Sep 2005 06:56:03 -0700, "kevin"
<ke***@discussions.microsoft.com> wrote:
Is that even possible?

I am creating a web service in .NET to expose some already created .NET
programs to other groups. One group is writing the client in PERL, and thus
wishes the wsdl schema to not be sequenced. (PERL hashes do not retain order
information) First, the w3 specs don't mention the sequence in any detail -
its just there in the examples, which makes me wonder if removing the
sequence tag is even supportable. Second, I can find nothing in the .NET
documentation that suggests how I would remove the sequence information, and
nothing in DefaultWsdlHelpGenerator.aspx that even mentions sequence.

I suppose I could try generating the .asmx?WSDL, manually removing the
sequence tags, then having people point to it, but I am not sure that would
work.

Anyone have any ideas?


Marvin

I am going to assume that my last line is the problem here. I suppose that
last line could be read as asking for a way to remove the entire tag and not
just change the sequence information. The problem is that the .NET API for
creating web services does not seem to allow me to change that information
from the default of "sequence" to "all".

Having said that, the implementation on the PERL side does adhere to the
service standard. Hashes are just data constructs -- the output can be
massaged however we see fit. Since it’s a hash, however, it doesn't retain
information about order or structure and thus allowing the web service to use
the "all" option would make the PERL implementation faster and cleaner.

If the .NET API doesn't provide for a means of changing the value of the
sequence tag, then I would have to say that it’s the .NET implementation with
the problem adhering to standards. I doubt that, though -- I am sure there
is a way to do this, I just haven't found it.

Nov 23 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: burdeen | last post by:
I've been trying to return an array with PHP5 soap. Is this not supported? or am i doing it wrong? Seems to return on the last element in the array. In my WSDL i've defined my return type as a...
0
by: David | last post by:
Hi everyone, I wonder how is it possible to make PHP SOAP extension convert the returned complex type to an instance of one of my classes. Here I give you a short example: complexTest.wsdl:...
15
by: MR | last post by:
i need to develop a SOAP client, Since I have never personally done one I would like to make sure that I am going about it correctly. The client is a Windows (probably 2k3) application that...
3
by: parrot toes | last post by:
Summary: I have been trying to make requests of a web service provided by Axis using a dotnet client with code generated by wsdl.exe and have been getting exceptions when trying to process the...
0
by: Jigar.Patel | last post by:
I have simple remoting server exposing following simple method. When I try to add webreference to this server in another project by serveraddresss?wsdl, it gives me following error: Custom tool...
0
by: Jigar.Patel | last post by:
I have simple remoting server exposing following simple method. When I try to add webreference to this server in another project, it gives me following error: Custom tool error: Unable to import...
4
by: Jon Davis | last post by:
When people discuss XML Web Services in the context of .NET, and they talk about their WSDL file and the like, does this infer SOAP? Or are there other XML-based web protocols besides SOAP that...
7
by: beachdog | last post by:
I'm using Visual Studio 2005/C# to build a web client. The web server is something I've written in a different framework, which does not support generating wsdl, so I have hand-built a wsdl file,...
1
by: akumar8k | last post by:
when i am excusing the below code i am getting the error. Error 1 − <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> − <SOAP-ENV:Body> −
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: jfyes | last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
0
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
0
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.