Έγγραφο WSDL

Το έγγραφο WSDL είναι ένα απλό έγγραφο XML.

Είναι μια σειρά περιγραφών που αναφέρονται σε έναν web service.

Δομή έγγραφου WSDL

Το έγγραφο WSDL χρησιμοποιεί αυτά τα κύρια στοιχεία για να περιγράψει έναν web service:

Στοιχείο Δефίνιση
<portType> Λειτουργίες που εκτελεί το web service
<message> Μηνύματα που χρησιμοποιεί το web service
<types> Τύποι δεδομένων που χρησιμοποιεί το web service
<binding> Πρωτόκολλο επικοινωνίας του web service

Η κύρια δομή ενός έγγραφου WSDL είναι κάτι σαν αυτό:

<definitions>
<types>
   definizione di tipi........
</types>
<message>
   definizione di un messaggio....
</message>
<portType>
   definizione di una porta.......
</portType>
<binding>
   definizione di un binding....
</binding>
</definitions>

Το WSDL μπορεί να περιέχει άλλες στοιχεία, όπως το στοιχείο extension, και ένα στοιχείο service που μπορεί να συνδυάζει τις định nghĩa των πολλαπλών web services σε ένα μοναδικό έγγραφο WSDL.

Για πλήρη περιγραφή της γραμματικής, επισκεφθείτε Γλώσσα Γράμματος WSDL Αυτό το κεφάλαιο.

Θύρα WSDL

<portType> Το στοιχείο είναι ο πιο σημαντικός στοιχείο του WSDL.

Μπορεί να περιγράψει έναν web service, λειτουργίες που μπορούν να εκτελεστούν, και τις σχετικές μηνύματα.

Μπορείτε να συγκρίνετε το στοιχείο <portType> με μια βιβλιοθήκη (ή ένα μοジュλού, ή μια κλάση) σε παραδοσιακή γλώσσα προγραμματισμού.

WSDL μηνύματα

<message> Το στοιχείο καθορίζει τους στοιχεία δεδομένων μιας λειτουργίας.

Κάθε μήνυμα αποτελείται από μια ή περισσότερες μονάδες. Μπορείτε να τις συγκρίνετε με παραμέτρους μιας κλήσης συνάρτησης σε παραδοσιακή γλώσσα προγραμματισμού.

WSDL types

<types> Το στοιχείο καθορίζει τους τύπους δεδομένων που χρησιμοποιεί το web service.

Για μέγιστη ανεξαρτησία πλατφόρμας, το WSDL χρησιμοποιεί γλωσσάρχη XML για τη διατύπωση τύπων δεδομένων.

WSDL Bindings

<binding> Ο στοιχείο καθορίζει τη μορφή των μηνυμάτων και τις λεπτομέρειες των πρωτοκόλλων για κάθε θύρα.

Παράδειγμα WSDL

Αυτό είναι ένας εξαγόμενος τμήμας μιας WSDL δοκίμιο:

<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" ως επιστροφή.