World Wide Web & HTML

From pizza to protein databases, the World Wide Web helps you to quickly find information on the Internet. But to prepare documents for WWW browsing, you must be familiar with the Hypertext Markup Language (HTML). Douglas examines HTML coding techniques, while Dan Connelly adds a note on future directions HTML may take.


December 01, 1994
URL:http://www.drdobbs.com/web-development/world-wide-web-html/184409358

Figure 1


Copyright © 1994, Dr. Dobb's Journal

Figure 1


Copyright © 1994, Dr. Dobb's Journal

DEC94: World Wide Web & HTML

World Wide Web & HTML

Preparing documents for online presentation

Douglas C. McArthur

Douglas is a systems integration engineer for BioData Inc. He can be reached at [email protected].


The World Wide Web--a network of computers providing information and resources on the Internet--grew out of a hypertext project started at CERN, the European Laboratory for Particle Physics. As a resource for finding information and services ranging from protein-databank searches to pizza deliveries, the World Wide Web (WWW) has become a centerpiece of the information superhighway. To access information on the WWW, you use hypertext-based "browser" applications that lead you to the desired documents, then display that information on the screen.

At the heart of the WWW is a platform-independent page-description language called "Hypertext Markup Language" (HTML). Based on the Standard Generalized Markup Language (SGML), HTML lets you prepare documents for WWW browsing by embedding control codes in ASCII text to designate titles, headings, graphics, and hypertext links, making use of SGML's powerflinking capabilities. HTML is still evolving. The specification is currently at Document Type Definition (DTD) Level 2, which includes support for forms within standard hypertext documents. (The DTD describes the logical structure of possible document instances.) Work is also underway for DTD Level 3, which is focusing on a "scalable HTML." Undoubtedly, additions to HTML such as those described in the accompanying text box entitled, "Evolution of the HTML 3.0 Spec," will continue to be made, especially as commercial WWW browsers and servers become available.

An understanding of HTML is critical to properly preparing documents for the WWW. There are, of course, a variety of sophisticated freeware and commercial tools designed to simplify this process. SoftQuad's (Toronto, ON) HoTMetal Pro, for instance, is a word processor for Mosaic and other WWW browsers that shields you from coding, then checks that documents are valid HTML. Likewise, Avalanche's (Boulder, CO) FastTag, a filter for use with word processors such as WordPerfect for Windows and Microsoft Word for Windows, lets you create documents normally, then execute a conversion macro to transform them into HTML format. Quarterdeck's (Santa Monica, CA) yet-to-come Normandy project promises similar capabilities.

Still, most "automated" HTML tools are narrowly focused for specific tasks (such as translating previously created documents into HTML format) and generally not suited for robust WWW development. For instance, you would not want to create a WWW "home page"--the default hypertext document you see when you first enter the WWW--with a word processor, then translate it to HTML. In short, being familiar with HTML coding techniques is fundamental to WWW development. Thankfully, a wealth of information and tutorials are available to the HTML designer online. For instance, the NCSA provides the "Beginner's Guide to HTML" (http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/d2-htmlinfo.html), while experienced HTML coders will find Michael Grobe's "HTML Quick Reference" (http://kuhttp.cc.ukans.edu/lynx_help/HTML_quick.html) valuable. In addition, James Tilton's "Composing Good HTML" should be required reading (http://www.williamette.edu/html-composition/strict-html.html). In this article, I'll cover the basics of HTML coding, then present the complete HTML source (see Listing One) to the live WWW home page shown in Figure 1 (from BioData, the company where I work). You can find the BioData home page on the WWW at http://www.biodata.com/. With a grasp of the HTML fundamentals presented here and the HTML source to the BioData home page, you can create your own customized home page.

WWW Browsers

There are numerous free (and a few commercial) hypertext browsers, the most well-known being Mosaic, from the National Center for Supercomputing Applications, a graphical, hypermedia front end to the Internet. Other graphical browsers include HaL Software's (Austin, TX) Olias Browser and Spyglass's (Champaign, IL) Enhanced NCSA Mosaic 2.0, which supports links to Adobe Acrobat 2.0, OLE 2.0, and AppleEvents. Likewise, Mosaic Communication Corp. (Mountain View, CA) has recently released its Mosaic NetScape browser for Windows, Macintosh, and the X Window System. At the other end of the spectrum is Lynx, a popular text-based browser for UNIX and DOS developed at the University of Kansas.

Obviously, all WWW browsers aren't created equal. For instance, the X Windows version supports forms, while the current stable Macintosh version does not (alpha releases of NCSA Mosaic for the Mac do support forms, however). Lynx, on the other hand, supports forms, but can't display graphic images. Note that the freely distributable WWW browsers are regularly updated and usually available via anonymous ftp as soon as they are released. Keep the ftp sites handy and check them from time to time. (If you're using Mosaic, put them in your "hotlist" of documents that you can access via a quick menu selection.)

The capabilities of WWW browsers should be kept in mind when designing HTML pages. For instance, if you create a fancy GIF image as a hypertext link, remember that some users will likely be using text-based browsers like Lynx. Consequently, they'll probably see only a noninformative [IMAGE] label on their screen. (There's an easy way around this one though, as I'll discuss shortly.) With a little forethought, however, your HTML documents can retain both aesthetics and functionality across a variety of WWW browsers.

WWW Servers

WWW server software has been ported to a number of platforms, ranging from UNIX to Macintosh. For this discussion, I will focus on UNIX-based servers. Two freely distributable UNIX-based WWW servers are widely available, one from NCSA the other from CERN. Although both have the same basic functionality, I prefer the CERN server because it provides better security, easier configuration, and has a wealth of online documentation available. In addition, Mosaic Communication has released two versions of its Mosaic NetSite server, one for nonsecure communications, and the other secure "commerce" transactions that require encryption and authentication.

Currently, many of the advanced features of HTML coding, such as image mapping and utilizing forms data, require modification of server-configuration files. Thus, in most cases, the system administrator has yet another hat to wear, that of "webmaster." Of course, the webmaster need not have root privileges. If security is an issue, I suggest creating a group "www," adding the appropriate users, and setting group file permissions on WWW configuration files appropriately.

Writing HTML

If you are familiar with UNIX text-formatting languages such as troff, you can easily adapt to HTML coding. HTML tags, embedded within the body of the text, are used to define a document and guide its display. Example 1(a), for instance, produces the output in Example 1(b). Tags are bracketed by less-than (<) and greater-than (>) symbols. The slash (/) signifies an end-tag. Different tags can be embedded to combine type styles. Lines of text are automatically concatenated when displayed. Some common HTMLtags are listed in Table 1.

All text following a tag is acted upon, up to the occurrence of the end-tag. A missing slash can have interesting effects! A few tags, like <P>, do not require an end-tag, since the tag does not act upon anything else.

Hypertext links, graphics, or both text and graphics can be defined as a link. Note in Example 2, for instance, that the <IMG_> tag requires an attribute (SRC), which defines the graphic file.

The majority of HTML tags are commands for text formatting. The exceptions are for creating hypertext links, inline graphics, and forms. Let's first examine creating a hypertext link, or "anchor," which points to other documents; see Example 3(a). The anchor tag is different from most formatting tags in that it includes an attribute. In this case the attribute is a hypertext reference (HREF) to another document. The entire text between the <A_> and </A> becomes the link. Also note that <IMG_> is one of the few tags, like <P>, that does not require an end-tag. Additional attributes that can be used with the <IMG_> tag are ALIGN and ALT. You can use the ALIGN=BOTTOM attribute to display text at the bottom of an inline image; other values for the ALIGN attribute are TOP and MIDDLE.

If graphics cannot be displayed, the ALT attribute will allow you to display an alternate text label; see Example 4(a). Remember that GIF images can be large and demand a lot of network bandwidth to download. If you have a large graphic image, create a smaller version of the image that is a link to the large image. For instance, in Example 4(b) I've made a hypertext link to a GIF image instead of another HTML document. This is perfectly valid, as most browsers will automatically recognize the file type (based either on the .GIF extension, or via MIME type) and invoke the appropriate viewer. Note also that the smaller image, which has been defined as a link, will be displayed as an inline image, while the larger image will probably be displayed by an external viewer or in a separate window. If the browser does not recognize the file type or does not know of an appropriate "helper application" to invoke to display the image, you will be prompted for a filename and the data will be downloaded to a file.

Uniform Resource Locators

Up to this point, I've demonstrated only HTML documents and GIF images as hypertext reference (HREF) values. However, any uniform resource locator (URL) can be a valid HREF. URLs, like that in Example 5(a), let you specify how to reach an Internet resource. The exact form of URLs depends upon whether you are using WWW, ftp, Telenet, Gopher, and so on. For the WWW, a URL begins with the name of the server you want to access (http://www.biodata.com), followed by the path name of your HTMLpage (/douglas/people/douglas.html).

Because any URL can be used, HTML has the flexibility to reference many types of data. A URL can point to more hypertext, an image, a sound file, an MPEG animation sequence, or even a Microsoft Word document. Remember, however, that not every browser will be capable of handling that particular file type. For instance, clicking on a link pointing to a Microsoft Word document using NCSA Mosaic for the Macintosh will successfully launch Word and display the document. However, someone using NCSA Mosaic for X Windows will be out of luck. In short, stick to standard file types; see Table 2.

A URL can also specify one of many types of protocols. For instance, to create a link that will download a file instead of trying to view it, use a URL specifying file-transfer protocol (FTP) instead of HTTP, as in Example 5(b). In fact, an HREF value is not limited to being a URL as currently defined. Some of the more advanced (and impressive) HTML coding tricks are possible via URL overloading, or tacking extra information onto the end of a URL.

Back to Graphics

One example of URL overloading is demonstrated in image mapping. By clicking on different parts of a mapped image, you can access other HTML pages, just like clicking on a hypertext link. An image map is defined in HTML as in Example 6. Note the added attribute ISMAP in the <IMG_> construct and the HREF value used. While this looks like a valid URL, it is interpreted differently. The HREF in Example 6 is being used to execute a program called "imagemap" with the argument "picture." (Provided the server is configured with http://host.domain.com/cgi-bin as the directory for executable files.) The imagemap program returns the URL corresponding to the x,y coordinates of the point where the GIF image was clicked, based on the map file referenced by the argument picture.

Image maps with icons or buttons for certain subjects, departments, and the like add a nice touch to home pages. You can also add the capability of zooming in on images by linking an area of a mapped image to an enlarged image (which could be another image map).

Don't forget to provide a separate HTML document with text-only links for those users that can't view your mapped image. For details about configuring a NCSA WWW server to handle image mapping (creating the map files and the like), refer to http://winter- mute.ncsa.uiuc.edu:8080/map-tutorial/image-maps.html.

Forms

Before the advent of HTML forms, information flow via the WWW was unidirectional. Forms provide the means to collect and act upon data entered by the end user. They also open up a number of possibilities for online transactions, such as requesting specific news articles or ordering pizza (Pizza Hut's PizzaNet, http://www.pizzahut.com/, lets you do this).

A number of gadgets are available for building forms, including text boxes, radio buttons, and check boxes. A user can enter text, select items from a list, check boxes, and then submit the information to the server. A program on the server then interprets the data and acts upon it appropriately, either by returning information in hypertext form, downloading a file, or (in the PizzaNet example) electronically notifying the local Pizza Hut restaurant of your order.

All forms begin with the construct: <FORM METHOD=POST ACTION="cgi-bin/program">_</FORM>. The ACTION should be a URL pointing to the program which will be processing the data collected by the form. Do not forget the attribute METHOD=POST, since use of METHOD=GET, the default attribute, should be avoided, especially if a large amount of data could potentially be submitted using the form.

Listing Two "Prototypical HTML forms" shows how the <INPUT_>, <TEXTAREA_>, and <SELECT_> tags and their attributes are used to create a form. Note that one special <INPUT_> attribute must always be included in your form: <INPUT TYPE=SUBMIT VALUE="Continue."> This button causes the data entered into the form to be transmitted to the server program specified by the <FORM ACTION_> attribute. The VALUE attribute simply defines the name of the button, usually Continue, Submit, or Do It. For more on HTML-form coding, see http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/fill-out-forms/overview.html.

Common Gateway Interface

Generating forms in HTML is only half the battle. The challenge is how to decode the data submitted from the form. The data is passed to an executable program in much the same way as x,y coordinates are passed to the imagemap program described previously. Programs that use data submitted from an HTML form must conform to the CGI (Common Gateway Interface) specification. Any language that produces executable files is suitable for creating a CGI. The most popular languages are C/C++, Perl, sh, and csh. Information on the CGI specification can be found at http://hoohoo.ncsa.uiuc.edu/cgi/interface.html.

On a UNIX server, your CGI program will receive the form data via stdin--provided that the METHOD=POST attribute was used. By the same token, output produced by the CGI program sent to stdout will be sent back to the browser. If the METHOD=GET attribute was used (not recommended) all the form data is encoded in the environment variable QUERY_ STRING. Obviously, this would not work for large strings of data.

Tools

A number of tools exist to facilitate creation of HTML documents--macro libraries for emacs, for instance--that have shortcuts for all the HTML tags. On the Macintosh, there's the BB-Edit editor, which lets you highlight blocks of text and select an HTML formatting command from a pull-down menu. BBEdit will then automatically insert the start-tag and end-tag in the proper places. Another useful tool is rtf2html, which converts rich-text documents to HTML, preserving type styles, footnotes, graphics, and the like. For a list of useful HTML tools, refer to http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/faq-software.html and http://info.cern.ch/hypertext/WWW/Tools/ Overview.html.

Server Statistics

It's nice to know that after working long hours producing HTML documents, someone is actually reading them. Most servers produce a log file which records when pages are accessed and by what Internet address. Programs are available that can analyze WWW-server log files and produce reports showing which pages are accessed the most and which Internet domains access your server the most. Kevin Hughes' getstats program, for example, produces at least 12 different reports and bar graphs showing WWW server accesses. For information on getstats, refer to http://www.eit.com/software/getstats/getstats.html.

Things to Come

As the number of WWW servers on the Internet continues to increase, so will the amount of information and services available. At the same time, the HTML specification will evolve, as will the capabilities of WWW browsers and servers. In the future, we'll continue to see exciting developments from the commercial sector, as companies rush to provide WWW servers and browsers that are faster, more robust, and more feature filled than the freely distributable versions that paved the way. Despite rapid changes, it is my hope that the World Wide Web will remain the collaborative environment that it is today.

Evolution of the HTML Spec

Dan Connelly

Dan, the author of the HTML 2.0 spec, is an engineer at HaL Software. He can be contacted at [email protected].

The HTML language was first specified in 1991 by Tim Berners-Lee of CERN as part of the World Wide Web initiative to facilitate communication among high-energy physicists. The specification continued to evolve quickly to meet the requirements of the Web community. In 1993, I wrote the first SGML Document Type Definition (DTD) describing HTML and started assembling a suite of documents for testing Web browsers.

At the beginning of 1994, the HTML spec was out of date and no longer reflected current practice. I drafted a revision that reflected many of the enhancements from NCSA Mosaic, called it the HTML 2.0 specification, and began organizing a review committee. The first meeting was at the WWW conference at CERN in May. We met again at the IETF (Internet Engineering Task Force) meeting in Toronto to form the HTML Working Group. The HTML 2.0 spec is an attempt to put a boundary around the current usage of HTML. It is out as a draft for review (see http://www.hal.com/~connolly/html-spec) and the Working Group expects to publish it by the end of 1994.

The HTML 2.0 specification divides the HTML elements, or tags, into four categories:

HTML forms are the most innovative addition to the 2.0 spec. They allow the author of a Web document to present the reader with an interactive form that includes type-in fields, radio buttons, and pull-down menus. Forms allow the implementation of new types of Web applications. The uses range from providing sophisticated interfaces to search engines to on-line registration and interactive applications where the input to the form determines the nature and content of the document displayed.

The HTML specification follows an open development model: A new feature is proposed, then implemented in some clients and tested in some applications. If the demand for the new feature is sufficient, the other browser implementors are encouraged to follow suit, and the new feature becomes widely deployed. In this process, the design is reviewed and perhaps modified or enhanced. Eventually, when there is sufficient experience with the new feature, it becomes part of the standard set of HTML features.

The prime example of this is a set of features called HTML+, originally proposed in late 1993 by Dave Raggett of Hewlett-Packard Labs in Bristol, England. The forms elements were first proposed in his HTML+ document. Support for HTML+ tables will soon be stable enough to become a standard part of HTML. A simple markup scheme allows the encoding of complex tables, where each cell can contain text, images, or multiple paragraphs.

The HTML+ proposal also allows the author more typographic control over the presentation of the document. Many Web users have been brought up using WYSIWYG word processors and expect the same level of presentation control of their Web-based documents. HTML+ addresses these needs with features such as inline images with automatic wraparound.

HTML+ has features that meet the specialized requirements of Web users. It specifies a MATH element, making it simpler to encode mathematical equations for display.

At this point, it's not clear how many more of the HTML+ features will become standard in a future revision of HTML, or if HTML+ will become a separate data format, supported by sophisticated browsers.

The best place to find out more information about the Web is, of course, on the Web itself. For instance, see Tim Berners-Lee's original writings on WWW, HTML, and other topics at http://info.cern.ch/hypertext/WWW/TheProject.html. The HTML 2.0 review materials are at http://www.hal.com/~connolly/html-spec, while the HTML+ discussion documents are at http://info.cern.ch/hypertext/WWW/MarkUp/HTMLPlus/htmlplus_1.html.

Discussions of HTML and other WWW topics are conducted over e-mail and USENET news. To join the HTML Working Group discussion, send mail to [email protected]; to join the general HTML technical discussion, contact [email protected]; to join the general WWW technical discussion, contact [email protected].

Figure 1 Typical WWW home page.

Table 1: Common HTML Tags. (a) headers; (b) general formatting; (c) logical styles; (d) physical styles; (e) lists; (f) miscellaneous; (g) hyperlinks or anchors; (h) graphics; (i) forms.

(a)
<h1>_</h1>                      Most prominent header
<h2>_</h2>
<h3>_</h2>
<h4>_</h4>
<h5>_</h5>
<h6>_</h6>                      Least prominent header

(b)
<title>_</title>                Specify document title
<p>                             New paragraph
<br>                            Forces a line break
<hr>                            Horizontal line
<pre>_</pre>                    Preformatted text
<listing>_</listing>            Example computer listing
<blockquote>_</blockquote>      Quoted text.

(c)
<em>_</em>                      Emphasis
<strong>_</strong>              Stronger emphasis
<code>_</code>                  Display an HTML directive
<samp>_</samp>                  Include sample output
<kbd>_</kbd>                    Display a keyboard key
<var>_</var>                    Define a variable
<dfn>_</dfn>                    Display a definition
<cite>_</cite>                  Display a citation

(d)
<b>_</b>                        Bold font
<i>_</i>                        Italics
<u>_</u>                        Underline
<tt>_</tt>                      Typewriter font

(e)
<ul>_</ul>                      Unordered list
<ol>_</ol>                      Ordered list
<menu>_</menu>                  Menu list
<dir>_</dir>                    Directory list
<li>                            Item in a list
<dl [compact]>_</dl>            Definition list/glossary
<dt>                            Term to be defined
<dd>                            Definition of term

(f)
<!-- text -->                   Place a comment in the HTML source
<link href="URL"[rev=][rel=]>   Define relationship between documents
<address>_</address>            Address information
<isindex>                       Specify index file
<nextid>                        Set a variable value
<base>                          Path of current file

(g)
<a name="target">_</a>          Define a target
<a href="#">_</a>               Link to target in the same file
<a href="URL">_</a>             Link to another file

(h)
<img src="URL"[alt=][align=][ismap]>    Include a graphic image

(i)
<form [ACTION=][METHOD=]>_</form>       Define a form.
<input [type=text|password|checkbox|radio|submit|reset]
  [name=][value=][checked][size=][maxlength=]>            Create a gadget
<select [name=][size=][multiple]>       Define a list of options</select>
<option [selected]>                     Define values within a <SELECT>
<textarea name=""[rows=][cols=]>        Define a text area
</textarea>

Table 2: Standard file types.

    Type   Description

    HTML   Hypertext markup
    GIF    Graphic interchange format
    XBM    Bitmapped graphics
    AU     Audio (raw) format
    JPEG   Graphic format
    MPEG   Animation/movie format
    AIFF   Audio format

Example 1: (a) produces the output in (b).

(a)  This word is in <I>italics</I>.
     <P>
     <U>Underlined, and 
     <B>bold</B> 
     too.</U>

(b) This word is in italics.

Underlined, and bold too.

Example 2: The <IMG_> tag requires an attribute (SRC) which defines the graphic file.

<A HREF="another.html">
Text and
<IMG SRC="graphic.gif">
link.</A>

Example 3: (a) This hypertext link points to other documents; (b) text which produces the image in Figure 2.

(a)
      <A HREF="index.html">This is a link.</A>

(b)
<IMG ALIGN=BOTTOM SRC="graphic.gif">
This text is at the bottom.
<P>

Example 4: (a) Using the ALT attribute; (b) a hypertext link to a GIF image.

(a)
<IMG SRC="graphic.gif" ALT="Click here [  ]">

(b)
<A HREF="larger_image.gif">
<IMG SRC="smaller_image.gif">
</A>

Example 5: (a) URLs let you specify how to reach Internet resources; (b) a URL that specifies FTP instead of HTTP.

(a)
      http://www.biodata.com/douglas/people/douglas.html

(b)
      ftp://www.somewhere.edu/file_name

Example 6: Defining an image map.

<A HREF="http://host.domain.com/cgi-bin/imagemap/picture">
<IMG SRC="picture.gif" ISMAP>
</A>

Listing One


<HTML>
<HEAD>
<!-- ---------------------------------------------------------------- -->
<!-- http://www.biodata.com/index.html, last modified 9/20/94 -=DCM=- -->
<!-- ---------------------------------------------------------------- -->
<TITLE>BioData Navigator</TITLE>
<IMG SRC="biodatabanner.gif" ALT="BioData Information Navigator">
</HEAD>
<PAGE>
<P>
<I>Copyright (c) 1994 by BioData, Inc. All rights reserved.</I>
<P>
The BioData Navigator is a
<I>Collaborative Information System</I>
designed to give World Wide Web users two-way access to
bioscience-related information. The
<A HREF="launch.html">BioData Cyberspace Launching Pad</A>
is the most popular part of BioData's web site. Check out
<A HREF="BioData.html">BioData Information</A>
and
<A HREF="WWW.html">WWW Information</A>
for more about BioData and the Navigator technology.
<HR>
<H1>What's New On The BioData Navigator?</H1>
A complete history of BioData
<A HREF="whatsNew.html">What's New notices</A>
is kept in another page.
<P>
<I>August 15, 1994</I>
<P>
The
Democratic Party's version of the
<A HREF="/gov/s2357/index.html">Health Security Act</A>
is on-line at BioData!
<P>
<I>August 6, 1994</I>
<P>
Check out the new
<A HREF="pr/index.html">Press Releases</A>
for information on BioData's latest expansion efforts! New employees --
<A HREF="pr/prVPeng.html">Barry Silver</A>,
VP of enginering and
<A HREF="pr/prSciComp.html">Barr Bauer</A>,
director of scientific computing -- are working together to
deliver innovative computer resources to biotechnology companies worldwide!
<P>
<I>July 21, 1994</I>
<P>
The
<A HREF="jobs.html">BioData Job Board</A>
is now on-line! Check here for information about open positions
at BioData and application instructions.
<P>
<I>July 20, 1994</I>
<P>
A
<A HREF="douglas/darkwater.html">geekhouse</A>
has invaded BioData! Our local Geek House Resident,
<A HREF="douglas/people/douglas.html">Douglas McArthur</A>
has some interesting links to Bay Area and Central Coast California people.
<HR>
<H1>BioData Information Resources</H1>
Check out the following topics to learn more about BioData and how
to use computers in a biotechnology company:
<P>
<UL>
<LI><B>BioData Product and Service Information.</B>
Sections on
<A HREF="BioData.html">Company information</A>
and a
<A HREF="Products.html">detailed product catalog</A>
present basic information about BioData.
<A HREF="pr/index.html">BioData Press Releases and News sightings</A> 
documents significant milestones in BioData history. On-line versions
of our newsletter, the <A HREF="newsletter/index.html">BioData Report</A>,
are available.
<P>
<LI><A HREF="launch.html">The BioData Cyberspace Launching Pad</a> 
is your gateway to the many bioscience, computer-related and fun spots 
on the Internet.
<P>
<LI><A HREF="who/whoswho.html">Who's Who At BioData.</A>
A directory of the special knowledge and skills of BioData employees plus
detailed biographical information.
<P>
<LI><A HREF="vendors/index.html">Vendor And Supplier Information.</A>
Many of BioData's suppliers have Internet resources available. This link puts
you in contact with those resources.
<P>
<LI><A HREF="jobs.html">BioData Job Board.</A>
BioData is a quickly growing company and has immediate
openings for highly motivated individuals. Send resumes to
<A HREF="mailto:[email protected]">[email protected]</A>.
</UL>
<HR>
Send comments to
<A HREF="mailto:[email protected]">[email protected]</A>.
<P>
Have a happy journey through the cyberspace!
<P>
<I>All information contained in the BioData Navigator system is
Copyright (c) 1994 by BioData, Inc.</I>
<P>
<ADDRESS>
BioData Home Page /
<A HREF="who/vern.html">[email protected]</A>
</ADDRESS>
</BODY>
</HTML>

Listing Two


<HTML>
<HEAD>
<!-- ------------------------------------------------------------------- -->
<!-- http://www.biodata.com/douglas/form.html - Modified 9/20/94 -=DCM=- -->
<!-- ------------------------------------------------------------------- -->
<TITLE>Prototypical HTML Forms</TITLE>
<H1>Prototypical HTML Forms</H1>
</HEAD>
This document displays the various form gadgets currently supported.
<P>
<FORM ACTION="http://hoohoo.ncsa.uiuc.edu/htbin-post/post-query" METHOD="POST">
<HR>
<H1>Text Fields</H1>
Basic text entry field:
<INPUT TYPE="text" NAME="entry1" VALUE=""> 
<P>
Text entry field with default value:
<INPUT TYPE="text" NAME="entry2" VALUE="This is the default."> 
<P>
Text entry field of 40 characters:
<INPUT TYPE="text" NAME="entry3" SIZE=40 VALUE=""> 
<P>
Text entry field of 5 characters, maximum:
<INPUT TYPE="text" NAME="entry5" SIZE=5 MAXLENGTH=5 VALUE=""> 
<P>
Password entry field (*'s are echoed):
<INPUT TYPE="password" NAME="password" SIZE=8 MAXLENGTH=8 VALUE=""> 
<HR>
<H1>Textareas</H1>
A 60x3 scrollable textarea:
<P>
<TEXTAREA NAME="textarea" COLS=60 ROWS=3>NOTE:
Default text can be entered here.
</TEXTAREA>
<HR>
<H1>Checkboxes</H1>
Here is a checkbox
<INPUT TYPE="checkbox" NAME="Checkbox1" VALUE="TRUE">,
and a checked checkbox
<INPUT TYPE="checkbox" NAME="Checkbox2" VALUE="TRUE" CHECKED>. 
<HR>
<H1>Radio Buttons</H1>
Radio buttons (one-of-many selection):
<OL>
<LI>
<INPUT TYPE="radio" NAME="radio1" VALUE="value1">
First choice. 
<LI>
<INPUT TYPE="radio" NAME="radio1" VALUE="value2" CHECKED>
Second choice. (Default CHECKED.)
<LI>
<INPUT TYPE="radio" NAME="radio1" VALUE="value3">
Third choice. 
</OL>
<HR>
<H1>Option Menus</H1>
One-of-many (Third Option selected by default):
<SELECT NAME="first-menu">
<OPTION>First Option</OPTION>
<OPTION>Second Option</OPTION>
<OPTION SELECTED>Third Option</OPTION>
<OPTION>Fourth Option</OPTION>
<OPTION>Last Option</OPTION>
</SELECT>
<P>
Many-of-many (First and Third selected by default):
<SELECT NAME="second-menu" MULTIPLE>
<OPTION SELECTED>First Option</OPTION>
<OPTION>Second Option</OPTION>
<OPTION SELECTED>Third Option</OPTION>
<OPTION>Fourth Option</OPTION>
<OPTION>Last Option</OPTION>
</SELECT>
<P>
<B>NOTE: Hold down CTRL and click to multiple-select.</B>
<!-- You can also assign VALUEs using TYPE="hidden" -->
<INPUT TYPE="hidden" NAME="hidden" VALUE="invisible">
<HR>
<H1>Special Buttons</H1>
Submit button (mandatory):
<INPUT TYPE="submit" VALUE="Submit Form">
<P>
Reset button (optional):
<INPUT TYPE="reset" VALUE="Clear Values">
<P>
</FORM>
<HR>
<H1>References</H1>
Heres a link to
<A HREF="http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/fill-
out-forms/overview.html">
a handy HTML forms reference
</A>.
<P>
<HR>
<ADDRESS>
Prototypical HTML Form /
<A HREF="http://www.biodata.com/douglas/people/douglas.html">
[email protected] 
</A>
</ADDRESS>
</HTML>

Copyright © 1994, Dr. Dobb's Journal

Terms of Service | Privacy Statement | Copyright © 2024 UBM Tech, All rights reserved.