ViolaWWW は1990年代初期に開発されたWebブラウザであり、Mosaic が登場するまでは最も人気のあるブラウザであった(ただし、当時の World Wide Web 利用者は限られている)。
Gillies と Cailliau の著書 How the Web was Born[1]では、ViolaWWW の開発の経緯が詳しく描かれている。ViolaWWW を考案したのは、当時カリフォルニア大学バークレー校の学生だった魏培源 である。(以下、ページ数の付記された記述は同書に基づく)
彼は、1989年に HyperCard と出会い、グラフィカルなソフトウェアに興味を持つようになった。しかし、彼は Macintosh を持っておらず、HyperCard は Macintosh でしか動作しなかった(p.213)。アクセスできるものとしてはX端末しかなかったため、そこで動作する Viola の最初バージョンを開発した(1990年)。これは、HyperCard のマニュアルを参考にして、そのコンセプトを X Window System 上に実装したものであった(p.213)。
1991年、Viola 0.8 をリリースし、卒業後も "Berkeley's Experimental Computing Facility" で働きながらさらに Viola の開発を進めた(p.213)。
Pei Wei の次の目標はインターネット上で Viola を動作させることだった。問題は Viola のページをどうやってインターネット上で転送するかだった。そんなとき、彼はティム・バーナーズ=リーの World Wide Web に関する電子メールを読んだ。URL が必要としていたものであることを悟り、バーナーズ=リーに対して X 版のブラウザを開発するつもりであることを知らせた。バーナーズ=リーはこれを歓迎する返事をし、その4日後に Pei Wei はブラウザ ViolaWWW が完成したことを公表した(p.214)
ViolaWWW は World Wide Web の扉を開いたと言えるが、X Window 上でしか動作しないため、NCSA Mosaic には対抗できなかった。World Wide Web の爆発的な普及に貢献したのは Mosaic であった。
1992年に開発された ViolaWWW は、スクリプト埋め込み、スタイルシート、表のレンダリングといった先進的な機能を備えていた。
Viola での文書埋め込み | object タグを使った手法 |
---|---|
<INSERT SRC="a_quote.html"> |
<object type="text/html" data="a_quote.html"> <p>This text will appear for browsers that don't support OBJECTs</p> </object> |
Viola でのスタイルシート | CSS スタイルシート |
---|---|
(BODY,INPUT,P FGColor=black BGColor=grey70 BDColor=grey70 align=left (H1 FGColor=white BGColor=red BDColor=black align=center |
body, input, p { color: black; background-color: #707070; text-align: left; } h1 { color: white; background-color: red; border: solid 1px black; text-align: center; } |
ViolaWWW の場合 | JavaScript の場合 | |
---|---|---|
スクリプト | \class {txtDisp} \name {showTime} \script { switch (arg[0]) { case "tick": set("content"), date()); after(1000, self(), "tick"); return; break; case "init": after(1000, self(), "tick"); break; } usual(); } \width {100} \height {50} \ |
function showTimeInDoc() { var theTime = document. getElementById('theTime'); var tDate = new Date(); theTime.innerHTML= tDate.getHours() + ":" + tDate.getMinutes() + ":" + tDate.getSeconds(); setTimeout("showTimeInDoc()", 1000); } |
Webページへのスクリプト埋め込み | <HTML> <HEAD> </HEAD> <BODY> <P>And, the time now is: <LINK REL="viola" HREF="showTime.v"> </BODY> </HTML> |
<html> <head> <script type="text/javascript" src="showTime.js"> </script> </head> <body onload="showTimeInDoc()"> <p id="theTime"> </p> </body> </html> |
1999年、Eolas Technologies とカリフォルニア大学は、マイクロソフトが同社の特許を侵害しているとして訴えた。その特許とは、Webブラウザに他のソフトウェアをシームレスに組み込む方法を示したものである。2003年には Eolas 側の訴えが認められ、マイクロソフトに5億2,100万ドルの賠償支払いが命じられた。
マイクロソフトは控訴し、その特許が申請される以前に、ViolaWWW が既に同様の技術を実装していたことを示した。また、マイクロソフトは Eolas 側が特許申請の際に意図的に ViolaWWW に関する知識を秘匿したと示唆している。これによって、2005年2月に下級審への差し戻しが行われ、2007年8月に和解が成立した。和解条件の詳細は明らかにされていない。