Getting Started
  • All firefish tools are available for both Unix and Windows, within the same software distribution. However, in the interest of brevity, we only show Unix examples, with Windows examples omitted. For Windows, please add .bat extensions to your typing and adjust file locations as obvious.
  • Also note that depending on your kind of shell, string quoting is sometimes necessary to prevent the shell from interpreting special characters in a URL or other command line option/argument, such as characters '*', '&', ' ', etc. On Windows, use the " character instead of the ' character to quote strings.
You can use the fire-xpath command line program to run an XPath query against a set of local files.
/opt/firebundle/firefish/bin/fire-xpath --help
displays the fire-xpath help text. The XPath tutorials contain many sample queries.
You can use the fire-xquery command line program to run an XQuery against a set of local files.
/opt/firebundle/firefish/bin/fire-xquery --help
displays the fire-xquery help text. The XQuery tutorials help in understanding the language.
You can use the fire-sql command line program to run a SQL query against a JDBC database, optionally returning results as XML.
/opt/firebundle/firefish/bin/fire-sql --help
displays the fire-sql help text. The SQL tutorials help in understanding the language.
You can use the fire-grep command line program to run a regular expression against a set of local files, optionally returning results as XML.
/opt/firebundle/firefish/bin/fire-grep --help
displays the fire-grep help text. The Regular Expression tutorials help in understanding the language.

The previous commands above worked against local files. Lets now try run XPath and XQueries against the entire P2P network.

As a prerequisite, the Tomcat server (a middleware container) must be started, within which the firefish services run. Tomcat can run as any non-privileged user; it need not run as root user.



To check if tomcat and axis are indeed running properly follow the installation tests: Point your web browser to the local Tomcat Start Page to see if it is properly served. Do the same thing with the Firefish Axis Start Page, the Happy Axis Page and the Firefish Search Page.

Warning: not much server info is displayed on stdout and stderr. Most info goes into log files instead. Check

cat firebundle/tomcat/logs/catalina.out
By default HTTP is listening for requests on port 8080, HTTPS is listening on port 8443, and the shutdown listener (only accessible from localhost) is on port 8005. You can change ports and switch HTTP or HTTPS on/off by editing
For more information, see the Tomcat Documentation and Top Ten Tomcat Tips.
Once tomcat is up and running you can use the fire-search command line program to query the P2P network.
/opt/firebundle/firefish/bin/fire-search --help
displays the fire-search help text. The Demo HTML GUI provides similar functionality as fire-search.

You can change the server-side XML database against which queries are executed by editing

Here, change this line to point to your favourite XML file:
You can use the fire-validate command line program to check if an XML instance document is valid wrt. a given W3C XML Schema (or just well-formed).
/opt/firebundle/firefish/bin/fire-validate --help
displays the fire-validate help text.

© 2003-2004, Lawrence Berkeley National Laboratory Valid HTML 4.01! Valid CSS!