OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] Non-schema approach to web service design: comments?

[ Lists Home | Date Index | Thread Index ]

Quoting Vladimir Gapeyev <vgapeyev@seas.upenn.edu>:

> 
> One doesn't need to know much about web services to ask: If your 
> application ain't broken (== serves its purpose well), what do you worry 
> about? ;-)

Several reasons to ask:

If we and others are doing this because WSDL isn't expressive enough for
service contracts, then perhaps there is a fundamental problem with WSDL
and XSD for this class of use cases: which would certainly be of
interest to this list (and to me/us).

We are just starting this exercise, so want to know if anyone thinks we
are doing things that may lead to long term problems. For example, if
this Java-centric approach tends to bias the service architecture in
inappropriate ways, we'd like to know how to avoid doing so.

If there is an equivalently good (as in fast/flexible) way of doing this
starting with WSDL/XSD, then we'd rather do that then do something
non-standard. Using standards makes it easier to find commercial and/or
open source tools. Home grown can be good up front, but can cause you
problems long-term (code and tool maintenance, for example). 
> 
> On Thu, 27 Oct 2005 ian.graham@utoronto.ca wrote:
> 
> > [Also: Anyone know of a good web service mailing list?? I certainly
> > can't find one .... ]
> >
> > I want to describe our approach to Web service development, and
> > get some feedback:has anyone else tried this?  Does this make
> > sense?  If not, why. etc. ?
> >
> > Background: we are using continuous integration, so need
> > easy refactoring of all code, including service interfaces.
> > We use websphere as our service provider, and have (for now)
> > .NET and websphere service consumers. This is an internal
> > project, so we 'own' all interfaces (at least for now).
> >
> > We do not use WSDL/XSD to 'define' services. Instead the
> > dev team uses xdoclet/JCF to decorate java classes with
> > annotations defining the contract.  We have created xdoclet
> > extensions to support custom constraints (e.g. checksums).
> >
> > The build generates the service provider code, along with WSDL
> > and XSD files: the XSD's including <annotation>s in a custom,
> > machine-readable format detailing the contract rules not
> > expressed in the Schema. Indeed, today very little of the
> > contract  is in the XSD: the goal is to place as much as
> > possible in  XML Schema, the rest in the custom format.
> >
> > We have a simple .NET tool (partly home-built) that takes
> > the WSDL/XSDs, plus the embedded annotations, and creates
> > appropriate service consumer code (and constraints).  We can
> > do similar things for Java consumers.
> >
> > What was the rationale?
> >
> > - Speed.  This approach is 2-4 times faster than one starting
> >  with WSDL/XSD (done on a previous project). This is particularly
> >  true when modifying/refactoring a service.
> > - Simplicity. the annotations express business-relevant
> >  constraints more easily (to developers) and completely than
> >  XSD. In particular, they can specify constraints like
> >  checksums and co-constraints, that are fundamental to the
> >  contracts but that are not expressible in XSD.
> > - Simplicity 2. We get a single (in java) book of record
> >  for the contract -- whereas when we use WSDL/XSD we end
> >  up with part of the contract in XML, and part in text
> >  documentation (checksums, etc.).
> >
> > Some concerns raised have been:
> >
> > - Java-centred service design is a bad idea, as the overall
> >  service architecture will be biased to the Java data and
> >  component model (so should start with WSDL/XSD)
> > - Approach could leave you high and dry if  xdoclet/JCF goes away.
> > - Just Plain Bad to use a Custom non-standard approach.
> >
> > Thoughts?
> >
> > Ian
> > --
> > ian DOT graham AT utoronto DOT ca
> >
> >
> > -----------------------------------------------------------------
> > The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> > initiative of OASIS <http://www.oasis-open.org>
> >
> > The list archives are at http://lists.xml.org/archives/xml-dev/
> >
> > To subscribe or unsubscribe from this list use the subscription
> > manager: <http://www.oasis-open.org/mlmanage/index.php>
> >
> 
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> 
> The list archives are at http://lists.xml.org/archives/xml-dev/
> 
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>
> 
> 






 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS