Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Ακαδημαϊκό έτος 2007 - 2008 Εργαστήριο Προγραμματισμού και Επεξεργασίας Πληροφοριών Εισαγωγή στη γλώσσα MathML Αλεξ Καράκος.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Ακαδημαϊκό έτος 2007 - 2008 Εργαστήριο Προγραμματισμού και Επεξεργασίας Πληροφοριών Εισαγωγή στη γλώσσα MathML Αλεξ Καράκος."— Μεταγράφημα παρουσίασης:

1 Ακαδημαϊκό έτος 2007 - 2008 Εργαστήριο Προγραμματισμού και Επεξεργασίας Πληροφοριών Εισαγωγή στη γλώσσα MathML Αλεξ Καράκος

2 DalaB 2 MathML  Η γλώσσα Mathematical Markup Language (MathML) πρωτοδημοσιεύτηκε τον Απρίλιο του 1998, με την ανακοίνωση του W3C Math Working Group: “Designed as an XML application, MathML provides two sets of tags, one for the visual presentation of mathematics and the other associated with the meaning behind equations”

3 DalaB 3 Εξέλιξη της MathML  Η έκδοση 1.0 ανακοινώθηκε τον Απρίλιο του 1998  Η έκδοση 1.01 ανακοινώθηκε το Ιούλιο του 1999  Η έκδοση 2.0 ανακοινώθηκε τον Ιανουάριο του 2001  Η ανανεωμένη έκδοση 2.0 ανακοινώθηκε τον Οκτώβριο του 2003 (http://www.w3.org/TR/MathML2/)http://www.w3.org/TR/MathML2/  Η έκδοση 3.0 (draft) ανακοινώθηκε τον Απρίλιο του 2007 (http://www.w3.org/TR/2007/WD-MathML3-20070427/)http://www.w3.org/TR/2007/WD-MathML3-20070427/ Περισσότερα: http://www.w3.org/Math/XSL/Overview-tech.htmlhttp://www.w3.org/Math/XSL/Overview-tech.html

4 DalaB 4 Τα Attributes γενικά, προσδιορίζουν πρόσθετες πληροφορίες για το element. Κάθε attribute έχει ένα όνομα και μια τιμή. Π.χ., το element mfrac έχει ένα attribute με όνομα linethickness. Τα elements αναπαριστούν πρότυπα (patterns) για την εμφάνιση εκφράσεων. Π.χ., για ένα κλάσμα γράφουμε mfrac, και για την τετραγωνική ρίζα γράφουμε msqrt Ανατομία μιας έκφρασης MathML Μια έκφραση της MathML αποτελείται από στοιχεία (elements) και ιδιότητες (attributes)

5 DalaB 5 Υπάρχουν 2 τύποι στοιχείων  Τα περισσότερα στοιχεία (elements) έχουν ίδια σημάδια ετικέτες (tags) αρχής και τέλους, όπως και στην ΗTML … –Αυτά τα στοιχεία περιέχουν κείμενο, χαρακτήρες διάφορους ή άλλα στοιχεία.  Ο άλλος τύπος των στοιχείων της MathML είναι ένα στοιχείο της μορφής –Αυτά τα στοιχεία έχουν μόνο μια ετικέτα  Τα στοιχεία δέχονται και ιδιότητες (attributes) –Όταν ένα στοιχείο έχει σημάδι αρχής και τέλους τότε η ιδιότητα πρέπει να βρίσκεται πριν από το σύμβολο > της αρχικής ετικέτας Στα κενά στοιχεία η ιδιότητα προηγείται του συμβόλου />

6 DalaB 6 Παραδείγματα … … Εισαγωγή διαστήματος ίσου με 12 pixels Κεντράρισμα

7 DalaB 7 Βασικά στοιχεία παρουσίασης  – ονομασία, π.χ. μιας μεταβλητής, μιας συνάρτησης, μιας σταθεράς κτλ. –Παράδειγμα: sin παρουσιάζει: sin –Παράδειγμα: x παρουσιάζει: x  – Τελεστής, π.χ. πρόσθεσης, παρένθεση κτλ. –Παράδειγμα: ( παρουσιάζει: ( –Παράδειγμα: ∑ παρουσιάζει:  Αυτό είναι ένα παράδειγμα αναφοράς μιας οντότητας (entity reference). Δηλαδή, είναι μια ειδική μορφή για την παράσταση ειδικών χαρακτήρων. Π.χ. για το άπειρο γράφουμε ∞ και για το ελληνικό άλφα α

8 DalaB 8 Βασικά στοιχεία παρουσίασης  – αριθμός Παράδειγμα: Ποια θα είναι η μαθηματική έκφραση? x – ( 3 + y )

9 DalaB 9 Εισαγωγή MathML σε μια σελίδα  Πρέπει να προσδιοριστεί επακριβώς πότε αρχίζει και πότε τελειώνει το τμήμα της MathML σε μια σελίδα  Το τμήμα της MathML πρέπει να βρίσκεται ανάμεσα στις ετικέτες: και Παράδειγμα: b 2 – 4

10 DalaB 10 Σημαντική παρατήρηση  Υπάρχουν και στοιχεία τα οποία μπορούν να χρησιμοποιήσουν και περισσότερες παραμέτρους για να εκφράσουν πλήρως τη μορφή, όπως: βάσητιμή δείκτη –Δείκτης : βάση τιμή δείκτη βάσητιμή εκθέτη –Εκθέτης : βάση τιμή εκθέτη Παράδειγμα: x 1 x 1 x 1 x 2 x 2 x 2 x 1 2 x 1 2 x 1 2

11 DalaB 11 Παράδειγμα 1 b 2 – 4 ⁢ a ⁢ c

12 DalaB 12 Παράδειγμα 2 x 2 + y 2 = r 2

13 DalaB 13 Άλλα στοιχεία (elements)  Τα στοιχεία της mathML ομαδοποιούνται ως εξής:  Βασικά στοιχεία identifier (ταυτότητα) number (αριθμός) operator (τελεστής) text (κείμενο)  Γενικής παρουσίασης Ομαδοποίηση εκφράσεων κλάσμα δύο εκφράσεων ριζική ποσότητα

14 DalaB 14 Άλλα στοιχεία (elements)  Δείκτες και όρια,, δείκτες κάτω δείκτης άνω δείκτης άνω και κάτω δείκτης  Πίνακες Ορισμός πίνακα γραμμή πίνακα τιμή του πίνακα

15 DalaB 15 Περιεχόμενα των στοιχείων  Το ποιό ενδιαφέρον στοιχείο της MathML είναι το στοιχείο το οποίο επιτρέπει την εφαρμογή μιας συνάρτησης στις παραμέτρους της  Βασικά στοιχεία – περιεχόμενο αριθμός – περιεχόμενο ταυτότητα  Κύρια στοιχεία – αντιστροφή – σύνθεση 2 ή περισσοτέρων συναρτήσεων  Αριθμητικά – διαίρεση – δύναμη του – νι-οστή ρίζα – συζυγής μιγαδικός  Υπολογισμοί και θεωρία συνόλων – μερική παράγωγος – κατώτερο όριο (π.χ. ενός ολοκληρώματος) – ένωση

16 DalaB 16 Παράδειγμα π 1

17 DalaB 17 Παράδειγμα π 1

18 DalaB 18 Παράδειγμα π 1

19 DalaB 19 Παράδειγμα π π 1 Αριστερά του  Δεξιά του 

20 DalaB 20 Παράδειγμα π 1

21 DalaB 21 Παράδειγμα – Σύγκριση π 1 cos π = – 1

22 DalaB 22 Εμφάνιση σε φυλλομετρητή  DOCTYPE και τύποι MIME  Namespaces  Αντικείμενα και εντολές επεξεργασίας  Κάποια φύλλα ύφους (Stylesheet) της MathML Η εμφάνιση κώδικα MathML σ’ ένα φυλλομετρητή απαιτεί κάποιες ειδικές δηλώσεις οι οποίες είναι:

23 DalaB 23 Διαθέσιμοι φυλλομετρητές  Internet Explorer (απαιτούνται πρόσθετα, add-on) Π.χ.: MathPlayer (IE5.5 ή νεότερος για Windows) Techexplorer (IE5 ή νεότερος για διάφορες πλατφόρμες)  Netscape (απαιτούνται πρόσθετα, μόνο για παλαιότερες από την έκδοση 7)

24 DalaB 24 DOCTYPE και τύποι MIME  Υπάρχουν δύο τρόποι για να προσδιορίσουμε τα δεδομένα που θα εμφανιστούν από το φυλλομετρητή:  Με τη βοήθεια τοπικών αρχείων τα οποία θα αναγνωρίζονται από την επέκτασή τους  Επειδή, τα δεδομένα τα οποία μεταφέρονται με το πρωτόκολλο http δεν έχουν όνομα αρχείου γι αυτό, οι φυλλομετρητές χρησιμοποιούν τους τύπους ΜΙΜΕ (Multipurpose Internet Mail Extensions) για τον προσδιορισμό του τύπου

25 DalaB 25 Τύποι MIME  Υπάρχουν 3 είδη αρχείων: –Αρχεία με επέκταση XML τα οποία συμπεριλαμβάνουν κώδικα XHTML –Αρχεία με επέκταση HTML –Αρχεία με επέκταση XSL. Είναι αρχεία XML, με επέκταση.xsl αντί.xml  Ο Netscape, απαιτεί ένα αρχείο XML  Ο Internet Explorer, απαιτεί ένα αρχείο HTML  Πρακτικά, δημιουργούμε ένα αρχείο XHTML, και το ελέγχουμε με τη βοήθεια του τύπου MIME –Στο διακομιστή, χρησιμοποιώντας κάποια scripts, –Στο φυλλομετρητή, χρησιμοποιώντας XSL stylesheets.

26 DalaB 26 DOCTYPE  DOCTYPE είναι μια ειδική δήλωση, στην αρχή ενός αρχείου HTML ή XML ή ΧHTML, η οποία ορίζει τη μορφή του περιεχομένου του αρχείου δηλαδή, ποια έκδοση της γλώσσας σημειώσεων χρησιμοποιείται  Το DOCTYPE χρησιμοποιείται για τον έλεγχο εγκυρότητας(validation) του περιεχομένου και όχι για την αναγνώριση  Ο Internet Explorer δεν απαιτεί την ύπαρξη ενός DOCTYPE, αλλά αν υπάρχει το κατεβάζει (download) και το χρησιμοποιεί  Συμπέρασμα: Στο αρχείο XHTML τοποθετούμε ένα DOCTYPE, και το W3C WG Math προσπαθεί να καταστήσει διαθέσιμο ένα DTD το οποίο θα λειτουργεί σε συνεργασία με το συντακτικό αναλυτή

27 DalaB 27 DOCTYPE ]> Κάποιες τυπικές δηλώσεις DOCTYPE είναι:

28 DalaB 28 Namespaces  Όταν πρέπει να χρησιμοποιηθούν δύο διάλεκτοι σ’ ένα αρχείο XML τότε, δημιουργούνται συγκρούσεις  Στην προκείμενη περίπτωση έχουμε την XHTML και την MathML  Η λύση είναι να χρησιμοποιήσουμε namespaces  Τα namespaces στην XML παρέχουν μια απλή μέθοδο πιστοποίησης των ονομάτων των στοιχείων και των ιδιοτήτων που χρησιμοποιούνται όπως προσδιορίζονται από τις URI αναφορές  Στη γλώσσα XML η αναγνώριση της γλώσσας γίνεται από το URI, έτσι έχουμε: –Για την MathML : http://www.w3.org/1998/Math/MathML –Για την XHTML : http://www.w3.org/1999/xhtml

29 DalaB 29 Namespaces … x + 2 …  Η δήλωση της γλώσσας γίνεται με δύο τρόπους: –Με τη χρήση της ιδιότητας xmlns –Με την πρόσθεση ενός προθέματος (prefix)  Η ιδιότητα xmlns πρέπει να τοποθετηθεί στην πρώτη ετικέτα της δήλωσης της γλώσσας και ισχύει για όλο το κείμενο αυτής της διαλέκτου Παραδείγματα:

30 DalaB 30 Namespaces <html xmlns="http://www.w3.org/1999/xhtml" xmlns:m="http://www.w3.org/1998/Math/MathML"> … x + 2 … Για να χρησιμοποιήσουμε προθέματα πρέπει:  Να συνδυάσουμε ένα πρόθεμα με ένα namespace, με τη βοήθεια της ιδιότητας xmlns:prefix  Να χρησιμοποιήσουμε αυτό το πρόθεμα για να προσδιορίσουμε τα στοιχεία που πρέπει να υπακούσουν σ’ αυτό το namespace. Παραδείγματα:

31 DalaB 31 Namespaces και DOCTYPE <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "xhtml-math11-f.dtd" [ ]> <html xmlns="http://www.w3.org/1999/xhtml" … x + 2 … Επειδή, το URI για ένα namespaces είναι αρκετά μακρύ, πολλές φορές χρησιμοποιείται μια αναφορά οντότητας σε ένα DOCTYPE Παραδείγματα:

32 DalaB 32 Αντικείμενα και εντολές επεξεργασίας  Η εντολή η οποία υποδεικνύει το τμήμα του κώδικα που πρέπει να φορτωθεί και να εκτελεστεί  Μια εντολή επεξεργασίας η οποία χρησιμοποιείται για να ορίσει το πρόσθετο λογισμικό Για την ενσωμάτωση στον Internet Explorer πρόσθετων δυνατοτήτων (add-on) χρειάζονται δύο δηλώσεις:

33 DalaB 33 Αντικείμενα και εντολές επεξεργασίας <OBJECT ID="behave1" CLASSID="clsid:32F66A20-7614-11D4-BD11-00104BD3F987"> Στα Windows χρησιμοποιούμε ένα σύνολο γραμμάτων και αριθμών το οποίο λέγεται class id το οποίο προσδιορίζει μονοσήμαντα το σχετικό κώδικα που πρέπει να εκτελεστεί Η ετικέτα χρησιμοποιεί την ιδιότητα CLASSID για να προσδιορίσει ένα class id: Παράδειγμα:

34 DalaB 34 Αντικείμενα και εντολές επεξεργασίας <OBJECT ID="behave1" CLASSID="clsid:32F66A20-7614-11D4-BD11-00104BD3F987"> Υπάρχουν πολλές εντολές επεξεργασίας με διαφορετικές ιδιότητες Παράδειγμα:

35 DalaB 35 Όλα μαζί !  Να είναι σύμφωνο με την XHTML  Να συμπεριλαμβάνει ένα DOCTYPE  Να περιέχει αντικείμενα (OBJECT) και εντολές επεξεργασίας  Να περιέχει μια δήλωση namespace  Να χρησιμοποιεί ένα πρόθεμα namespace για την MathML Για να δημιουργήσουμε ένα πρόγραμμα το οποίο θα εμφανίζει σωστά και ομοιόμορφα αποτελέσματα σε όλους τους φυλλομετρητές πρέπει :

36 DalaB 36 Όλα μαζί !  Στον Netscape δουλεύει μόνο η μορφή XML  Στον Internet Explorer δουλεύει μόνο η μορφή HTML  Ποια είναι η καλλίτερη λύση?  Τα φύλλα ύφους XSL … Όμως, υπάρχει πάντα το ανυπέρβλητο εμπόδιο των τύπων MIME :

37 DalaB 37 Το φύλλο ύφους της MathML  Προσθέτουμε ένα φύλλο ύφους XSL σ’ ένα αρχείο XML με τη βοήθεια των εντολών επεξεργασίας  Το φύλλο ύφους τοποθετείται στο διακομιστή, μαζί με το αρχικό κείμενο  Το φύλλο ύφους εκτελείται στο φυλλομετρητή για να μετασχηματίσει το αρχικό κείμενο στην τελική μορφή εμφάνισής του Ένα φύλλο ύφους XSL είναι ένα σύνολο προτύπων για το μετασχηματισμό ενός αρχικού κειμένου σε μια νέα μορφή εξόδου

38 DalaB 38 Το φύλλο ύφους της MathML  Να εντοπίσει το φυλλομετρητή του χρήστη και να εμφανίσει το περιεχόμενο της σελίδας ανεξάρτητα αν αυτή είναι XML ή HTML  Να εντοπίσει ποια πρόσθετα (add-ons) έχουν εγκατασταθεί και εμφανίζει το περιεχόμενο των σχετικών ετικετών και τις εντολές επεξεργασίας Η ομάδα του W3C Math έχει δημιουργήσει ένα ειδικό φύλλο ύφους (Universal MathML Stylesheet) το οποίο μπορεί:

39 DalaB 39 Το φύλλο ύφους της MathML <?xml-stylesheet type="text/xsl" href="style/mathml.xsl" ?> Οι εντολές επεξεργασίας του φύλλου ύφους της MathML μπορεί να έχουν τη μορφή :

40 DalaB 40 Το φύλλο ύφους της MathML  Να συμπεριλάβουμε τις εντολές επεξεργασίας του φύλλου ύφους της MathML  Να κάνουμε χρήση της XHTML  Να χρησιμοποιήσουμε namespaces για να προσδιορίσουμε την MathML  Δεν χρειάζεται να χρησιμοποιήσουμε ένα DOCTYPE Για να χρησιμοποιήσουμε το φύλλο ύφους της MathML πρέπει:

41 DalaB 41 Περίληψη  Το πρόγραμμα πρέπει να εφαρμόζει την XHTML  Να περιέχει ένα DOCTYPE  Η MathML πρέπει να βρίσκεται σ’ ένα namespace  Απαιτείται ένα στοιχείο και οι σχετικές εντολές  Να έχει επέκταση XML για τον NS, και HTML για τον IE Τα απαραίτητα στοιχεία για να λειτουργήσει ένα πρόγραμμα με ενσωματωμένο κώδικα MathML είναι: Σημείωση. Ένα πρόγραμμα με ενσωματωμένο κώδικα MathML μετά τον επιτυχή έλεγχο (validation) μπορεί να συνοδεύεται από την ακόλουθη εικόνα:

42 DalaB 42 Περίληψη  Το πρόγραμμα πρέπει να εφαρμόζει την XHTML χωρίς entity  Να συμπεριλαμβάνει τις εντολές επεξεργασίας του φύλλου ύφους της MathML  Η MathML να βρίσκεται σ’ ένα namespace  Μπορούμε να παραλείψουμε το DOCTYPE, το στοιχείο και τις σχετικές εντολές Μια απλούστερη εναλλακτική πρόταση είναι η χρήση του Universal Math Stylesheet, έτσι:

43 DalaB 43 Βιβλιογραφία  What is MathML: http://www.w3.org/Math/ καιhttp://www.w3.org/Math/ http://en.wikipedia.org/wiki/MathML  MathML 2 reference with examples : http://www.zvon.org/xxl/MathML/Output/  Web Technologies II Tutorial MathML http://www.informatik.tu- cottbus.de/~agiurca/tutorials/MathML/index.htmhttp://www.informatik.tu- cottbus.de/~agiurca/tutorials/MathML/index.htm


Κατέβασμα ppt "Ακαδημαϊκό έτος 2007 - 2008 Εργαστήριο Προγραμματισμού και Επεξεργασίας Πληροφοριών Εισαγωγή στη γλώσσα MathML Αλεξ Καράκος."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google