Метою WADL є визначення контракту . Контракт визначає, як одна сторона може зателефонувати іншій.
Коли ви створюєте веб-додаток з нуля, вам не потрібні контракт і WADL .
Коли ви інтегруєте свою систему з іншою системою і можете чітко спілкуватися з командою розробників, вам не потрібні договір та WADL (адже ви можете зателефонувати, щоб все зрозуміти).
Однак коли ви інтегруєте складну корпоративну систему з кількома іншими складними корпоративними системами, що підтримуються декількома різними компаніями (або федеральними установами), тоді, повірте, ви хочете, щоб контракт на комунікацію був визначений якомога строгіше. Тоді вам потрібна WADL або Open Specification. Це дуже потрібно .
Люди зі слабким фоном підприємства, як правило, сприймають цілі ІТ як колекцію відокремлених веб-додатків, розроблених самостійно. Але реальність підприємств часом буває важкою. Іноді ви навіть не можете зателефонувати або написати людям, які розробляють додаток, з яким вам доводиться інтегрувати. Іноді ви спілкуєтесь із застарілою програмою, яка більше не підтримується - вона просто запускається, і вам потрібно зрозуміти, як правильно з нею спілкуватися. У таких умовах вам потрібен контракт, оскільки він рятує вашу дупу .
Насправді генерація клієнта є другорядною особливістю визначення контракту. Це просто іграшка. Контракт змушує поганих комунікаторів чітко повідомляти правила інтеграції. Це основна причина використовувати WADL або Open Specification або що завгодно.