1 / 50

«Τι κρύβεται» πίσω από μια Επιχειρησιακή Αναφορά (report): XML& XSD για αρχάριους

«Τι κρύβεται» πίσω από μια Επιχειρησιακή Αναφορά (report): XML& XSD για αρχάριους Κατανόηση της χρήσης και του ρόλου της γλώσσας XML στην επικοινωνία των πληροφοριακών συστημάτων και στη προτυποποίηση των ηλεκτρονικών εγγράφων. Παραδείγματα ηλεκτρονικών εγγράφων. Στόχοι και Περιεχόμενο.

cheche
Download Presentation

«Τι κρύβεται» πίσω από μια Επιχειρησιακή Αναφορά (report): XML& XSD για αρχάριους

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. «Τι κρύβεται» πίσω από μια Επιχειρησιακή Αναφορά (report): XML& XSD για αρχάριους Κατανόηση της χρήσης και του ρόλου της γλώσσας XML στην επικοινωνία των πληροφοριακών συστημάτων και στη προτυποποίηση των ηλεκτρονικών εγγράφων. Παραδείγματα ηλεκτρονικών εγγράφων Document Modelling

  2. Στόχοι και Περιεχόμενο • Στόχος • Η απόκτηση γνώσεων σε θέματα μορφοποίησης και μεταφοράς (μεταξύ συστημάτων) ηλεκτρονικών εγγράφων, μέσω του συνδυασμού θεωρίας και παραδειγμάτων • Περιεχόμενο • XML: Τι είναι; Μια πρώτη προσέγγιση της γλώσσας XML • Κατανόηση της χρήσης και του ρόλου της στην επικοινωνία των πληροφοριακών συστημάτων και στη προτυποποίηση των ηλεκτρονικών εγγράφων • Δείτε αυτό το webinar μέχρι τέλους... • Μετά, • Ρωτήστε αυτά που θέλετε τον/την Εκπαιδευτή/τρια σας • Κάνετε ένα post στο Forum! Document Modelling

  3. Τι περιλαμβάνει η Ανάπτυξη; • Εισαγωγή στις εφαρμογές Πληροφορικής ενός Δήμου και στην ανάγκη της μεταξύ τους σύνδεσης • Ανάλυση των εγγράφων ενός Δήμου και η μετατροπή τους σε ηλεκτρονικά έγγραφα • Αναπαράσταση των ηλεκτρονικών εγγράφων με κοινό τρόπο • Εισαγωγή στη γλώσσα XML • Χρήση της XML για αναπαράσταση ηλεκτρονικών εγγράφων • Βασικά στοιχεία της XML • Αναπαράσταση των ηλεκτρονικών εγγράφων σε φόρμες και templates • Εισαγωγή στις «schema γλώσσες». Περιγραφή της XSDlanguage • Μετατροπή των εγγράφων ενός Δήμου με τη χρήση σχημάτων (XSD) σε ηλεκτρονικά έγγραφα, και προτυποποίηση Document Modelling

  4. Ηλεκτρονικά έγγραφα, XML (eXtensible Markup Language), Προτυποποίηση εγγράφων,τύποι δεδομένων, Έγγραφα ηλεκτρονικής διακυβέρνησης, Σχήματα εγγράφων, γλώσσα περιγραφής σχημάτων XML (XML Schema Description Language -XSD) Λεξεις κλειδια Document Modelling

  5. Μετάβαση στην ψηφιακή εποχή Πως παράγονται τα ηλεκτρονικά έγγραφα; Ποιά είναι η χρησιμότητά τους; Document Modelling

  6. Πληροφοριακά Συστήματα σε έναν Δήμο • Κάθε Δήμος διαθέτει μια σειρά από εφαρμογές Πληροφορικής • Πρωτόκολλο • Δημοτολόγιο • Οικονομική Διαχείριση κλπ. • Στις προηγούμενες (υπο)Ενότητες είδαμε «νέα» συστήματα Πληροφορικής που πρόκειται να εισαχθούν στην λειτουργία των Δήμων • Συστήματα Επιχειρησιακής Νοημοσύνης • Συστήματα Διαχείρισης Επιχειρησιακών Διαδικασιών • Συστήματα Παρακολούθησης Επιχειρησιακών Διαδικασιών • Όλα αυτές οι εφαρμογές και αυτά τα συστήματα • Δημιουργούν Έγγραφα και Αναφορές (Reports) • Συνεργάζονται μεταξύ τους για να ανταλλάξουν δεδομένα και αυτή η επιτυγχάνεται με την ανταλλαγή «μηνυμάτων». Τι είναι αυτά τα «μηνύματα»; • Ένα σύνολο δεδομένων με συγκεκριμένη δομή • Ικανά να «διαβαστούν» και να κατανοηθούν από Συστήματα Πληροφορικής, δηλαδή από μηχανές που προφανώς δεν διαθέτουν την ανθρώπινη ικανότητα ερμηνείας Document Modelling

  7. Ηλεκτρονικά Έγγραφα (e-documents) • Έγγραφα & Αναφορές (Reports) που παράγονται από εφαρμογές και συστήματα Πληροφορικής • Mηνύματα επικοινωνίας ανάμεσα σε τέτοιες εφαρμογές και συστήματα • ... αποτελούν ηλεκτρονικά έγγραφα Document Modelling

  8. Η πρώτη γνωριμία με το ηλεκτρονικό έγγραφο • Ας δούμε τι είναι το ηλεκτρονικό έγγραφο • “An electronic document is any electronic media content (other than computer programs or system files) that are intended to be used in either an electronic form or as printed output.” Wikipedia • Στα πλαίσια ενός Δήμου όλα τα ενδιάμεσα αλλά και τελικά έγγραφα που παράγουν οι υπηρεσίες του Δήμου γίνονται... ηλεκτρονικά • Ένα ηλεκτρονικό έγγραφο έχει 3 βασικές συνιστώσες • Τα δεδομένα που συνθέτουν το έγγραφο • Την περιγραφή των δεδομένων ώστε αυτά να είναι αντιληπτά από τα πληροφοριακά συστήματα • Την τελική μορφοποίηση – παρουσίαση των δεδομένων (διάταξη, μέγεθος κλπ) ώστε ένα έγγραφο να είναι κατανοητό από τον άνθρωπο που το χρησιμοποιεί • Και όλα αυτά κάτω από ένα κοινό πρότυπο (standard) Document Modelling

  9. Η XML ως ένα κοινό πρότυπο δημιουργίας και περιγραφής των ηλεκτρονικών εγγράφων • Η συνεχώς αυξανόμενη χρήση των ηλεκτρονικών εγγράφων απαιτεί τη χρήση ειδικών προτύπων για την αναπαράσταση με έναν κοινό τρόπο • Γιατί ένα κοινό πρότυπο; • Όλα τα πληροφοριακά συστήματα του δήμου και όχι μόνο, παράγουν και τροφοδοτούνται με ηλεκτρονικά έγγραφα • Οι μηχανές (συστήματα) δεν καταλαβαίνουν έγγραφα με ασαφή δομή και περιεχόμενο • Χρειάζονται έναν κοινό τρόπο μεταφοράς και περιγραφής των δεδομένων • Το πρότυπο αυτό είναι η XML!!! Document Modelling

  10. Παράδειγμα: Πιστοποιητικό Γέννησης • Ας πάρουμε το παράδειγμα ενός πιστοποιητικού γέννησης που αποτελεί ένα έγγραφο της υπηρεσίας δημοτολογίου • Τα δεδομένα είναι τα στοιχεία του ατόμου για τον οποίο εκδίδεται το πιστοποιητικό • Η παρουσίαση είναι ο τρόπος που θα εμφανιστούν στο χαρτί τα δεδομένα (δηλαδή το template που έχει ο δήμος και το οποίο δεν αλλάζει) • Σε ένα ηλεκτρονικό έγγραφο προσθέτουμε και την περιγραφή των δεδομένων Document Modelling

  11. Δεδομένα και Περιγραφή των Δεδομένων • Η παρουσίαση ενός ηλεκτρονικού εγγράφου αφορά μόνο την τελική χρήση αυτού που είναι ανάγνωση από τον άνθρωπο. Αυτό όμως που μας αφορά στην υπάρχουσα ενότητα είναι η δημιουργεί του. • Ένα ή περισσότερα πληροφοριακά συστήματα παράγουν την απαραίτητη πληροφορία (δεδομένα) για να σχηματιστεί το έγγραφο. • Για την μεταφορά και την συγκέντρωση των δεδομένων από όλα αυτά τα συστήματα απαιτείται ένα κοινό πρότυπο • Πρότυπο που πρέπει να “καταλαβαίνουν” όλα τα συστήματα • Πρότυπο που να περιγράφει τα δεδομένα που μεταφέρονται • Πρότυπο που τελικά να περιγράφει τη δομή και την πληροφορία του τελικού ηλεκτρονικού εγγράφου • Όλες οι παραπάνω λειτουργίες ενσωματώνονται στο πρότυπο που λέγεται XML Document Modelling

  12. Εισαγωγή στην XML Βασικά στοιχεία και σύνταξη της XML Document Modelling

  13. Τι είναι η XML (eXtensibleMarkup Language) • Η XML είναι μια γλώσσα περιγραφής δεδομένων • Προτάθηκε σαν μια γλώσσα περιγραφής εγγράφων • Εξελίσσεται όμως σε ένα παγκόσμιο πρότυπο για ανταλλαγή πληροφορίας • Εφαρμογές στις βάσεις δεδομένων • Και φυσικά… δεν είναι γλώσσα προγραμματισμού • Ως markup γλώσσα έχει πολλές ομοιότητες με την HTML ωστόσο έχει μια σημαντική διαφορά • Η HTML ασχολείται με την παρουσίαση των δεδομένων και μόνο ενώ η XML με την μεταφορά και την περιγραφή Document Modelling

  14. Μια μικρή ιστορική αναδρομή στις Markup γλώσσες • Η επέκταση του Internet δημιούργησε μια έξαρση στην ανταλλαγή δεδομένων και πληροφορίας μεταξύ των υπολογιστών και ανθρώπων. • Εκεί άρχισε να δημιουργείται η ανάγκη εύρεσης ενός τρόπου παρουσίασης αυτής της πληροφορίας με τρόπο απλό κατανοητό αλλά και ταυτόχρονα «φιλικό» προς τον άνθρωπο • Η χρήση απλών κειμένων χωρίς δομή (επικεφαλίδες, πίνακες, στήλες, χρώματα κλπ) απωθούσε τον άνθρωπο • Επίσης η χρήση άλλων προτύπων όπως αρχεία εγγράφων ήταν αρκετά μεγάλα σε μέγεθος ώστε να μεταφερθούν με τις τότε ταχύτητες των δικτύων • Η γλώσσα που προτάθηκε για να καλύψει αυτές τις ανάγκες ήταν η HTML (HyperText Markup Language) • Γλώσσα Μορφοποίησης Κειμένου Document Modelling

  15. Μια μικρή ιστορική αναδρομή στις Markup γλώσσες • Η HTML δημιουργήθηκε για τις ανάγκες επικοινωνίας ανθρώπου – μηχανής • Και η γέννησή της δημιούργησε τον παγκόσμιο ιστό που είναι ένας απέραντος τόπος εύρεσης και παρουσίασης πληροφορίας • Ωστόσο η γιγάντωση των δικτύων υπολογιστών και ανταλλαγής πληροφοριών αντιμετώπισε ένα άλλο πρόβλημα που αφορούσε την μεταφορά αυτών των δεδομένων από μηχανή σε μηχανή • Μετά από πολλές προσπάθειες δημιουργήθηκε η XML που καλύπτει τις παραπάνω ανάγκες • Ουσιαστικά η XML αποτελεί μια χρονική επέκταση της HTML και αναφέρεται στην • Επικοινωνία μηχανής με μηχανή • Δηλαδή είναι το πρότυπο για την ανταλλαγή δεδομένων μεταξύ συστημάτων Document Modelling

  16. Βασικά στοιχεία τηςXML (eXtensibleMarkup Language) (1) • Η XML έχει δυο βασικά συστατικά • Element (στοιχείο) • Ένα element ορίζεται από ένα tag (ετικέτα) έναρξης και ένα tag (ετικέτα) λήξης το οποίο αναπαρίσταται • <tag> … </tag> • Το κάθε “tag” περιγράφει και μια πληροφορία • Πχ <firstname>Γιώργος </ firstname > • Εδώ ορίζεται ότι το μικρό όνομα (firstname) είναι Γιώργος • Attribute (χαρακτηριστικό) • Ένα Attribute ορίζει μια ιδιότητα που έχει ένα element • Και ορίζεται με μια τριπλέτα «όνομα=“τιμή”» • Πχ <firstnamelanguage=“GR”> Γιώργος </firstname > • Εδώ ορίζεται ότι η πληροφορία “Όνομα” (firstname) είναι στα ελληνικά (language=“GR”) Document Modelling

  17. Βασικά στοιχεία τηςXML (eXtensibleMarkup Language) (2) • Με τα δυο αυτά συστατικά μπορούμε να περιγράψουμε οποιαδήποτε πληροφορία με μια ημι-δομημένη μορφή ακολουθώντας μερικούς κανόνες • Κάθε “element” μπορεί να περιέχει • attributes (κανένα ή περισσότερα) • Elements (κανένα ή περισσότερα) • Κείμενο • Η δυνατότητα φωλιασμένων elements επιτρέπει τη δημιουργία ιεραρχικών δομών για την περιγραφή των δεδομένων • Πχ Μια διεύθυνση περικλείει τα στοιχεία Οδός, Αριθμός, Ταχυδρομικός κώδικας, Πόλη κλπ • Δηλαδή είναι μια δομή (ή ένας τύπος) δεδομένων που αποτελείται από άλλα δεδομένα • Επίσης επιτρέπει την ομαδοποίηση μιας πληροφορίας σε δομικές μονάδες • Ακολουθεί ένα παράδειγμα που μας επιτρέπει να κατανοήσουμε όλα τα παραπάνω Document Modelling

  18. Ας δούμε μια ταχυδρομική διεύθυνση από την “πλευρά” της XML… • Μια τυπική ταχυδρομική διεύθυνση περιέχει • Αριθμός • Οδός • Ταχυδρομικός κώδικας • Πόλη • Χώρα • Ας δούμε μια διεύθυνση σε XML <Address> <Number>12</Number> <Street>Ηρώων Πολυτεχνείου </Street> <ZipCode> 12345</ZipCode> <City> Αθήνα</City> <Country> Χώρα</Country> </Address> Document Modelling

  19. Άλλο ένα παράδειγμα με XML… • Ένα μήνυμα στο ηλεκτρονικό ταχυδρομείο αποτελείται από τα εξής πεδία • Αποστολέας • Παραλήπτης • Θέμα μηνύματος • Μήνυμα • Ας το δούμε σε XML <Mail> <From>sender@gmail.com</From> <To>receiver@gmail.com</To> <Subject> Ένα mail σε XML</Subject> <Body> Αυτό είναι ένα mail στέλνει ο “sender” στον “receiver” με θέμα «Ένα mail σε XML» και περιγράφεται με XML δομή</Body> </Mail> Document Modelling

  20. Ένα πιο σύνθετο παράδειγμα με XML… • Το παρακάτω παράδειγμα περιγράφει την παραγγελία ενός προϊόντος • Όνομα προϊόντος και τη γλώσσα περιγραφής • Η τιμή του προϊόντος και το νόμισμα • Διεύθυνση αποστολής (είδος διεύθυνσης και γλώσσα γραφής) • Οδός αριθμός • Ταχυδρομικός κώδικας • Ας το δούμε σε XML <product> <namelanguage=“Greek”>Βιβλίο XML</name> <pricecurrency=“Euro”> 40.12 </price> <addressformat=“XL1245” language=“Greek”> <street>31 Πανεπιστημίου</street> <zip>15112</zip> </address> </product> Document Modelling

  21. Η XML δημιουργεί μια δενδρική αναπαράσταση των εγγράφων elements attributes • Μια άλλη ιδιότητα της XML είναι η αναπαράσταση των εγγράφων σε δενδρική μορφή • Κάθε element είναι ένας κόμβος που περιέχει «υπο» κόμβους • Οι «υπο» κόμβοι είναι άλλα elements ή attributes • Τα attributes δεν μπορεί να περιέχουν «υπό» κόμβους • Το κάθε XML έγγραφο έχει έναν και μόνο έναν αρχικό κόμβο • Το παρακάτω παράδειγμα δείχνει μια περιγραφή ενός προϊόντος που παραγγείλαμε… product name price address language currency format language street zip Document Modelling

  22. Για ποιο λόγο όμως πρέπει να χρησιμοποιούμε XML • Ουσιαστικά “προετοιμάζουμε” την πληροφορία ώστε να μπορεί να μεταφερθεί από ένα σύστημα σε ένα άλλο • Δίνουμε μια δομημένη μορφή στα δεδομένα • Ιεράρχηση, περιγραφή • Αυτό όμως δεν είναι αρκετό… • Η περιγραφή που δίνουμε είναι υποκειμενική και τα συστήματα δεν καταλαβαίνουν λέξεις • Πχ το όνομα μπορεί εμείς να το περιγράψουμε με το element <name> ενώ αντίστοιχα κάποιος άλλος με το element <Firstname> • Στη συνέχεια θα δούμε πως μπορούμε να δημιουργήσουμε μια κοινή “γλώσσα” περιγραφής των δεδομένων Document Modelling

  23. XML Schema Μια “γλώσσα” περιγραφής και προτυποποίησης εγγράφων Document Modelling

  24. Τι πετυχαίνουμε με την προτυποποίηση των εγγράφων; • Όλα τα ηλεκτρονικά έγγραφα για να μπορούν να είναι κατανοητά από τα πληροφοριακά συστήματα ενός οργανισμού ή επιχείρησης θα πρέπει να υπακούουν σε κάποιους κανόνες • Αυτοί οι κανόνες ορίζονται ώστε τα συστήματα να καταλαβαίνουν το “νόημα” των δεδομένων που περιέχουν • Και αναφέρονται… • Στη δομή της πληροφορίας • Στη σειρά την οποία κατέχουν τα δεδομένα στο έγγραφο • Και στη ιεράρχηση των δεδομένων Document Modelling

  25. Γιατί προτυποποίηση; • Η προτυποποίηση της δομής των εγγράφων δεν είναι ένα δημιούργημα του κόσμου της πληροφορικής • Για παράδειγμα στις καθημερινές εργασίες ενός δήμου, χρησιμοποιούμε πρότυπα “templates” για τα έγγραφα που συναλλάσουμε μεταξύ μαςή με τους πολίτες • Πχ οι αιτήσεις που συμπληρώνουν οι πολίτες για διάφορα θέματα έχουν συγκεκριμένο “template” • Αυτές είναι προσχεδιασμένες και προεκτυπωμένες φόρμες που συμπληρώνει ο πολίτης • Και φυσικά δεν περιέχουν δεδομένα • Τα σχήματα των εγγράφων χρησιμοποιούνται για την ταχύτερη επεξεργασία των θεμάτων στα οποία αναφέρονται • Μια αίτηση για τραπεζοκαθίσματα έχει συγκεκριμένο “template” για την εξυπηρέτηση του υπαλλήλου. • Πάνω στη φόρμα ξέρει που θα βρει τα στοιχεία του αιτούντος την αιτιολογία της αίτησης κλπ • Αν δεν υπήρχε αυτή η φόρμα ο υπάλληλος θα αφιέρωνε πολύ χρόνο μόνο για την ανάγνωση της αίτησης!!! Document Modelling

  26. Η φόρμα της αίτησης τραπεζοκαθισμάτων • Ο Δήμος Λαρισαίων χρησιμοποιεί αυτή τη “φόρμα” αίτησης για τα τραπεζοκαθίσματα. Τα δεδομένα συμπληρώνονται σε συγκεκριμένα πεδία: • Επώνυμο • Όνομα • Κλπ • Επίσης τα δεδομένα είναι ομαδοποιημένα ανά κατηγορία • Προσωπικά στοιχεία • Διεύθυνση • Περιγραφή αιτήματος • Αυτή η “φόρμα” βοηθά τον υπάλληλο να διεκπεραιώσει το αίτημα με σύντομο «μηχανικό»τρόπο • Ξέρει που είναι τι • Και ταυτόχρονα αποφεύγεται η πιθανότητα η αίτηση να συμπληρώνεται από τον πολίτη με έναν “άναρχο” τρόπο Document Modelling

  27. Ας επανέλθουμε στα ηλεκτρονικά έγγραφα • Όπως είπαμε και προηγουμένως η προτυποποίηση των εγγράφων συμβαίνει όχι μόνο στον πραγματικό κόσμο αλλά και στον “ηλεκτρονικό κόσμο”. • Η προτυποποίηση των ηλεκτρονικών εγγράφων γίνεται για την καλύτερη επεξεργασία των εγγράφων από τα συστήματα πληροφορικής σε αντιστοιχία με τους υπαλλήλους του δήμου • Η προτυποποίηση των εγγράφων γίνεται με τη χρήση της XML και παράγωγων αυτής • Αυτά τα παράγωγα ονομάζονται «γλώσσες σχημάτων» ή «schema languages» • Η πιο διαδεδομένη γλώσσα σχημάτων είναι η “XML Schema Description Language” • Η δημιουργία ενός σχήματος XSD στηρίζεται στους βασικούς κανόνες της XML • Ουσιαστικά ένα XSD σχήμααποτελεί ένα συντακτικό που περιγράφει τον τρόπο που θα ταξινομηθούν τα δεδομένα σε ένα XML έγγραφο Document Modelling

  28. XSD XML Schema Definition Language • Γλώσσα Προτυποποίησης Εγγράφων • Ένα σύνολο κανόνων (οι βασικοί κανόνες της XML και μερικοί επιπρόσθετοι κανόνες) • Ορίζουν την δομή και τη μορφή των εγγράφων • Ορίζει μια δομή δεδομένων • Ένα XSD σχήμα δεν περιέχει δεδομένα!!! • XML έγγραφα περιέχουν πληροφορίες • Τα XML έγγραφα υπακούουν στους κανόνες που ορίζονται σε XSD Schemas • Δηλαδή κάθε XML έγγραφο που μεταφέρει δεδομένα για μια συγκεκριμένη εφαρμογή, έχει τα δεδομένα ταξινομημένα με συγκεκριμένη σύνταξη που ορίζεται από ένα schema • Με άλλα λόγια ένα XSD Schema έχει την αντίστοιχη λειτουργικότητα μιας φόρμας συμπλήρωσης στοιχείων XSD XML Document Modelling

  29. Ποιοι είναι οι βασικοί κανόνες για τη δημιουργία ενός XSD σχήματος • Πάντα αρχικά υπάρχει ένα «element» εκκίνησης (root) το οποίο υποδηλώνει και την οντότητα του σχήματος • <xs:schema> … </xs:schema> • Αυτό το αρχικό “element” περιέχει: • Δηλώσεις από άλλα «elements» • <elementname=“name" type=“type“/> • Δηλώσεις «attributes» • <attributename=“name" type=“type"/> • Κάθε “element” αποτελεί και έναν τύπο δεδομένων (Ορίζει δηλαδή τι δομή και το περιεχόμενου ενός δεδομένου ή μιας ομάδας δεδομένων). Ανάλογα με την πολυπλοκότητα των δεδομένων υπάρχουν • Ορισμοί απλών τύπων (simple types) • Περιέχουν απλό κείμενο χωρίς “markup” • Ορισμοί σύνθετων τύπων (complextypes) • Περιέχουν άλλους τύπους (σύνθετους και απλούς) και απλό κείμενο Document Modelling

  30. Απλοί τύποι δεδομένων στα XSD σχήματα • Ένας απλός τύπος δεδομένων είναι ένα απλό “element” το οποίο περιέχει μόνο κείμενο. • Δεν περιέχει ούτε attributes ούτε elements • <xs:elementname=“FirstName" type="xs:string"/> • Το “name” περιγράφει το είδος της πληροφορίας που περιέχει το element ενώ το “type” ορίζει τον τύπο δεδομένων που περιέχει το element. Δηλαδή το συγκεκριμένο element ορίζει ένα όνομα ανθρώπου και το πεδίο είναι κείμενο «string» • <xs:elementname=“age" type="xs:int"/> • Το συγκεκριμένο element ορίζει την ηλικία ενός ανθρώπου και το πεδίο είναι ακέραιος αριθμός «string» • Οι απλοί τύποι δεδομένων συνήθως περιγράφουν δεδομένα που είναι απλά κείμενα (string), αριθμοί (int, double, κλπ), ημερομηνίες (date, dateTime)ή δεδομένα τύπου ναι όχι (boolean) • Σύνθετοι τύποι δεδομένων όπως η ταχυδρομική διεύθυνση που αποτελείται από ένα σύνολο δεδομένων περιγράφονται με σύνθετους τύπους δεδομένων Document Modelling

  31. Σύνθετοι τύποι δεδομένων • Ένας σύνθετος τύπος δεδομένων είναι ένα “element” που περιέχει άλλα “elements” ή/και άλλα ”attributes” • Και αποκαλείται “complex element” • Επίσηςόταν σε έναν απλό τύπο δεδομένων εισαγάγουμε έναν περιορισμό (πχ για το προηγούμενο παράδειγμα της ηλικίας εισάγουμε τον περιορισμό από 0 έως 100) αυτός πλέον περιγράφεται με έναν σύνθετο τύπο δεδομένων • Σε έναν σύνθετο τύπο δεδομένων που περιέχει περισσότερα από ένα element, ορίζεται η σειρά εμφάνισης αυτών αλλά και η συχνότητα εμφάνισης Document Modelling

  32. Για τον ορισμό της σειράς εμφάνισης χρησιμοποιούμε ένα σύνολο εντολών που κάνουν αυτή τη δουλειά • Η πρώτη κατηγορία είναι οι εντολές αλληλουχίας • Όλα τα στοιχεία χωρίς καθορισμένη σειρά • <all>… </all> • Ένα από μια λίστα στοιχείων • <choice>… </choice> • Αλληλουχία στοιχείων με συγκεκριμένη σειρά • <Sequence>… </Sequence> • Η δεύτερη κατηγορία είναι οι εντολές συχνότητας εμφάνισης • Ελάχιστος αριθμός εμφανίσεων ενός στοιχείου • minOccurs • Μέγιστος αριθμός εμφανίσεων ενός στοιχείου • maxOccurs • Για παράδειγμά αν το κάποιος έχει δύο ονόματα θα μπορούσαμε να γράψουμε • <xs:elementname=“FisrtName" type="xs:string" minOccurs="0" maxOccurs=“2"/> Document Modelling

  33. Ας δούμε ένα παράδειγμα περιγραφής μιας ταχυδρομικής διεύθυνσης • Μια τυπική ταχυδρομική διεύθυνση περιέχει • Αριθμός • Οδός • Ταχυδρομικός κώδικας • Πόλη • Χώρα • Το σχήμα που περιγράφει την ταχυδρομική διεύθυνση είναι το παρακάτω <xs:elementname="address"> <xs:complexType> <xs:sequence> <xs:elementname="Number" type="xs:int"/> <xs:elementname="Street" type="xs:string"/> <xs:element name="ZipCode" type="xs:int"/> <xs:elementname="City" type="xs:string"/> <xs:elementname="Country" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> Document Modelling

  34. Μετατροπή ενός εγγράφου του Δημοσίου ... Σε ηλεκτρονικό Document Modelling

  35. Αίτησης χορήγησης άδειας για την κατάληψη κοινόχρηστου χώρου (τραπεζοκαθίσματα) Document Modelling

  36. Πως μετατρέπουμε ένα έγγραφο σε ηλεκτρονική μορφή; • Δεν υπάρχει συγκεκριμένη μεθοδολογία για τη δημιουργία των σχημάτων των ηλεκτρονικών εγγράφων • Οι μόνοι κανόνες που πρέπει να ακολουθηθούν είναι αυτοί που ορίζονται από την XML. • Αρχικές δηλώσεις • Για κάθε έγγραφο μια και μόνο ρίζα • Χρήση elements και attributes • Σωστή χρήση των εντολών στοίχισης • Ωστόσο υπάρχουν δύο σημαντικές προσεγγίσεις • Καταγραφή του εγγράφου και αποτύπωση ως ενιαία ηλεκτρονική οντότητα • Τεμαχισμός της πληροφορίας που περιέχει το έγγραφο σε κατηγορίες που τις ονομάζουμε δομικές πληροφοριακές οντότητες • Η κάθε πληροφοριακή οντότητα όπως διεύθυνση, προσωπικά στοιχεία κλπ σε ένα XML σχήμαπεριγράφεται με έναν σύνθετο τύπο δεδομένων • Το τελικό ηλεκτρονικό έγγραφο είναι μια σύνθεση απλών και σύνθετων τύπων δεδομένων • Κάτι σαν Lego!!!! Document Modelling

  37. Η προσέγγιση των δομικών πληροφοριακών οντοτήτων • Αρχικά αναλύουμε τη πληροφορία που περιέχει το έγγραφο που θέλουμε να παραστήσουμε ηλεκτρονικά (στο παράδειγμά μας χρησιμοποιούμε την αίτηση χορήγησης άδειας για τραπεζοκαθίσματα) • Προσπαθούμε να εντοπίσουμε δεδομένα που σχετίζονται • Π.χ. όνομα, επώνυμο όνομα πατρός είναι δεδομένα που αφορούν τα προσωπικά στοιχεία ενός ατόμου • Κάθε σύνολο σχετιζόμενων δεδομένων απαρτίζουν μια δομική πληροφοριακή οντότητα • Στη συνέχεια εφαρμόζοντας τους κανόνεςδημιουργίας σχημάτων XML, δημιουργούμε για κάθε πληροφοριακή οντότητα και έναν τύπο δεδομένων. • Το τελικό έγγραφο προκύπτει με την σύνθεση όλων αυτών των τύπων δεδομένων • Το μεγάλο πλεονέκτημα αυτής της προσέγγισης είναι ότι οι δομικές πληροφοριακές μονάδες που χρησιμοποιούνται περισσότερες από μια φορές, ορίζονται μια φορά. • Στο έγγραφό μας ένα παράδειγμα είναι η διεύθυνση που χρησιμοποιείται για την κατοικία, το κατάστημα αλλά και για το σημείο τοποθέτησης των τραπεζοκαθισμάτων Document Modelling

  38. Ανάλυση της αίτησης • Η φόρμα της αίτησης χορήγησης άδειας τοποθέτησης τραπεζοκαθισμάτων περιγράφει τα στοιχεία που απαιτείται να συμπληρώσει ο πολίτης. • Αναλύοντας αυτά τα στοιχεία μπορούμε να τα ομαδοποιήσουμε σε τέσσερεις κατηγορίες • Προσωπικά στοιχεία • Στοιχεία καταστήματος • Στοιχεία του αιτήματος • Διεύθυνση • Κάθε κατηγορία περιέχει και ένα σύνολο συσχετιζόμενης πληροφορίας Document Modelling

  39. Ας δούμε ξεχωριστά τις κατηγορίες δεδομένων ή δομικές πληροφοριακές οντότητες • Προσωπικά στοιχεία • Επώνυμο • Όνομα • Όνομα Πατρός • Τηλέφωνο • Διεύθυνση • Στοιχεία καταστήματος • Επωνυμία • ΑΦΜ • Διεύθυνση • Διεύθυνση • Οδός • Αριθμός • Πόλη • Τ.Κ. • Αίτημα άδειας • Περιγραφή • Αιτιολογία • Έκταση σε τ.μ • Διεύθυνση • Έτος άδειας • Ημερομηνία άδειας Document Modelling

  40. Κατά τη δημιουργία του σχήματος της αίτησης “βλέπουμε” το έγγραφο ως ένα δένδρο • Πριν την δημιουργία του σχήματος του ηλεκτρονικού εγγράφου μπορούμε να σχεδιάσουμε το έγγραφο ως ένα δένδρο • Η κορυφή ή ρίζα του δένδρου είναι το ίδιο το έγγραφο και αποτελεί τον αρχικό κόμβο • Τα κλαδιά που ξεκινούν από την κορυφή καταλήγουν στις δομικές πληροφοριακές οντότητες ή δεδομένα που απαρτίζουν το έγγραφο • Στο παράδειγμά μας ο αρχικός κόμβος είναι η ίδια η αίτηση • Οι επόμενοι κόμβοι είναι οι τρεις δομικές πληροφοριακές μονάδες που απαρτίζουν την αίτηση • Προσωπικά στοιχεία αιτούντος • Στοιχεία του καταστήματος που αναφέρεται η αίτηση • Στοιχεία του αιτήματος Αίτηση Προσωπικά στοιχεία Στοιχεία καταστήματος Στοιχεία Αιτήματος Document Modelling

  41. Κάτω από κάθε δομική πληροφοριακή οντότητα έχουμε τα δεδομένα που συσχετίζονται με αυτή την κατηγορία (1) • Δηλαδή για κάθε κατηγορία δημιουργούμε ένα “υπό” δένδρο με τα δεδομένα που περιέχει • Προσωπικά στοιχεία • Στοιχεία καταστήματος Στοιχεία Καταστήματος Προσωπικά στοιχεία Όνομα Επώνυμο Όνομα Πατρός ΑΦΜ Τηλέφωνο Διεύθυνση Διεύθυνση Επωνυμία Document Modelling

  42. Κάτω από κάθε δομική πληροφοριακή οντότητα έχουμε τα δεδομένα που συσχετίζονται με αυτή την κατηγορία (2) • Δηλαδή για κάθε κατηγορία δημιουργούμε ένα “υπό” δένδρο με τα δεδομένα που περιέχει • Στοιχεία αίτησης • Διεύθυνση Στοιχεία αίτησης Διεύθυνση Ημερομηνία Αίτησης Αιτιολογία Έτος εφαρμογής Άδειας Περιγραφή Έκταση Διεύθυνση Οδός Αριθμός Τ.Κ. Πόλη Document Modelling

  43. Ο σύνθετος τύπος που περιγράφει τη δομική πληροφοριακή οντότητα «διεύθυνση» <complexType name="addressType"> <sequence> <element name="street" type="string"></element> <element name="number" type="int"></element> <element name="ZIPCode" type="int"></element> <element name="city" type="string"></element> </sequence> </complexType> Document Modelling

  44. Ο σύνθετος τύπος που περιγράφει τη δομική πληροφοριακή οντότητα «Προσωπικά στοιχεία» <complexType name="PersonalDataType"> <sequence> <element name="LastName" type="string"></element> <element name="FirstName" type="string"></element> <element name="FatherName" type="string"></element> <element name="phone" type="string"></element> <element name="homeaddres" type="tns:addressType"></element> </sequence> </complexType> Document Modelling

  45. Ο σύνθετος τύπος που περιγράφει τη δομική πληροφοριακή οντότητα «Στοιχεία Καταστήματος» <complexType name="companyDataType"> <sequence> <element name="name" type="string"></element> <element name="AFM" type="string"></element> <element name="companyAddress”type="tns:addressType"></element> </sequence> </complexType> Document Modelling

  46. Ο σύνθετος τύπος που περιγράφει τη δομική πληροφοριακή οντότητα «Στοιχεία Αίτησης» <complexType name="applicationDataType"> <sequence> <element name="Description" type="string"></element> <element name="Reason" type="string"></element> <elementname="surface" type="double"></element> <element name="IssueYear" type="string"></element> <element name="applicationDate" type="date"></element> <element name="address" type="tns:addressType"></element> </sequence> </complexType> Document Modelling

  47. Ο σύνθετος τύπος που περιγράφει το έγγραφο <complexType name="applicationType"> <sequence> <element name="personalData" type="tns:PersonalDataType"></element> <element name="companyData" type="tns:companyDataType"></element> <element name="applicationData" type="tns:applicationDataType"></element> </sequence> </complexType> Document Modelling

  48. Το ολοκληρωμένο σχήμα της αίτησης (γραφική απεικόνιση με τη χρήση της εφαρμογής Eclipse Birt) Document Modelling

  49. Το ολοκληρωμένο σχήμα της αίτησης (απεικόνιση του XML κώδικα) <complexType name="companyDataType"> <sequence> <element name="name" type="string"></element> <element name="AFM" type="string"></element> <element name="companyAddress" type="tns:addressType"></element> </sequence> </complexType> <complexType name="applicationDataType"> <sequence> <element name="Description" type="string"></element> <element name="Reason" type="string"></element> <elementname="surface" type="double"></element> <element name="IssueYear" type="string"></element> <element name="applicationDate" type="date"></element> <element name="address" type="tns:addressType"></element> </sequence> </complexType> <complexType name="addressType"> <sequence> <element name="street" type="string"></element> <element name="number" type="int"></element> <element name="ZIPCode" type="int"></element> <element name="city" type="string"></element> </sequence> </complexType> </schema> <?xml version="1.0" encoding="UTF-8"?> <schemaxmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/paradeigma1" xmlns:tns="http://www.example.org/paradeigma1" elementFormDefault="qualified"> <complexType name="applicationType"> <sequence> <element name="personalData" type="tns:PersonalDataType"></element> <element name="companyData" type="tns:companyDataType"></element> <element name="applicationData" type="tns:applicationDataType"></element> </sequence> </complexType> <complexType name="PersonalDataType"> <sequence> <element name="LastName" type="string"></element> <element name="FirstName" type="string"></element> <element name="FatherName" type="string"></element> <element name="phone" type="string"></element> <element name="homeaddres" type="tns:addressType"></element> </sequence> </complexType> Document Modelling

  50. ΟΤΑ Επιχειρησιακή Νοημοσύνη • Παραγωγή Περιεχομένου: • ΕΑΙΤΥ (ΕΜ9 ATLANTIS Group) http://www.cti.gr • Συγγραφείς Θ. Εμμανουηλίδης, Π. Καβάσαλης, Γ. Κούζας, Αθ. Μώραλης, Ζ. Πολιτοπούλου Document Modelling

More Related