Difference between WSDL 2.0, WADL & XRD?

WADL (Web Application Description Language)

WADL is a standard to describe HTTP-based web applications. So WADL can be seen as an HTTP equivalent of WSDL 1.1.

WSDL (Web Services Description Language)

WSDL 2.0 can be used to describe HTTP Web services and thus competes with WADL. But it has a wider scope.

XRD (eXtensible Resource Descriptor)

Quoting this blog post from Eran Hammer-Lahav (a frequent contributor to OAuth, Discovery, XRD, and other emerging community-driven specifications and standards – and Director of Standards Development at Yahoo!):

XRD is a simple generic format for
describing resources. Resource
descriptor documents provide
machine-readable information about
resources (resource metadata) for the
purpose of promoting interoperability,
and assist in interacting with unknown
resources that support known
interfaces.

For example, a web page about an
upcoming meeting can provide in its
descriptor document the location of
the meeting organizer’s free/busy
information to potentially negotiate a
different time. The descriptor for a
social network profile page can
identify the location of the user’s
address book as well as accounts on
other sites. A web service
implementing an API protocol can
advertise which of the protocol’s
optional components are supported.

Summary

So, while WSDL 2.0 competes with WADL as HTTP Web Service description languages (WDL 2.0 has more but lets forget that for now), XRD is a metadata discovery format for any URI (OpenID discovery being one of the primary use case). XRD (which has its roots in the Identity community) looks different.

Leave a Comment