You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Erik van Zijst <er...@marketxs.com> on 2001/03/14 13:42:43 UTC

inheritance in WSDL

How do I describe inheritance of complex types in WSDL?

Erik
-- 
unfair competition, n.:
	Selling cheaper than we do.

Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
On Thursday 15 March 2001 10:24, you wrote:
> one of the main points of web services is to be language neutral, so
> that they can be consumed by any other system. the same service could
> be called by a COBOL program, which doesn't have inheritance, or even
> objects. what is the use case that requires you to expose inheritance
> at the WSDL level?

I need my clients to know about the hierarchy of serialized objects because 
the server's service methods take super classes as argument.
The client is supposed to pass sub classes of the hierarchy to these methods.
So the proxy generators are supposed to know about this, so they can create 
proxy methods that take the super class.

I described the problem in an internal document which you can view at:
http://prutser.cx/~icehawk/SOAP-Research.html
Start reading at paragraph 3.3 (Inheritance)

Erik
-- 
Every program is a part of some other program, and rarely fits.

Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
On Thursday 15 March 2001 10:24, you wrote:
> one of the main points of web services is to be language neutral, so
> that they can be consumed by any other system. the same service could
> be called by a COBOL program, which doesn't have inheritance, or even
> objects. what is the use case that requires you to expose inheritance
> at the WSDL level?

I need my clients to know about the hierarchy of serialized objects because 
the server's service methods take super classes as argument.
The client is supposed to pass sub classes of the hierarchy to these methods.
So the proxy generators are supposed to know about this, so they can create 
proxy methods that take the super class.

I described the problem in an internal document which you can view at:
http://prutser.cx/~icehawk/SOAP-Research.html
Start reading at paragraph 3.3 (Inheritance)

Erik
-- 
Every program is a part of some other program, and rarely fits.

RE: inheritance in WSDL

Posted by Oisin Hurley <oh...@iona.com>.
[re: keeping return types at server]
>What do you guys think of that? I've given it a little more thought and it
>might just be not so bad.

In one fell swoop, this feature will:
   . make all SOAP servers stateful implying lifecycle management for
     all return values related to their clients
   . reduce scalability considerably be requiring busy servers to have
     loads more space for storing results
   . damage load balancing properties of web services by ensuring that
     the client will have to get back to the same server - ie implying a
     session
   . cause multiple calls in the situation where a client might actually
     want a return value, complicating the failure model and reducing
     throughput

I suggest that one does without inheritance in WSDL instead. Or do
interface flattening.

  --oh


---------------------------------------------------------------------
To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
For additional commands, email: soap-user-help@xml.apache.org


RE: inheritance in WSDL

Posted by Oisin Hurley <oh...@iona.com>.
[re: keeping return types at server]
>What do you guys think of that? I've given it a little more thought and it
>might just be not so bad.

In one fell swoop, this feature will:
   . make all SOAP servers stateful implying lifecycle management for
     all return values related to their clients
   . reduce scalability considerably be requiring busy servers to have
     loads more space for storing results
   . damage load balancing properties of web services by ensuring that
     the client will have to get back to the same server - ie implying a
     session
   . cause multiple calls in the situation where a client might actually
     want a return value, complicating the failure model and reducing
     throughput

I suggest that one does without inheritance in WSDL instead. Or do
interface flattening.

  --oh


---------------------------------------------------------------------
To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
For additional commands, email: soap-user-help@xml.apache.org


Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
> Perhaps it's an idea to keep all return types at the server and just give
> references to them to the clients. Then they'd just invoke the get and set
> methods remotely.
> This would cause me to create a significantly different API than the
> existing Java API, but perhaps it is the only clean way to get around the
> inheritance problem.

What do you guys think of that? I've given it a little more thought and it 
might just be not so bad.

It'd be kinda like the JNI approach, where the objects always stay in the VM 
and you only have references.
After invoking a method you just have a reference to some object in the JVM 
and cycle through the object to get a reference to one of its members. Then 
you call a method to read the value and actually copy the data (such as a 
string) to the C-app.

If you'd take this kind of approach, you'd have to think about object 
persistence. How long would the SOAP server keep the returned objects in 
memory etc?

Anyway, you'd get around the inheritance problem on the same way as JNI 
bridges between OO-Java and plain C.

To keep the number of remote invocations relatively low, the client could use 
things as toString() on the remote return types to get all of its members in 
one call and parse that on the client side.

I'd be pleased to hear your opinions,
Erik
-- 
Trying to establish voice contact ... please ____yell into keyboard.

Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
> Perhaps it's an idea to keep all return types at the server and just give
> references to them to the clients. Then they'd just invoke the get and set
> methods remotely.
> This would cause me to create a significantly different API than the
> existing Java API, but perhaps it is the only clean way to get around the
> inheritance problem.

What do you guys think of that? I've given it a little more thought and it 
might just be not so bad.

It'd be kinda like the JNI approach, where the objects always stay in the VM 
and you only have references.
After invoking a method you just have a reference to some object in the JVM 
and cycle through the object to get a reference to one of its members. Then 
you call a method to read the value and actually copy the data (such as a 
string) to the C-app.

If you'd take this kind of approach, you'd have to think about object 
persistence. How long would the SOAP server keep the returned objects in 
memory etc?

Anyway, you'd get around the inheritance problem on the same way as JNI 
bridges between OO-Java and plain C.

To keep the number of remote invocations relatively low, the client could use 
things as toString() on the remote return types to get all of its members in 
one call and parse that on the client side.

I'd be pleased to hear your opinions,
Erik
-- 
Trying to establish voice contact ... please ____yell into keyboard.

Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
On Thursday 15 March 2001 14:34, you wrote:
> As an aside COBOL does have inheritance and objects. CORBA is language
> neutral and supports objects (supported by COBOL) as is COM (also supported
> by COBOL).
> SOAP not really supporting objects is more a case of the SOAP spec
> providing xml over some protocol and leaving the object implementation and
> discovery to other groups building on top of this plumbing.

So what it really comes down to is that SOAP is like a communication layer 
and you're relatively free to send anything you like.
Making the client interpret what you send is up to you though.

I mean, when I start using something else than XML schema to describe the 
hierarchy and I use for example XMI on SOAP, it'll be anything but 'S'imple 
to create proxies for my service.
I assume the use of tools like IBM-WSTK or IdooXoap by clients is then out of 
the question. Clients will have to sit down, interpret the WSDL and build 
their own proxies.

Perhaps it's an idea to keep all return types at the server and just give 
references to them to the clients. Then they'd just invoke the get and set 
methods remotely.
This would cause me to create a significantly different API than the existing 
Java API, but perhaps it is the only clean way to get around the inheritance 
problem.

The performance impact would be dramatic though.

Erik

> regards
> Graham
>
>
>
> -----Original Message-----
> From: graham glass [mailto:graham-glass@mindspring.com]
> Sent: Donnerstag, 15. März 2001 10:24
> To: soap-user@xml.apache.org
> Subject: RE: inheritance in WSDL
>
>
> one of the main points of web services is to be language neutral, so
> that they can be consumed by any other system. the same service could
> be called by a COBOL program, which doesn't have inheritance, or even
> objects. what is the use case that requires you to expose inheritance
> at the WSDL level?
>
> cheers,
> graham
>
> -----Original Message-----
> From: Erik van Zijst [mailto:erik@marketxs.com]
> Sent: Thursday, March 15, 2001 3:05 AM
> To: soap-user@xml.apache.org
> Subject: Re: inheritance in WSDL
>
> On Wednesday 14 March 2001 21:41, you wrote:
> > This is a question about the type spec language used in WSDL and not
> > about WSDL itself. If you are using XML Schema as the type specification
> > language, then you have a limited amount of inheritance capability as
> > supported by XML Schema. The schema spec (and primer) explain how
> > to do the kind of refinements they support.
> >
> > Suppose you use a type spec language that is more powerful than
> > XML Schema. Does that allow you to use subtyping fully? Not
> > necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> > a way that the inheritance hierarchy can be recovered on the other
> > side. If you use XMI encoding (or some other encoding) then you
> > can exchange richer typed values.
>
> But isn't the IDL much more important than the actual XML traffic? The WSDL
> determines the working of the eventual client proxies. The WSDL will need
> to describe the hierarchy, so the proxies and the serializers know about
> it.
>
> How do I encode that in WSDL? If I need to use something else than
> XML-schema, please tell me how that works.
>
> The thing I'm trying to accomplisch really isn't anything exotic. It are
> the basics of every OO language. How come that something new like SOAP
> (Object Access protocol, really sounds like OO) can't do this?
>
> Are there any good books on SOAP that go into this? I'm finding it very
> hard to get this kind of info on the Internet. Every article and every
> sample just
> demonstrates how to exchange strings and integers.
>
> Erik
> --
> Vax Vobiscum

-- 
Debug is human, de-fix divine.

Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
On Thursday 15 March 2001 14:34, you wrote:
> As an aside COBOL does have inheritance and objects. CORBA is language
> neutral and supports objects (supported by COBOL) as is COM (also supported
> by COBOL).
> SOAP not really supporting objects is more a case of the SOAP spec
> providing xml over some protocol and leaving the object implementation and
> discovery to other groups building on top of this plumbing.

So what it really comes down to is that SOAP is like a communication layer 
and you're relatively free to send anything you like.
Making the client interpret what you send is up to you though.

I mean, when I start using something else than XML schema to describe the 
hierarchy and I use for example XMI on SOAP, it'll be anything but 'S'imple 
to create proxies for my service.
I assume the use of tools like IBM-WSTK or IdooXoap by clients is then out of 
the question. Clients will have to sit down, interpret the WSDL and build 
their own proxies.

Perhaps it's an idea to keep all return types at the server and just give 
references to them to the clients. Then they'd just invoke the get and set 
methods remotely.
This would cause me to create a significantly different API than the existing 
Java API, but perhaps it is the only clean way to get around the inheritance 
problem.

The performance impact would be dramatic though.

Erik

> regards
> Graham
>
>
>
> -----Original Message-----
> From: graham glass [mailto:graham-glass@mindspring.com]
> Sent: Donnerstag, 15. März 2001 10:24
> To: soap-user@xml.apache.org
> Subject: RE: inheritance in WSDL
>
>
> one of the main points of web services is to be language neutral, so
> that they can be consumed by any other system. the same service could
> be called by a COBOL program, which doesn't have inheritance, or even
> objects. what is the use case that requires you to expose inheritance
> at the WSDL level?
>
> cheers,
> graham
>
> -----Original Message-----
> From: Erik van Zijst [mailto:erik@marketxs.com]
> Sent: Thursday, March 15, 2001 3:05 AM
> To: soap-user@xml.apache.org
> Subject: Re: inheritance in WSDL
>
> On Wednesday 14 March 2001 21:41, you wrote:
> > This is a question about the type spec language used in WSDL and not
> > about WSDL itself. If you are using XML Schema as the type specification
> > language, then you have a limited amount of inheritance capability as
> > supported by XML Schema. The schema spec (and primer) explain how
> > to do the kind of refinements they support.
> >
> > Suppose you use a type spec language that is more powerful than
> > XML Schema. Does that allow you to use subtyping fully? Not
> > necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> > a way that the inheritance hierarchy can be recovered on the other
> > side. If you use XMI encoding (or some other encoding) then you
> > can exchange richer typed values.
>
> But isn't the IDL much more important than the actual XML traffic? The WSDL
> determines the working of the eventual client proxies. The WSDL will need
> to describe the hierarchy, so the proxies and the serializers know about
> it.
>
> How do I encode that in WSDL? If I need to use something else than
> XML-schema, please tell me how that works.
>
> The thing I'm trying to accomplisch really isn't anything exotic. It are
> the basics of every OO language. How come that something new like SOAP
> (Object Access protocol, really sounds like OO) can't do this?
>
> Are there any good books on SOAP that go into this? I'm finding it very
> hard to get this kind of info on the Internet. Every article and every
> sample just
> demonstrates how to exchange strings and integers.
>
> Erik
> --
> Vax Vobiscum

-- 
Debug is human, de-fix divine.

RE: inheritance in WSDL

Posted by Graham Cunningham <gr...@kinetic.ch>.
As an aside COBOL does have inheritance and objects. CORBA is language
neutral and supports objects (supported by COBOL) as is COM (also supported
by COBOL).
SOAP not really supporting objects is more a case of the SOAP spec providing
xml over some protocol and leaving the object implementation and discovery
to other groups building on top of this plumbing.
regards
Graham



-----Original Message-----
From: graham glass [mailto:graham-glass@mindspring.com]
Sent: Donnerstag, 15. März 2001 10:24
To: soap-user@xml.apache.org
Subject: RE: inheritance in WSDL


one of the main points of web services is to be language neutral, so
that they can be consumed by any other system. the same service could
be called by a COBOL program, which doesn't have inheritance, or even
objects. what is the use case that requires you to expose inheritance
at the WSDL level?

cheers,
graham

-----Original Message-----
From: Erik van Zijst [mailto:erik@marketxs.com]
Sent: Thursday, March 15, 2001 3:05 AM
To: soap-user@xml.apache.org
Subject: Re: inheritance in WSDL


On Wednesday 14 March 2001 21:41, you wrote:
> This is a question about the type spec language used in WSDL and not
> about WSDL itself. If you are using XML Schema as the type specification
> language, then you have a limited amount of inheritance capability as
> supported by XML Schema. The schema spec (and primer) explain how
> to do the kind of refinements they support.
>
> Suppose you use a type spec language that is more powerful than
> XML Schema. Does that allow you to use subtyping fully? Not
> necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> a way that the inheritance hierarchy can be recovered on the other
> side. If you use XMI encoding (or some other encoding) then you
> can exchange richer typed values.

But isn't the IDL much more important than the actual XML traffic? The WSDL
determines the working of the eventual client proxies. The WSDL will need to
describe the hierarchy, so the proxies and the serializers know about it.

How do I encode that in WSDL? If I need to use something else than
XML-schema, please tell me how that works.

The thing I'm trying to accomplisch really isn't anything exotic. It are the
basics of every OO language. How come that something new like SOAP (Object
Access protocol, really sounds like OO) can't do this?

Are there any good books on SOAP that go into this? I'm finding it very hard
to get this kind of info on the Internet. Every article and every sample
just
demonstrates how to exchange strings and integers.

Erik
--
Vax Vobiscum


RE: inheritance in WSDL

Posted by Graham Cunningham <gr...@kinetic.ch>.
As an aside COBOL does have inheritance and objects. CORBA is language
neutral and supports objects (supported by COBOL) as is COM (also supported
by COBOL).
SOAP not really supporting objects is more a case of the SOAP spec providing
xml over some protocol and leaving the object implementation and discovery
to other groups building on top of this plumbing.
regards
Graham



-----Original Message-----
From: graham glass [mailto:graham-glass@mindspring.com]
Sent: Donnerstag, 15. März 2001 10:24
To: soap-user@xml.apache.org
Subject: RE: inheritance in WSDL


one of the main points of web services is to be language neutral, so
that they can be consumed by any other system. the same service could
be called by a COBOL program, which doesn't have inheritance, or even
objects. what is the use case that requires you to expose inheritance
at the WSDL level?

cheers,
graham

-----Original Message-----
From: Erik van Zijst [mailto:erik@marketxs.com]
Sent: Thursday, March 15, 2001 3:05 AM
To: soap-user@xml.apache.org
Subject: Re: inheritance in WSDL


On Wednesday 14 March 2001 21:41, you wrote:
> This is a question about the type spec language used in WSDL and not
> about WSDL itself. If you are using XML Schema as the type specification
> language, then you have a limited amount of inheritance capability as
> supported by XML Schema. The schema spec (and primer) explain how
> to do the kind of refinements they support.
>
> Suppose you use a type spec language that is more powerful than
> XML Schema. Does that allow you to use subtyping fully? Not
> necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> a way that the inheritance hierarchy can be recovered on the other
> side. If you use XMI encoding (or some other encoding) then you
> can exchange richer typed values.

But isn't the IDL much more important than the actual XML traffic? The WSDL
determines the working of the eventual client proxies. The WSDL will need to
describe the hierarchy, so the proxies and the serializers know about it.

How do I encode that in WSDL? If I need to use something else than
XML-schema, please tell me how that works.

The thing I'm trying to accomplisch really isn't anything exotic. It are the
basics of every OO language. How come that something new like SOAP (Object
Access protocol, really sounds like OO) can't do this?

Are there any good books on SOAP that go into this? I'm finding it very hard
to get this kind of info on the Internet. Every article and every sample
just
demonstrates how to exchange strings and integers.

Erik
--
Vax Vobiscum


RE: inheritance in WSDL

Posted by graham glass <gr...@mindspring.com>.
one of the main points of web services is to be language neutral, so
that they can be consumed by any other system. the same service could
be called by a COBOL program, which doesn't have inheritance, or even
objects. what is the use case that requires you to expose inheritance
at the WSDL level?

cheers,
graham

-----Original Message-----
From: Erik van Zijst [mailto:erik@marketxs.com]
Sent: Thursday, March 15, 2001 3:05 AM
To: soap-user@xml.apache.org
Subject: Re: inheritance in WSDL


On Wednesday 14 March 2001 21:41, you wrote:
> This is a question about the type spec language used in WSDL and not
> about WSDL itself. If you are using XML Schema as the type specification
> language, then you have a limited amount of inheritance capability as
> supported by XML Schema. The schema spec (and primer) explain how
> to do the kind of refinements they support.
>
> Suppose you use a type spec language that is more powerful than
> XML Schema. Does that allow you to use subtyping fully? Not
> necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> a way that the inheritance hierarchy can be recovered on the other
> side. If you use XMI encoding (or some other encoding) then you
> can exchange richer typed values.

But isn't the IDL much more important than the actual XML traffic? The WSDL
determines the working of the eventual client proxies. The WSDL will need to
describe the hierarchy, so the proxies and the serializers know about it.

How do I encode that in WSDL? If I need to use something else than
XML-schema, please tell me how that works.

The thing I'm trying to accomplisch really isn't anything exotic. It are the
basics of every OO language. How come that something new like SOAP (Object
Access protocol, really sounds like OO) can't do this?

Are there any good books on SOAP that go into this? I'm finding it very hard
to get this kind of info on the Internet. Every article and every sample
just
demonstrates how to exchange strings and integers.

Erik
--
Vax Vobiscum


RE: inheritance in WSDL

Posted by Oisin Hurley <oh...@iona.com>.
>The thing I'm trying to accomplisch really isn't anything exotic.
>It are the
>basics of every OO language. How come that something new like SOAP (Object
>Access protocol, really sounds like OO) can't do this?

Ah - the O is in SOAP is for object, but SOAP has no object model,
so there is no defined behaviour for inheritance, polymorphism,
state encapsulation, references and all that good OO stuff.

The S in SOAP means simple, and the real world upshot of this is
that SOAP is so simple you can layer any sort of semantics on top
of it. WSDL is a little less simple, but straightforward enough
that you may layer on the semantics of your choice within limits.

So, you are pretty much dealing with RPC here, Eric. If you want
OO you will have to do it yourself :( I've used SOAP and WSDL to
describe and communicate with CORBA services and have decided to
extend WSDL and SOAP with extensibility elements and mandatory
headers to get around these issues. It's not interoperable with
anyone except me, but that's fine for the moment. These big issues
(for those who want OO of course) will be addressed by the
appropriate standardization organization.

 --oh


RE: inheritance in WSDL

Posted by graham glass <gr...@mindspring.com>.
one of the main points of web services is to be language neutral, so
that they can be consumed by any other system. the same service could
be called by a COBOL program, which doesn't have inheritance, or even
objects. what is the use case that requires you to expose inheritance
at the WSDL level?

cheers,
graham

-----Original Message-----
From: Erik van Zijst [mailto:erik@marketxs.com]
Sent: Thursday, March 15, 2001 3:05 AM
To: soap-user@xml.apache.org
Subject: Re: inheritance in WSDL


On Wednesday 14 March 2001 21:41, you wrote:
> This is a question about the type spec language used in WSDL and not
> about WSDL itself. If you are using XML Schema as the type specification
> language, then you have a limited amount of inheritance capability as
> supported by XML Schema. The schema spec (and primer) explain how
> to do the kind of refinements they support.
>
> Suppose you use a type spec language that is more powerful than
> XML Schema. Does that allow you to use subtyping fully? Not
> necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> a way that the inheritance hierarchy can be recovered on the other
> side. If you use XMI encoding (or some other encoding) then you
> can exchange richer typed values.

But isn't the IDL much more important than the actual XML traffic? The WSDL
determines the working of the eventual client proxies. The WSDL will need to
describe the hierarchy, so the proxies and the serializers know about it.

How do I encode that in WSDL? If I need to use something else than
XML-schema, please tell me how that works.

The thing I'm trying to accomplisch really isn't anything exotic. It are the
basics of every OO language. How come that something new like SOAP (Object
Access protocol, really sounds like OO) can't do this?

Are there any good books on SOAP that go into this? I'm finding it very hard
to get this kind of info on the Internet. Every article and every sample
just
demonstrates how to exchange strings and integers.

Erik
--
Vax Vobiscum


RE: inheritance in WSDL

Posted by Oisin Hurley <oh...@iona.com>.
>The thing I'm trying to accomplisch really isn't anything exotic.
>It are the
>basics of every OO language. How come that something new like SOAP (Object
>Access protocol, really sounds like OO) can't do this?

Ah - the O is in SOAP is for object, but SOAP has no object model,
so there is no defined behaviour for inheritance, polymorphism,
state encapsulation, references and all that good OO stuff.

The S in SOAP means simple, and the real world upshot of this is
that SOAP is so simple you can layer any sort of semantics on top
of it. WSDL is a little less simple, but straightforward enough
that you may layer on the semantics of your choice within limits.

So, you are pretty much dealing with RPC here, Eric. If you want
OO you will have to do it yourself :( I've used SOAP and WSDL to
describe and communicate with CORBA services and have decided to
extend WSDL and SOAP with extensibility elements and mandatory
headers to get around these issues. It's not interoperable with
anyone except me, but that's fine for the moment. These big issues
(for those who want OO of course) will be addressed by the
appropriate standardization organization.

 --oh


Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
On Wednesday 14 March 2001 21:41, you wrote:
> This is a question about the type spec language used in WSDL and not
> about WSDL itself. If you are using XML Schema as the type specification
> language, then you have a limited amount of inheritance capability as
> supported by XML Schema. The schema spec (and primer) explain how
> to do the kind of refinements they support.
>
> Suppose you use a type spec language that is more powerful than
> XML Schema. Does that allow you to use subtyping fully? Not
> necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> a way that the inheritance hierarchy can be recovered on the other
> side. If you use XMI encoding (or some other encoding) then you
> can exchange richer typed values.

But isn't the IDL much more important than the actual XML traffic? The WSDL 
determines the working of the eventual client proxies. The WSDL will need to 
describe the hierarchy, so the proxies and the serializers know about it.

How do I encode that in WSDL? If I need to use something else than 
XML-schema, please tell me how that works.

The thing I'm trying to accomplisch really isn't anything exotic. It are the 
basics of every OO language. How come that something new like SOAP (Object 
Access protocol, really sounds like OO) can't do this?

Are there any good books on SOAP that go into this? I'm finding it very hard 
to get this kind of info on the Internet. Every article and every sample just 
demonstrates how to exchange strings and integers.

Erik
-- 
Vax Vobiscum

Re: inheritance in WSDL

Posted by Erik van Zijst <er...@marketxs.com>.
On Wednesday 14 March 2001 21:41, you wrote:
> This is a question about the type spec language used in WSDL and not
> about WSDL itself. If you are using XML Schema as the type specification
> language, then you have a limited amount of inheritance capability as
> supported by XML Schema. The schema spec (and primer) explain how
> to do the kind of refinements they support.
>
> Suppose you use a type spec language that is more powerful than
> XML Schema. Does that allow you to use subtyping fully? Not
> necessarily .. SOAP-Enc doesn't allow you to send subtypes in
> a way that the inheritance hierarchy can be recovered on the other
> side. If you use XMI encoding (or some other encoding) then you
> can exchange richer typed values.

But isn't the IDL much more important than the actual XML traffic? The WSDL 
determines the working of the eventual client proxies. The WSDL will need to 
describe the hierarchy, so the proxies and the serializers know about it.

How do I encode that in WSDL? If I need to use something else than 
XML-schema, please tell me how that works.

The thing I'm trying to accomplisch really isn't anything exotic. It are the 
basics of every OO language. How come that something new like SOAP (Object 
Access protocol, really sounds like OO) can't do this?

Are there any good books on SOAP that go into this? I'm finding it very hard 
to get this kind of info on the Internet. Every article and every sample just 
demonstrates how to exchange strings and integers.

Erik
-- 
Vax Vobiscum

Re: inheritance in WSDL

Posted by Sanjiva Weerawarana <sa...@watson.ibm.com>.
This is a question about the type spec language used in WSDL and not
about WSDL itself. If you are using XML Schema as the type specification
language, then you have a limited amount of inheritance capability as 
supported by XML Schema. The schema spec (and primer) explain how 
to do the kind of refinements they support.

Suppose you use a type spec language that is more powerful than 
XML Schema. Does that allow you to use subtyping fully? Not 
necessarily .. SOAP-Enc doesn't allow you to send subtypes in 
a way that the inheritance hierarchy can be recovered on the other
side. If you use XMI encoding (or some other encoding) then you
can exchange richer typed values.

Sanjiva.

----- Original Message ----- 
From: "Erik van Zijst" <er...@marketxs.com>
To: <so...@xml.apache.org>
Sent: Wednesday, March 14, 2001 7:42 AM
Subject: inheritance in WSDL


> How do I describe inheritance of complex types in WSDL?
> 
> Erik
> -- 
> unfair competition, n.:
> Selling cheaper than we do.


Re: inheritance in WSDL

Posted by Sanjiva Weerawarana <sa...@watson.ibm.com>.
This is a question about the type spec language used in WSDL and not
about WSDL itself. If you are using XML Schema as the type specification
language, then you have a limited amount of inheritance capability as 
supported by XML Schema. The schema spec (and primer) explain how 
to do the kind of refinements they support.

Suppose you use a type spec language that is more powerful than 
XML Schema. Does that allow you to use subtyping fully? Not 
necessarily .. SOAP-Enc doesn't allow you to send subtypes in 
a way that the inheritance hierarchy can be recovered on the other
side. If you use XMI encoding (or some other encoding) then you
can exchange richer typed values.

Sanjiva.

----- Original Message ----- 
From: "Erik van Zijst" <er...@marketxs.com>
To: <so...@xml.apache.org>
Sent: Wednesday, March 14, 2001 7:42 AM
Subject: inheritance in WSDL


> How do I describe inheritance of complex types in WSDL?
> 
> Erik
> -- 
> unfair competition, n.:
> Selling cheaper than we do.