Re: MathML 3成為W3C推薦標準 & 好處雜談


On Oct 26, 2010, at 4:12 PM, KangHao Lu (Kenny) wrote:

> 嗨 大家好,
>
> MathML在不久之前(10月21日)成為了一個新的W3C推薦標 
> 準(REC),似乎有一些新聞報導的樣子[1]。我在台灣 
> Google的朋友看到這篇報導,就說「一個數學式子要用 
> 這麼多char組成也太沒效率了吧~」然後問我看法。恰 
> 好記得之前看到W3C數學工作組的Q&A[2]提到的一些MathML 
> 的優點:
>
> - 因為是XML可以用DOM的API操作
> - 有語意
> - 所以能提供無障礙環境(Accessibility)
>
> 就順手寫了一篇文,貼在後面分享給大家。話 
> 說,HTML5有內建MathML所以就算是不用XML只要用了<math> 
> 標籤就可以用MathML囉[3]。現在Gecko有支援,尚未釋出 
> 的Webkit也有,就不知道Trident什麼時候支援啦。

Opera presto在2007开始支持MathML。:-)

>
> 其實不管數學是什麼格式都好,還是希望有生之年可 
> 以在Web上看到更多的數學文章跟論文,PDF真的是對非 
> Windows使用者來說蠻困擾的,而且現在論文裡用的超連 
> 結也不是很多、、、歡迎大家多多推銷一下MathML,有 
> 什麼建議的文章嗎?
>
> 另外WHATWG似乎討論在HTML5該用LaTex還是MathML討論了很 
> 久,還沒空做個詳盡的考古 :p [4]
>
> [1] (英文) http://www.readwriteweb.com/hack/2010/10/w3c-announces-mathml-3-new-sta 
> .php
> [2] (英文) http://www.w3.org/Math/mathml-faq#syntax

> [3] (英文,徵求翻譯!) http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28H 
> TML5%29#Elements
> [4] http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2006-June/thread.html#6624

>
> -- 附文 --
>
> 我對MathML不熟 隨便講講
>
>
> 第一件事就是反正MathML也不是給人看或是寫的 主要還 
> 是機器寫的吧
> 就像WikiText用
>
> a
> (斷行)
> b
>
> 來代表
> <p>a</p>
> <p>b</p>
> --
> == Test == 代表 <h2>Test</h2>
> --
> [http://www.example.com/ example] 代表 <a href="http:// 
> www.example.com/">
> example</a>
>
> 你也可以說HTML很冗長啊 不過反正就是給瀏覽器看的
> 反正也是會有很多轉換的工具吧
> 我曾經提到一個 LaTex2MathML的工具 -> http://math.etsu.edu/ 
> LaTeXMathML/ (目前只能用Firefox開 之後就可以用Chrome跟 
> Safari啦)
>
> 如果你問說為啥瀏覽器不直接實作LaTex 則我不太清楚  
> 可能是因為語法差太多吧
> 另外就是LaTex如果你誇號(\test{})不關 系統是不讓你輸 
> 出的 而會die
> Web/HTML是不會有這種事的 如果某個做網頁的人輸出破 
> 爛的HTML code然後
> 瀏覽器開不起來 他只會叫使用者換瀏覽器而已
>
> 在HTML有叫做tagsoup的自動修復機制
> 在HTML5裡的MathML應該也有提到MathML的修復機制 而不是 
> 不能顯示它
>
>
> 另一方面跟新聞連結提到的連結裡面的後一個例子有 
> 關
> 總之 簡單來說 他就是強迫MathML的使用者在寫
> 5 * 2 + 3 * 1 的時候要誇號 即 (5 * 2) + (3 * 1)
>
> 這有什麼好處呢?
>
> 首先以下大概是對的
> 「在廣大的數學環境下 自動推斷誇號在哪是不可能 
> 的」
> 因為不同領域的數學家根本就有可能把同一個算子用 
> 在不同的地方
> 這本身就有某種矛盾性 絕對不可能有一個中心控管機 
> 制排列所有算子的排序
> 這跟程式語言是不同的 程式語言(像是C)通常都有一個 
> 標準跟標準算子排序
> 數學家每天都在發明符號 不可能會同意某個標準
> 而且每天吵 ☉ 跟 x 哪個優先也是很無聊
>
> 強迫有刮號總是存下比較多的資訊 減少矛盾性
> 存下比較多資訊比較好這種事大家都越來越懂了 像是 
> 以前的書商就笨笨的 存PDF
> 現在PDF轉不出字來做不出電子書就是一個很頭的大問 
> 題
> 存InDesign原始檔或是.doc原始檔
> 都比前者好 因為PDF有的資訊就是比較少(某方面來說)
>
> 那有誇號的好處是什麼呢?
>
> 比如說 (2 + 3) - (4 + 2) 有誇號的資訊的話 你就可以讓 
> 使用者顯示成:
>
>       2 + 3 - (4 + 2)   (可能用某種CSS) 或是
>
>       2+3 - 4+2         (說不定哪個國家就是這樣寫的) 或 
> 是
>
> (用講的) 2 加 3 減 括號 4 加 2 括號   或是
>
> (用講的) 2 加 3 減 (停頓) 4 加 2      甚至是
>
> (用講的) A 是 2 加 3; B 是 4 加 2; 這是 A 減 B
>
>
> 因為數學符號是被設計成拿來看的 所以某些情況下會 
> 對視障很吃力
> 而保留全部的資料(誇號)對這方面的的應用很有幫助
>
> (我知道這很難啦 像是HTML的<img src=... alt="這張圖片解 
> 釋..." />
> 就是當視障看不到 圖片時唸給他聽的東西 這種功能 
> 或許也是會被批評為很多餘)
>
> 現在HTML5的方向還蠻強調媒介(視覺、聽覺)中立性的
> 比如說<i>就不解釋為斜體 而是「另一種*腔調*,像是 
> 夢境等等」
> 而MathML跟這方面的方向還蠻合的
>
>
> 此致
> Kenny
>

Regards,

Zi Bin Cheah / 谢子斌

Web Evangelist
/ Developer Relations / Site Compatibility / Products Group /

Opera Software ASA, Oslo, Norway
+ 47 23 69 25 81 / twitter: zibin

Received on Tuesday, 26 October 2010 14:44:30 UTC