Κατανεμημένες Εφαρμογές και Ηλεκτρονικό Εμπόριο
{Main Text}

Άσκηση 8.3

Χρήση ενός DOM API

Θέση αρχείων = /ExerciseCode/C8/EightThree/

Σε αυτή την άσκηση θα εκτελέσετε ένα πρόγραμμα που χρησημοποιεί ένα DOM API. Αυτό είναι ένα API που βλέπει ένα έγγραφο XML σαν ένα δέντρο, για παράδειγμα ο κατάλογος ΒΟΟΚ που είδαμε σε προηγούμενη άσκηση μπορούμε να τη δούμε σαν ένα δέντρο, με ένα κόμβο BOOKLIST που έχει πολλούς κόμβους BOOK από κάτω του. Επειδή η αναπαράσταση του κειμένου XML είναι δένδρική, υπάρχει η ανάγκη για αναδρομή στη χρήση του DOM API. Αν δεν έχετε ξαναδεί την αναδρομή δεν χρειάζεται να συνεχίσετε παρακάτω.

Η άσκηση περιέχει μια μοναδική κλάση DOMParser που περιλαμβάνει κώδικα ο οποίος επεξεργάζεται το ίδιο κείεμνο XML που χρησιμοποιήθηκε σε προηγούμενη άσκηση. Ο κώδικας διατρέχει το δέντρο που δημιουργήθηκε από την επεξεργασία του καταλόγου BOOK της προηγούμνεης άσκησης. Ο κατάλογος δεδομένων ακολουθεί:

<BOOKLIST>

<BOOK>
<TITLE>The Endless Path</TITLE>
<AUTHORS>Jones</AUTHORS>
<PRICE AMOUNTCURRENCY = "Pounds">200</PRICE>
<PUBLISHER>Pearson</PUBLISHER>
</BOOK>
  <BOOK>
<TITLE>My Story</TITLE>
<AUTHORS>Roberts</AUTHORS>
<PRICE AMOUNTCURRENCY = "SW Francs">500</PRICE>
<PUBLISHER>McMillan</PUBLISHER>
</BOOK>

<BOOK>
<TITLE>XML for Beginners</TITLE>
<ΑUTHORS>Ince</AUTHORS>
<PRICE AMOUNTCURRENCY = "Dollars" DISCOUNT = "5">300</PRICE>
<PUBLISHER>Pearson</PUBLISHER>
</BOOK>

<BOOK>
<TITLE>Java and Nirvana</TITLE>
<AUTHORS>Rowlands</AUTHORS>
<PRICE AMOUNTCURRENCY = "Pounds"> 400 </PRICE>
<PUBLISHER>Wiley</PUBLISHER>
</BOOK>
</BOOKLIST>

 
Η σάρωση περιλαμβάνει τον έλεγχο κάθε κόμβου του δέντρου, για τον καθορισμό τι τύπου κόμβος είναι και την επεξεργασία του κόμβου με βάση τον τύπο του. Για παράδειγμα, αν ο κόμβος αναπαριστά ένα στοιχείο, όπως το PRICE, τότε υφίσταται επεξεργασία ώστε να ανακτήσουμε ότι ιδιότητες έχει και να τις αναπαραστήσουμε . Μερικοί άγνωστοι σε σας ύποι κόμβων, όπως entity reference nodes, δεν υφίστανται επεξεργασία.

Ακολουθήστε τα παρακάτω βήματα: