وای ایس ڈی دستاویز

مستندات WSDL تنها یک مستند XML ساده است.

این شامل مجموعه‌ای از تعریف‌هایی برای توصیف یک وب سرویس است.

ساختار مستندات WSDL

مستندات WSDL از این عناصر اصلی برای توصیف یک وب سرویس استفاده می‌کند:

عنصر تعریف
<portType> عمل‌هایی که وب سرویس اجرا می‌کند
<message> پیام‌هایی که وب سرویس استفاده می‌کند
<types> نوع داده‌هایی که وب سرویس استفاده می‌کند
<binding> پروتکل‌های ارتباطی مورد استفاده در وب سرویس

ساختار اصلی یک مستند WSDL مانند این است:

<definitions>
<types>
   تعریف نوع داده‌ها...
</types>
<message>
   تعریف یک پیام...
</message>
<portType>
   تعریف یک درگاه...
</portType>
<binding>
   تعریف یک بایندینگ...
</binding>
</definitions>

مستندات WSDL می‌تواند شامل عناصر دیگری مانند عنصر extension و عنصر service باشد، که می‌تواند تعریف چندین وب سرویس را در یک مستند WSDL یکپارچه کند.

برای یک نظریه کامل از نحوه استفاده از زبان، لطفاً به وای ایس ڈی گرامر این بخش.

وای ایس ڈی پورٹ

<portType> عنصر مهم‌ترین عنصر WSDL است.

این عنصر می‌تواند یک وب سرویس، عمل‌های قابل اجرا و پیام‌های مرتبط را توصیف کند.

عنصر <portType> را می‌توان به یک کتابخانه (یا یک ماژول، یا یک کلاس) در زبان‌های برنامه‌نویسی سنتی تشبیه کرد.

پیام‌های WSDL

<message> عنصر داده‌های مربوط به یک عمل را تعریف می‌کند.

هر پیام شامل یک یا چند قطعه است. این قطعات را می‌توان به عنوان پارامترهای یک فراخوانی در زبان‌های برنامه‌نویسی سنتی تشبیه کرد.

نوعهای WSDL

<types> عنصر نوع داده‌های مورد استفاده در وب سرویس را تعریف می‌کند.

برای حداکثر platform neutrality، WSDL از زبان XML Schema برای تعریف نوع داده‌ها استفاده می‌کند.

بایندینگ‌های WSDL

<binding> عنصر پیام فرمت و جزئیات پروتکل را برای هر درگاه تعریف می‌کند.

وای ایس ڈی مثال

یہ وای ایس ڈی دستاویز کا ایک سادہ حصہ ہے:

<message name="getTermRequest">
   <part name="term" type="xs:string"/>
</message>
<message name="getTermResponse">
   <part name="value" type="xs:string"/>
</message>
<portType name="glossaryTerms">
  <operation name="getTerm">
        <input message="getTermRequest"/>
        <output message="getTermResponse"/>
  </operation>
</portType>

اس مثال میں،<portType> عناصر "glossaryTerms" کو کسیپورٹنامزد کیا گیا ہے، "getTerm" کو کسیعملنامزد کیا گیا ہے。

عمل "getTerm" کا نامزد "getTermRequest"آئن پوت پیغاماور ایک نامزد "getTermResponse"آؤٹ پوت پیغام

<message> کسی پیغام کی تعریف کے لئے عناصرعناصراور متعلقہ اعداد و شمار کا تعلق رکھتا ہے。

روایتی پروگرامنگ کے مقابلے میں، glossaryTerms ایک فونکشن لیبر ہے، اور "getTerm" یہ فونکشن ہے جو "getTermRequest" نئی اور "getTermResponse" بازگشت پارامٹر کے ساتھ آتا ہے。