أحدث البرامج التعليمية وتطوير الشبكة
 

XML اختصار


  • اختصار لتقف على لغة وصف خدمات الويب
  • يستخدم اختصار لوصف خدمات الويب
  • هو مكتوب اختصار في XML
  • اختصار هو توصية W3C من 26. يونيو 2007

المستندات اختصار

وتصف وثيقة WSDL خدمة ويب. ويحدد موقع هذه الخدمة، وأساليب الخدمة، وذلك باستخدام هذه عناصر رئيسية هي:

العنصر وصف
<types> يحدد (XML Schema) أنواع البيانات المستخدمة من قبل خدمة الويب
<message> يحدد عناصر البيانات لكل عملية
<portType> يصف العمليات التي يمكن القيام بها والرسائل المعنية.
<binding> يحدد شكل بروتوكول والبيانات لكل نوع الميناء

الهيكل الرئيسي من وثيقة اختصار يبدو مثل هذا:

<definitions>

<types>
  data type definitions........
</types>

<message>
  definition of the data being communicated....
</message>

<portType>
  set of operations......
</portType>

<binding>
  protocol and data format specification....
</binding>

</definitions>

اختصار مثال

هذا هو جزء مبسط من وثيقة اختصار:

<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" كاسم لل port ، و "getTerm" كاسم لل operation .

و "getTerm" عملية لها input message يسمى "getTermRequest" و output message يسمى "getTermResponse" .

و <message> عناصر تحدد parts من كل رسالة وأنواع البيانات المرتبطة بها.


و <portType> العنصر

و <portType> يعرف عنصر a web service ، و operations التي يمكن القيام بها، و messages التي ينطوي عليها.

نوع طلب استجابة هو نوع العملية الأكثر شيوعا، ولكن اختصار يحدد أربعة أنواع:

اكتب تعريف
One-way العملية يمكن أن تتلقى رسالة ولكن لن تعود استجابة
Request-response العملية يمكن الحصول على طلب وسيعود استجابة
Solicit-response العملية يمكن إرسال الطلب وسوف انتظر رد
Notification العملية يمكن أن ترسل رسالة لكنها لن تنتظر ردا

اختصار في اتجاه واحد عملية

A-طريقة عملية واحدة على سبيل المثال:

<message name="newTermValues">
  <part name="term" type="xs:string"/>
  <part name="value" type="xs:string"/>
</message>

<portType name="glossaryTerms">
  <operation name="setTerm">
    <input name="newTerm" message="newTermValues"/>
  </operation>
</portType >

في المثال أعلاه، portType "glossaryTerms" تعرف عملية في اتجاه واحد يسمى "setTerm" .

و "setTerm" تتيح عملية إدخال الرسائل حيث مسرد جديدة باستخدام "newTermValues" الرسالة مع معلمات الإدخال "term" و "value" . ومع ذلك، يتم تعريف أي نتيجة لهذه العملية.


اختصار طلب استجابة عملية

وطلب استجابة عملية سبيل المثال:

<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" مع معلمة يسمى "term" ، وستعود رسالة الانتاج يسمى "getTermResponse" مع معلمة يسمى "value" .


اختصار ملزم لالصابون

الارتباطات اختصار تحدد الرسالة شكل وبروتوكول تفاصيل عن خدمة الإنترنت.

وطلب استجابة عملية سبيل المثال:

<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>

<binding type="glossaryTerms" name="b1">
   <soap:binding style="document"
   transport="http://schemas.xmlsoap.org/soap/http" />
   <operation>
     <soap:operation soapAction="http://example.com/getTerm"/>
     <input><soap:body use="literal"/></input>
     <output><soap:body use="literal"/></output>
  </operation>
</binding>

و binding عنصر له سمتان - الاسم والنوع.

و name السمة (you can use any name you want) وتعرف باسم الربط، و type نقاط السمة إلى ميناء لملزمة، في هذه الحالة "glossaryTerms" الميناء.

و soap:binding عنصر له سمتان - أسلوب والنقل.

على style السمة يمكن أن يكون "rpc" أو "document" . في هذه الحالة نستخدم ثيقة. و transport تحدد السمة بروتوكول SOAP للاستخدام. في هذه الحالة نستخدم HTTP.

و operation يحدد العنصر كل العملية التي يعرض portType.

لكل عملية العمل الصابون المقابلة لابد من تعريف. يجب أيضا تحديد كيف يتم ترميز المدخلات والمخرجات. في هذه الحالة نستخدم "literal" .