Informatii tehnice aditionale. Pentru un prim sumar al foii de stil consultati Pagina Sumar.
== Foile de stil au fost actualizate ultima oara: Joi 26 iunie 2003 15:52:02 CEST ==
La momentul curent putine browsere au suport "nativ" pentru MathML si nici unul nu are suport nativ pentru partea de Continut MathML. Totusi Mozilla si Amaya au suport bun pentru Prezentare MathML si pentru celelalte browsere exista un domeniu de extensii care vor interpreta MathML (in particular, WebEQ si MathPlayer de la Design Science si Techexplorer de la IBM).
Principalul dezavantaj al utilizarii unei extensii de la o a treia parte
pentru interpretarea MathML intr-o pagina web este ca necesita marcaj
specific pentru specificarea interpretarii extensiei (cum ar fi
<applet> pentru appleturi Java, <embed>
pentru module ai <object> pentru extensii Microsoft
Behavior). Utilizarea unui asemenea marcaj leaga documentul de o platforma
specifica, in timp ce idealul publicarii informatiei pe web este ca ea ar
trebui sa fie accesibila tuturor utilizand un domeniu de unelte. Prezentam
aici o propunere de mecanism pentru utilizarea limbajului de transformare
XSLT pentru a evita aceste neajunsuri si a permite fisierelor XML care se
conformeaza Recomandarilor XHTML
si MathML sa fie interpretate pe
un domeniu larg de browsere, fara a avea marcaj specific browserului in
document. Documentul necesita doar o singura instructiune de procesare legand la foaia de stil
descrisa aici. Foaia de stil transforma fisierul XML furnizat, adaugand orice
marcaj este necesar pentru interpretarea MathML in browserul curent si
transmite documentul rezultat browserului pentru interpretare. In mod clar
aceasta necesita ca browserul sa suporte transformari XSLT, care inseamna ca
este necesar un browser relativ now, totusi versiunile curente ale (cel
putin) Internet Explorer, Netscape si Mozilla suporta toate XSLT, asa ca in
timp ce suportul XSLT nu este universal el este, sau va fi in curand,
disponibil pe majoritatea browserelor PC.
Pentru a utiliza aceste foi de stil trebuie sa adaugati o linie cum ar fi
urmatoarele la documentul dumneavoastra, inainte de elementul de top
<html>.
<?xml-stylesheet type="text/xsl" href="mathml.xsl"?> <?xml-stylesheet type="text/xsl" href="../XSL/mathml.xsl"?>Foaia de stil
mathml.xsl va interpreta documente continand orice
parte a MathML, incluzand Elemente Continut. Daca documentul nu contine
nici-un Continut MathML, atunci ca o alternativa se poate lega la o foaie de
stil usor mai simpla:
<?xml-stylesheet type="text/xsl" href="pmathml.xsl"?> <?xml-stylesheet type="text/xsl" href="../XSL/pmathml.xsl"?>
Aceasta evita incarcarea XSLT-ului necesar pentru transformarea Continutului MathML in favoarea Prezentarii MathML care este necesar pentru afisarea Continutului MathML in anumite platforme. Cele mai multe exemple prezentate aici vor utiliza aceasta a doua foaie de stil incat aceasta este suficienta pentru a demonstra capacitatile de interpretare ale unor sisteme variate.
In mod normal foaia de stil va transforma documentul de intrare pentru utilizarea unui interpretor MathML potrivit, depinzand de browserul utilizat si orice extensii ale browserului pe care le detecteaza. Ea incearca o lista de posibilitati si o selecteaza pe prima care apare a fi instalata.
Se poate controla acest comportament prin adaugarea unei posibilitati de interpretare la inceputul listei de interpretari de incercat. Aceasta se obtine prin adaugarea unui atribut din spatiul de nume al preferintelor MathML la elementul cel mai de sus de la inceputul documentului. De exemplu:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html pref:renderer="css">
</html>
din fisierul exemplu pmathml-css specifica ca interpretarea "css" este de preferat (in dauna lui Techexplorer sau MathPlayer care ar fi putut altfel sa fi fost alese in Internet Explorer).
Exista totusi imbunatatiri de facut pentru aceste foi de stil si documentatie...
In particular codul JavaScript in foaia de stil pmathml-css nu este foarte robust in prezent.
Suport pentru mai multe browsere este in particular important, incluzand portarea codului JavaScript/CSS din Internet Explorer la Netscape pentru a da o alternativa buildurilor Mozilla si Netscape care nu au suport MathML.
| OS | Browser | XSLT | MathML Renderer | ||||
|---|---|---|---|---|---|---|---|
| Native Presentation | MathPlayer Behaviour | Techexplorer Behaviour | Techexplorer Plugin | CSS/Java Script | |||
| Windows | IE x, x < 5.0 | no | no | no | no | no | no |
| IE 5.0 | wd-xsl | no | no | no | yes | no | |
| IE 5.5 | wd-xsl | no | yes | yes | yes | no | |
| IE 5.0/MSXML3 | yes | no | no | no | yes | no | |
| IE 5.5/MSXML3 | yes | no | yes | yes | yes | yes | |
| IE 6 | yes | no | yes | yes | yes | yes | |
| Netscape x, x <= 6.0 | no | no | no | no | no | no | |
| Netscape 6.1 | yes | no | no | no | yes | no | |
| Netscape 7.0 | yes | yes | no | no | no | no | |
| Mozilla 0.9.4 | yes | no | no | no | no | no | |
| Mozilla 0.9.4/MathML | yes | yes | no | no | no | no | |
| Mozilla 0.9.5+ | yes | yes | no | no | no | no | |
| Amaya | no | yes | no | no | no | no | |
| Opera | no | no | no | no | no | no | |
| Lynx | no | no | no | no | no | no | |
| Macintosh | IE 5.0 | wd-xsl | no | no | no | yes | no |
| Netscape x, x <= 6.0 | no | no | no | no | no | no | |
| Netscape 6.1 | yes | no | no | no | yes | no | |
| Mozilla | yes | no | no | no | no | no | |
| Opera | no | no | no | no | no | no | |
| Lynx | no | no | no | no | no | no | |
| Linux / Unix | Netscape x, x <= 6.0 | no | no | no | no | no | no |
| Netscape 6.1 | yes | no | no | no | yes | no | |
| Netscape 7.0 | yes | yes | no | no | no | no | |
| Mozilla 0.9.4 | yes | no | no | no | no | no | |
| Mozilla 0.9.4/MathML | yes | yes | no | no | no | no | |
| Mozilla 0.9.5+ | yes | yes | no | no | no | no | |
| Amaya | no | yes | no | no | no | no | |
| Opera | no | no | no | no | no | no | |
| Lynx | no | no | no | no | no | no | |
Majoritatea codului in aceste foi de stil a fost scrisa de David Carlisle. Contributiile altora sunt recunoscute in locurile corespunzatoare din interiorul surselor.
Codul este facut disponibil cu urmatoarele conditii:
Copyright ? David Carlisle 2001, 2002. Utilizarea si distribuirea acestui cod sunt permise conform termenilor W3C Software Notice and License.
Cateodata este inconvenient sa se aranjeze ca un document sa fie generat intotdeauna cu un link relativ la foaia de stil corect si restrictiile de securitate ale Internet Explorer genereaza probleme la utilizarea unui URI absolut la (de exemplu) copia de pe siteul W3C.
Este posibil sa se utilizeze sintaxa XSLT "elementul literal rezultat ca foaie de stil", si utilizarea documentului insusi ca o foaie de stil. Aceasta forma nu poate face transformarea Continut in Prezentareceruta de Mozilla, asa ca ar trebui sa fie utilizata numai pentru documente utilizand prezentare MathML, deasemenea ea genereaza la momentul curent o atentionare despre elemente XSLT nesuportate in Amaya. Totusi pentru Internet Explorer, Mozilla si Netscape, se poate urma exemplul pmathml-self-style.xml, ale carui parti principale sunt aratate mai jos.
<?xml-stylesheet type="text/xsl" href="pmathml-self-style.xml"?> <html xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xsl:version="1.0" xmlns="http://www.w3.org/1999/xhtml" > <head><title>Presentation MathML</title> <object id="mmlFactory" classid="clsid:32F66A20-7614-11D4-BD11-00104BD3F987"> </object> <xsl:processing-instruction name="import" >namespace="m" implementation="#mmlFactory"</xsl:processing-instruction> </head> <body> <h1>Presentation MathML</h1> .... <m:math mode="display"> <m:mrow> <m:msqrt> ..... </m:mrow> </m:math> </body> </html>
Pentru a utiliza acest mecanism:
classid="clsid:0E76D59A-C088-11D4-9920-002035EFB1A4" ar
trebui sa functioneze pentru Techexplorer. (Aceasta versiune de foaie de
stil nu poate suporta optiunile diferite simultan.).xsl:processing-instruction ar trebui adaugat
dupa cum s-a aratat, pentru a genera o instructiune de procesare pentru
functionarea cu Microsoft Behaviors.Pentru Continut MathML, Mozilla necesita o transformare la Prezentare, dar in toate celelalte cazurile ale interpretarii MathML utilizand foaie de stil, exista foarte putina "transformare" care are loc; principalul proces este o transformare identitate, cu cateva optiuni aditionale, in principal pentru a activa mecanisme Internet Explorer Behavior.
Daca aveti acces la configurarea serverului atunci o alternativa la utilizarea foii de stil este sa se produca fisierul in XHTML, cu obiectul aditional si instructiunile de procesare necesare lui Internet Explorer. Totusi se serveste fisierul ca tip de continut text/html daca clientul cerand pagina este Internet Explorer (si text/xml in caz contrar). Prin servirea fisierului ca HTML, Internet Explorer va utiliza interpretorul sau HTML si astfel declanseaza mecanismul behavior. Fara a necesita o foaie de stil pentru a executa o transformare XHTML la HTML.
Daca se incearca acest mecanism trebuie avute in vedere ghidurile de compatibilitate din Recomandarea XHTML 1.0 care dau indrumari despre cum sa se evite optiunile XHTML care pot cauza probleme in browserele HTML.
$Id: Overview-tech.html,v 1.9 2003/06/26 13:55:31 mf Exp $
Aceasta este o traducere din limba engleza; versiunea originala: http://www.w3.org/Math/XSL/Overview-tech.html
Versiunea in limba romana poate contine erori. Versiunea engleza este singura
versiune normativa.
Traducator