WSDL Namespaces


In creating demos, I always need to make sure that we have a realistic scenario. With regards to that, we try to be particular about the namespace that we choose for the varoius WSDL elements. This post documents what guidance I have read and recieved.


In an old article by Scott Seely he mentions, “Each component will have its own targetNamespace with a common root URI”.


When I asked Aaron Skonnard what this root should be he gave the following guidance, “Typically it is a heuristic”. He then mentioned that several companies use the following convention in asmx:


* http://domain/company/division/name_that_describes_what_the_namespace_defines.


W3C typically also puts in the Year. Some companies also use the namespace for versioning.


So thinking thruogh this, I came up with the following example:


* http://msdn.microsoft.com/visualstudio/samples/2005/09/24


An example of the service namespace might then be:


* http://msdn.microsoft.com/visualstudio/samples/2005/09/24/WebService


When selecting the binding namespace we might want to add the protocol that is supported by the binding. This is particularly useful if multiple bindings with multiple protocols are supported.


* http://msdn.microsoft.com/visualstudio/samples/2005/09/24/WebService/soap12


Schema types should be in a different namespace as the types can be shared. An example:


* http://msdn.microsoft.com/visualstudio/samples/2005/09/24/types

Comments (2)

  1. I am a big believer in URNs. So your sample for me would be:
    urn:msdn-microsoft-com:visualstudio:samples:2005:09:24

    URNs is what I use everyday, in a number of samples and projects.

  2. … for Architects

    Nick Malik – Enterprise Architecture Agility

    Roy Osherove – [Audio Interview] Ingo…