# ViolaWWW

ViolaWWW is a discontinued web browser, the first to support scripting and stylesheets for the World Wide Web (WWW). It was first released in 1991/1992 for Unix and acted as the recommended browser at CERN, where the WWW was invented, but eventually lost its position as most frequently used browser to Mosaic.

## Viola

Released in 1992, Viola was the invention of Pei-Yuan Wei, a member of the Experimental Computing Facility (XCF) at the University of California, Berkeley. Viola was a UNIX-based programming/scripting language; the acronym stood for "Visually Interactive Object-oriented Language and Application".
Pei's interest in graphically based software began with HyperCard, which he first encountered in 1989. Of that, Pei said, "HyperCard was very compelling back then, you know graphically, this hyperlink thing, it was just not very global and it only worked on Mac... and I didn't even have a Mac". Only having access to X terminals, Pei, in 1990, created the first version of Viola for such terminals: "I got a HyperCard manual and looked at it and just basically took the concepts and implemented them..."
Pei released Viola 0.8 in 1991.

## History of ViolaWWW

After graduating, Pei developed Viola further while working with the XCF and startups. Later, he would be funded by O'Reilly Books, the technical publisher, which used the software to help demonstrate its Global Network Navigator site. His major goal was to create a version of Viola for the Internet:
   X-Window [sic] was a Unix-based system so it had TCP/IP built in and the Internet was a logical step. The question was how to transport his Viola pages across the Internet. He was on the verge of an independent invention of networked hypertext. 'And that's when I read Tim's e-mail about the World Wide Web' he explains. 'The URL was very, very clever, it was perfectly what I needed. He dropped Tim a line saying that he was thinking of writing a browser for X. 'Sounds like a good idea,' said Tim in a reply posted to www-talk on 9 December [1991]. Four days later, Pei Wei told www-talk that he had made a browser.
Released in 1992, ViolaWWW was the first browser to add extended functionality such as embedded scriptable objects, stylesheets, and tables. Early versions were received well at CERN. Ed Krol also highlighted the browser in his popular 1992 text, Whole Internet User's Guide and Catalog.
As ViolaWWW developed, it began to look more like HyperCard:
   It had a bookmark facility so that you could keep track of your favourite pages. It had buttons for going backwards and forwards and a history feature to keep track of the places you had been. As time went on, it acquired tables and graphics and by May 1993 it could even run programs.
ViolaWWW was based on the Viola toolkit, which is a tool for the development and support of visual interactive media applications, with a multimedia web browser being a possible application. Viola ran under the X Window System and could be used to build complex hypermedia applications with features like applets and other interactive content as early as 1992.

### Firsts

Viola was the first web browser to have the following features:
* client-side document insertion, predating frames, or syndication via JavaScript output writing, which are used commonly today.
| Viola-style document embedding | Object method |
| <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> |
* a simple stylesheet mechanism used for inserting style information such as fonts, color and alignments into a document. This was implemented in Viola well before CSS was developed in 1998:
| A viola-style stylesheet | A CSS stylesheet |
| (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; } |
* a sidebar panel used for displaying "meta" information, intra document navigational links, and other information, similar to (but not as sophisticated as) features found in several modern browsers.
* a scripting language that can be accessed from an HTML document, such that an HTML document can embed highly interactive scripts/applets. This can be seen as the precursor to JavaScript and embedded objects.
| | ViolaWWW method | JavaScript equivalent |
| Scripting | \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 date = new Date; theTime.innerHTML = date.getHours + ":" + date.getMinutes + ":" + date.getSeconds; setTimeout(showTimeInDoc, 1000); } |
| Embedding a script into a web page | <HTML> <HEAD> </HEAD> <BODY> 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">&nbsp;</p> </body> </html> |
* Forms

## Competing against Mosaic

While ViolaWWW opened the door to the World Wide Web, its limitations, including it only being implemented on the X Window System, meant it could not compete with Mosaic, the browser which brought the Web into the mainstream. Among other things, Mosaic was easier to install on the computers most people were using. Originally developed for UNIX, Mosaic was soon ported to Microsoft Windows, a platform on which ViolaWWW never ran.

## ViolaWWW in patent lawsuits

In 1999, Eolas Technologies and the University of California filed suit in the US District Court for the Northern District of Illinois against Microsoft, claiming infringement of U.S. patent 5,838,906, (covering browser plugins) by the Internet Explorer web browser. Eolas won the initial case in August 2003 and was awarded damages of $521 million from Microsoft. The District Court reaffirmed the jury's decision in January 2004.
In March 2005, an appeals court directed that there be a retrial, overturning a decision that Microsoft pay $521 million in damages. The appeals court said that the initial ruling had ignored two key arguments put forward by Microsoft. Microsoft had wanted to show the court that ViolaWWW was prior art, since it was created in 1993 at the University of California, a year before the key patent were filed. Microsoft had also suggested that Michael David Doyle, Eolas' founder and a former University of California researcher, had intentionally concealed his knowledge of ViolaWWW when filing the patent claim. Microsoft subsequently settled with Eolas, in August 2007, without a retrial. Eolas continued to file suits against dozens of other technology companies.
In February 2012 a Texas jury found that two of Eolas' patents were invalid after testimony from several defendants including Tim Berners-Lee and Pei-Yuan Wei, credited as creator of the Viola browser. The testimony professed that the Viola browser included Eolas' claimed inventions before the filing date (September 7, 1993). There is "substantial evidence that Viola was publicly known and used" before the plaintiffs' alleged conception date, it added. The ruling effectively ended a pending lawsuit against 22 companies including Yahoo, Google, and many online retailers.