Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ws Wiki" for change 
notification.

The following page has been changed by JohnKaputin:
http://wiki.apache.org/ws/FrontPage/Woden/APIReview/OneWsdlApi

------------------------------------------------------------------------------
  
  Some potential problems to consider are:
  
- The difference between Description component and <wsdl:description> element.
+  * The difference between Description component and <wsdl:description> 
element.
- This difference is reflected in the Woden API between Description [component] 
and DescriptionElement. In the component model, there is a single Description 
component as the top-level container for the other WSDL components that make up 
a service description. There is no notion of composition via import or include, 
so there are no nested Description components – just a ‘flattened’ view 
of the WSDL contained within a single, ‘root’ Description component. By 
comparison, the WSDL XML infoset supports document composition via 
<wsdl:import> and <wsdl:include> elements, so a complete service description 
may contain multiple <wsdl:description> elements (e.g. the service imports the 
binding which imports the interface). In the Woden Element API this means 
multiple DescriptionElement linked from a root DescriptionElement via 
ImportElement or IncludeElement.
+ This difference is reflected in the Woden API between {{{Description}}} and 
{{{DescriptionElement}}}. In the component model, there is a single 
{{{Description}}} component as the top-level container for the other WSDL 
components that make up a service description. There is no notion of 
composition via import or include, so there are no nested {{{Description}}} 
components – just a ‘flattened’ view of the WSDL contained within a 
single {{{Description}}} component. By comparison, the WSDL XML infoset 
supports document composition via {{{<wsdl:import>}}} and {{{<wsdl:include>}}} 
elements, so a complete service description may contain multiple 
{{{<wsdl:description>}}} elements (e.g. the service WSDL imports the binding 
WSDL which imports the interface WSDL). In the Woden Element API this means 
multiple {{{DescriptionElement}}} linked from a root {{{DescriptionElement}}} 
via {{{ImportElement}}} or {{{IncludeElement}}}.
  
- So, Description and DescriptionElement are not the same thing. Description 
contains all of Interfaces, Bindings and Services declared within a top-level 
<wsdl:description> AND within any imported or included descriptions.  
DescriptionElement represents a single <wsdl:description> element and its 
directly declared child elements. If the child elements include <wsdl:import> 
or <wsdl:include>, the corresponding ImportElement or IncludeElement APIs can 
be used to navigate to any nested DescriptionElements.
+ So, {{{Description}}} and {{{DescriptionElement}}} are not the same thing. 
{{{Description}}} contains all of the interfaces, bindings and services 
declared within a top-level or root {{{<wsdl:description>}}} AND within any 
imported or included descriptions.  {{{DescriptionElement}}} represents a 
single {{{<wsdl:description>}}} element and its directly declared child 
elements. If the child elements include {{{<wsdl:import>}}} or 
{{{<wsdl:include>}}}, the corresponding {{{ImportElement}}} or 
{{{IncludeElement}}} APIs can be used to navigate to any nested 
{{{DescriptionElement}}}s.
  
  It would be easy enough to combine say Binding and BindingElement into a 
single interface because they represent the same entity (a single binding) and 
contain fundamentally the same content (the same binding faults and 
operations).  Combining Description and DescriptionElement requires more 
thought. Perhaps we could define different sets of methods for 
‘get_local_only’ and ‘get_local_and_nested’, with the behaviour of the 
latter being similar to flattened properties in the Description component.
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to