Keadaan antarmuka REST sebagai didorong dari apa pun selain browser interaktif tidak terlalu baik. HATEOAS adalah prinsip yang bagus, tetapi mengarah ke antarmuka yang sangat berorientasi pada orang dan cenderung mengarah pada beban antarmuka pengguna yang diletakkan pada pengembang layanan (yang biasanya cukup sibuk membuat layanan itu sendiri berfungsi).
WADL sendiri tidak terlalu bagus; itu tidak benar-benar menangkap cukup semantik layanan untuk memungkinkan alat segalanya. Tentu saja, ini adalah masalah yang sulit pada umumnya. WSDL juga jarang mengekspos informasi yang cukup, dan itu memiliki lebih banyak upaya dimasukkan ke dalam masalah (mungkin untuk melampirkan informasi yang cukup, tetapi hampir tidak ada orang yang melakukannya).
Namun dikatakan bahwa seorang kolega saya telah menghabiskan waktu berbulan-bulan bekerja di perpustakaan yang menggunakan antarmuka REST untuk layanan, dan antarmuka yang dijelaskan WSDL untuk layanan yang sama [*] telah diprogram secara otomatis dengan kualitas yang hampir sama dalam hitungan detik; Melanjutkan perjalanan sekitar satu hari menulis kelas pembungkus. Firasat saya (berdasarkan pada ukuran sampel terbatas) adalah bahwa Anda tidak dapat menghilangkan semua kerapuhan dalam layanan yang kompleks karena semantik layanan pasti akan berkembang seiring waktu, dan bahwa REST lebih baik dalam menggerakkan antarmuka untuk manusia sedangkan SOAP lebih baik untuk interface libraries (ada tooling klien WSDL / SOAP yang bagus untuk hampir semua bahasa note). Kecuali Anda memiliki kemewahan melakukan keduanya, yang menjadi fokus Anda harus bergantung pada kelompok klien mana yang paling Anda pedulikan.
Saya tidak akan berusaha keras untuk WADL, tetapi jika kerangka REST Anda akan memproduksinya untuk Anda (Apache CXF melakukan ini) maka tidak ada alasan khusus untuk tidak menyediakannya. Siapa pun yang ingin alat kode Anda akan menginginkan WSDL + SOAP.
[*] Sebagai penulis layanan tersebut, saya dapat mengatakan dengan pasti bahwa kedua antarmuka mendukung operasi yang sama - ada model abstrak yang mendasari umum - dan dalam gaya "alami" untuk kedua jenis antarmuka. Di sisi layanan, jelas bahwa beberapa hal lebih mudah dengan REST dan yang lainnya dengan SOAP.