Πώς να χρησιμοποιήσετε το XML σε Haskell
- Επικολλήστε ένα αντιπροσωπευτικό δείγμα XML, ιδανικά με όλα τα προαιρετικά πεδία συμπληρωμένα.
- Ορίστε το όνομα του ριζικού τύπου και επιλέξτε αν θέλετε και βοηθητικό κώδικα ή μόνο τους τύπους.
- Αντιγράψτε τον παραγόμενο κώδικα Haskell στο έργο σας.
Σχετικά με το XML σε Haskell
Η χειροκίνητη δημιουργία κλάσεων μοντέλου για πολλά δεδομένα XML είναι κουραστική και μπορεί εύκολα να οδηγήσει σε τυπογραφικά λάθη. Επικολλήστε εδώ ένα δείγμα και το εργαλείο θα αναγνωρίσει τη δομή του: ποια πεδία υπάρχουν, ποια είναι αντικείμενα, ποια είναι πίνακες και τι τύπο έχει κάθε τιμή. Το αποτέλεσμα είναι τύποι εγγραφών με instances ToJSON και FromJSON από το Aeson.
Το XML μετατρέπεται πρώτα σε JSON με τον ίδιο τρόπο όπως στο εργαλείο μας XML σε JSON: τα χαρακτηριστικά παίρνουν ένα @_ Το προοίμιο και το περιεχόμενο κειμένου δίπλα στις ιδιότητες ονομάζεται #text. Οι τύποι Haskell δημιουργούνται από αυτό το αποτέλεσμα. Τα πεδία εγγραφών αποκτούν πρόθεμα από το όνομα του τύπου, επειδή η Haskell δεν επιτρέπει σε δύο εγγραφές της ίδιας μονάδας να έχουν κοινά ονόματα πεδίων.
Χρήση του παραγόμενου κώδικα
Χρήση decode από την Data.Aeson, για παράδειγμα decode text :: Maybe Root.
Τα προαιρετικά πεδία χρησιμοποιούν τον τύπο Maybe.