| iMatix home page | Xitami home page | << | < | > | >> | Xitami Version 2.5b6

## Server-Side GSL Scripting

GSL is the iMatix code generation language. You can use GSL to do fast server-side scripting, using an approach similar server-side includes (SSI). GSL supports many commands including XML-driven output.

Server-side GSL scripting is similar to XML processing, but the GSL script invoked directly (e.g. http://hostname/somefile.gsl) instead indirectly through an XML file. GSL files must have the extension '.gsl'.

### Why use GSL Scripts?

For many cases, GSL scripting is faster and simpler than SSI or CGI. A GSL script can load and manipulate arbitrarily-complex XML data, and convert this into usable HTML using a simple but powerful template language. GSL is several years ahead of similar approaches like XSLT (the XML Stylesheet Language Transformation language), and works today directly from your Xitami web server.

### Predefined Attributes

As well as the standard attributes (date, time, filename, script), the GSL script can access all the environment variables normally passed to a CGI program, such as REMOTE_USER. These are defined as attributes of the root item, as well as 'argument' items attached to the root item.

### Passing Arguments to The GSL Script

You can pass arguments to the the GSL script by using the query string syntax:

    http://xx.xx.xx.xx/myfile.xml?arg=value;arg=value;...

All arguments passed in the query string are defined as attributes of the XML root item.

| << | < | > | >> | Welcome To Xitami | Table Of Contents | Installing Xitami | Administration | Configuration | Using The Common Gateway Interface (CGI) | Server-Side Includes (SSI) | Using Filters | Server-Side XML Processing | Server-Side GSL Scripting | Image Maps | Virtual Hosts | The FTP Service | The Dynamic DNS Feature | Throttle Pipes | A Beginner's Guide | Writing Web Server Extension (WSX) Agents | Extending Xitami with External Peer Processes | FAQ | Getting Support | Credits | Release History | License Agreement | Copyright © 1996-2002 iMatix Corporation