Online Addendum (October 23, 1996): The new product name is DataSite.
The popularity of static, billboard-style Web pages is waning. More and more, Web content developers want to generate Web pages dynamically - to stuff them with data selected from databases.
There are several categories of Web database connections. The most complete models support CRUD (Create [Insert], Read [Select], Update, and Delete). They are the most complex to set up, and they require database programming skills. The Oracle database-c entric WebServer is a good example of a complete CRUD model. (Refer to http://www.oracle.com for details.) At the other end of the spectrum is the read-only model. Yes, some sort of programming is still necessary. Most Web database connections require yo u at least to supply SQL SELECT statements and HyperText Markup Language (HTML) template Web pages with embedded tags indicating where to stuff data returned by the SELECT statement. The Internet Data Connector (IDC) component of the Microsoft Internet I nformation Server product is a good example of a read-mostly model. (See http://www.microsoft.com for details.) A sizable Web database connection niche market exists; a good jumping-off place to find out who's who in this niche market is http://www.yahoo .com/Computers_and_Internet/Internet/World_Wide_Web/Databases_and_Searching/.
Generating dynamic Web pages and stuffing them with data selected from a database comes at a price. You must be familiar with the database schema and know how to write SQL statements. Such skills can seem intimidating to the legion of Web content develop ers who are not database programmers and to Common Gateway Interface (CGI) programmers who have avoided database programming.
Web content developers and CGI programmers do not need to become database programmers or start looking for another line of work - at least not just yet. NetScheme Solutions Inc. (http://www. netscheme.com) has a product that might be just the ticket. The NetScheme InterMart Toolkit reads the database schema, creates HTML template Web pages, and creates a navigation model of the database. You (the Web content developer) point and click your w ay through a Wizard, and end up with a set of Web pages that access the entire database. It took me less than ten minutes to generate a useful set of Web pages for the sample database ("pubs") that comes with Microsoft SQL Server 6.5 - and I didn't have to write a single SQL statement.
The NetScheme InterMart Toolkit runs on Windows NT 3.51 and Windows NT 4.0, with at least 16MB of RAM and 4MB of disk space for the toolkit. It can use any Windows NT Server Open Database Connectivity (ODBC) driver to connect to the database of your choi ce, and it directly supports Microsoft SQL Server and Sybase SQL Anywhere 5.0.2. The NetScheme InterMart Toolkit requires a Web server running on Windows NT Server. It supports Microsoft Internet Information Server, Netscape Commerce Server, Netscape Ent erprise Server, and O'Reilly WebSite. You can run the NetScheme InterMart Toolkit on Windows 95 with the O'Reilly WebSite Web server, but NetScheme does not recommend it.
The NetScheme InterMart Toolkit has five components: NetScheme Modeler, NetScheme Navigation Model, NetScheme Open Database Connectivity (ODBC) Driver, NetScheme Navigation Server, and NetScheme Web Page Designer. (The NetScheme Web Page Designer was not available at press time.) The NetScheme Modeler reads the database schema and generates a NetScheme Navigation Model of the database. The NetScheme Modeler refers to a database table as a class and a column as an attribute. It also refers to a database primary key or unique index as an ID key, and to a foreign key as a relationship attribute. The NetScheme Modeler refers to a one-to-many relationship as a list relationship and a one-to-one relationship as an item relationship. NetScheme uses these term s to differentiate between the model and the database being modeled. When you change the model, you are not changing the database. You can change the model by creating additional relationship attributes between classes, referring to attributes in a refer enced class, and you can perform calculations on a field. Web content developers and CGI programmers are getting in over their heads here if they are not database programmers.
The "home page" for the "pubs" database is invoked by sending a Uniform Resource Locator (URL), such as http://pc1/ scripts/nsnavgci.dll?app=pubs, to the Web server from a Web client browser. The Web server passes the argument app=pubs to the nsnavgci.dll Internet Server Application Programming Interface (ISAPI) in-process DLL. The nsnavgci.dll ISAPI DLL passes the ar gument on to the NetScheme Navigation Server, which runs as a Windows NT Server service. The Navigator Server generates a login form HTML page from a style sheet and sends it to the Web client browser through the ISAPI DLL. The result is a login form. (S ee Figure 1.) The Navigator Server logs into the database server when it receives the login form from the Web client browser. The NetScheme InterMart Toolkit uses the existing Windows NT Server, Web Server, and database security mo dels. The Navigator Server locates the home page for the "pubs" database and sends it back through the ISAPI DLL. Figure 2 shows the pubs home page.
The Navigator Server keeps the connection to the database open between requests from the Web client browser. This is a noteworthy feature of the NetScheme InterMart Toolkit. Web servers do not keep state information between Web client requests. Web datab ase connection models such as the Microsoft IDC and CGI must go through the overhead of getting a database connection for every Web client browser request. The NetScheme Navigator Server knows if the database connection is open for a particular Web clien t request, because it stuffs sufficient information into hidden HTML fields on the forms that it sends to Web client browsers. The browsers send the contents of the hidden HTML fields back to the Navigator Server contained in the next URL sent to the Web server.
The NetScheme InterMart Toolkit returns the Publishers List HTML table shown in Figure 3 by clicking on the Publishers HTML link in Figure 2. The InterMart Toolkit returns an Employee List HTML page if you click on the first entry in the Employees column in the Publisher List table. The NetScheme Navigator Server generates these HTML pages dynamically using the HTML template pages generated by the NetScheme Modeler Wizard and stuffs them with data selected from the "pubs" database . I did not write a single SQL statement for this example; I simply pointed and clicked my way through the Wizard.
The Windows NT Server Systems Administrator needs to install the NetScheme InterMart Toolkit because the Navigator Server must run as a system service, and the ODBC Data Source Name (DSN) must be installed as a System DSN. The Web content developer must have sufficient Windows NT File System access to the NetScheme director to run the NetScheme Modeler.
I used NetScheme InterMart Toolkit release 1 beta 1.1 for this review. I had to stop and start the Navigation Server system service manually before changes made by the NetScheme Modeler would take effect. This process requires System Administration privi leges. There was no way to point and click or to delete a NetScheme model. I had to figure out the file structure and delete the file manually. NetScheme Solutions said it will have these problems fixed when the product is released for the first customer shipment.
The NetScheme InterMart Toolkit provides a practical way to connect databases to the Web. It produces useful table Web pages with HTML links built in, and it has the added feature of remembering state information between Web client browser requests. Web content developers and CGI programmers without database programming experience will appreciate the ease with which they can connect databases to the Web.


