XForms και XPath

Προτεινόμενα μαθήματα:

Η XForms χρησιμοποιεί το XPath για την αυστηρή ανακάλυψη δεδομένων. Αυτός ο διαδικασία ονομάζεται σύνδεση.

XForms Σύνδεση

Το μοντέλο XForms είναι ένα μοτίβο XML για δεδομένα (εγχειρίδιο), ενώ η διεπαφή χρήστη XForms είναι η περιγραφή της εισαγωγής και της προβολής δεδομένων.

Η XForms χρησιμοποιεί XPath για να ορίσει τη σύνδεση αυτών των δύο τμημάτων. Αυτό ονομάζεταιΣύνδεση (binding).

XPath

Το XPath χρησιμοποιείται για να ορίσει τη στάνταρ γλώσσα γραμματογραφίας για τα μέρη του εγγράφου XML της W3C.

Το XPath χρησιμοποιεί εκφράσεις διαδρομής για να σηματοδοτήσει κόμβους στο έγγραφο XML. Αυτές οι εκφράσεις είναι πολύ παρόμοιες με τις εκφράσεις διαδρομής που βλέπετε σε συστήματα υπολογιστών.

Έκφραση XPath:

/person/fname

Ανάκτηση του κόμβουfname στο έγγραφο XML:

<person>
   <fname>David</fname>
   <lname>Smith</lname>
</person>

Στο Εκμάθηση XPath Για να μάθετε περισσότερα για το XPath.

Χρήση Ref για σύνδεση

Το μοντέλο XForms είναι το εξής:

<instance>
  <person>
    <name>
      <fname/>
      <lname/>
    </name>
  </person>
</instance>

Η διεπαφή χρήστη XForms μπορεί να χρησιμοποιηθεί ref παράμετροςσύνδεση Στοιχείο <input>:

<input ref="name/fname">
<label>Όνομα</label>
</input>
<input ref="name/lname">
<label>Επίθετο</label>
</input>

Η ιδιότητα ref="name/fname" στην παραπάνω παράδειγμα είναι μια έκφραση XPath που δείχνει στο στοιχείο <fname> του μοντέλου της εικονικής μονάδας.σύνδεσηστο στοιχείο <fname> του XML εγγράφου (εγχειρίδιο) που συλλέγει δεδομένα από τη φόρμα.

Η διεπαφή χρήστη XForms μπορεί επίσης να χρησιμοποιήσει αναφορές:

<input ref="/person/name/fname">
<label>Όνομα</label>
</input>
<input ref="/person/name/lname">
<label>Επίθετο</label>
</input>

Στο παραπάνω παράδειγμα, το αρχικό χαρακτήρα της έκφρασης XPath (/) δείχνει τη ρίζα του έγγραφου XML.

Σύνδεση με Bind

Το μοντέλο XForms είναι το εξής:

<model>
<instance>
  <person>
    <name>
      <fname/>
      <lname/>
    </name>
  </person>
</instance>
<bind nodeset="/person/name/fname" id="firstname"/>
<bind nodeset="/person/name/lname" id="lastname"/>
</model>

Η διεπαφή χρήστη XForms μπορεί να χρησιμοποιηθεί bind παράμετροςσύνδεση Στοιχείο <input>:

<input bind="firstname">
<label>Όνομα</label>
</input>
<input bind="lastname">
<label>Επίθετο</label>
</input>

Γιατί υπάρχουν δύο μέθοδοι για τη σύνδεση των στοιχείων ελέγχου εισαγωγής με δεδομένα παραδείγματος;

Τι να πω; Όταν ξεκινάτε να χρησιμοποιείτε τα XForms σε σύνθετες εφαρμογές, θα διαπιστώσετε ότι η χρήση του bind για τη σύνδεση είναι μια πιο ευέλικτη μέθοδος για τη διαχείριση πολλαπλών μορφών και μοντέλων παραδείγματος.