README Created by Laurence D. Finston (LDF) 2007.01.02. $Id: README,v 1.4 2007/01/03 14:28:25 lfinsto1 Exp $ * (1) Copyright and License. This file is part of the IWF Metadata Harvester, a package for metadata harvesting. Copyright (C) 2006, 2007 IWF Wissen und Medien gGmbH The author is Laurence D. Finston. The IWF Metadata Harvester is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The IWF Metadata Harvester is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with the IWF Metadata Harvester; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA The IWF Metadata Harvester is available for downloading from the following FTP server: ftp://ftp.gwdg.de/pub/gnu2/iwfmdh/ Please send bug reports to lfinsto1@gwdg.de The author can be contacted at: Laurence D. Finston Kreuzbergring 41 D-37075 Goettingen Germany lfinsto1@gwdg.de s246794@stud.uni-goettingen.de * (1) Scantest LDF 2007.01.03. `scantest' implements an interpreter for a "Generic Query Language". When the executable (`sct') is called, it reads a file of commands and executes them according to a set of rules, which comprise the grammar of the language. The author has used GNU Bison, a "compiler generator", to create the interpreter. The grammar of the language is defined in the files with the extension `.w', e.g., `parser.w', `assign.w', etc. These can be examined in the pretty-printed version of the program code in the files `sctstprg.dvi', `sctstprg.ps', or `sctstprg.pdf', in this directory. GNU Bison also generates a file called `parser.output', which contains the grammar rules in Backus-Naur format, along with other information. `sct' can be called directly, or by means of the `make' target `run', i.e, enter "sct" or "make run" at the command line (without quotation marks). If called without arguments, `sct' reads the file `commands.txt' by default. This file is included in the distribution. Alternatively, a filename (with extension) can be passed to `sct' as an argument, i.e., `sct '. If no filename argument is used, and `commands.txt' doesn't exist, `sct' will simply exit immediately with no message. Assuming `sct' reads a valid command file, whether `commands.txt' or some other file, calling it currently produces a flood of debugging output, showing what rules are being reduced (my own code, not what you get when you use Bison's `yydebug'). The `Scantest' language allows you to declare variables of a couple of types, including a `query' type. If `q' is a variable of type `query', you can assign to it in various ways, the result being a data structure representing a query with sub-queries linked with Boolean operators. You can then generate two different kinds of string from this query: An SQL command or TeX code which can be used to generate a chart representing the data structure. More to come soon! * (1) Local variables for Emacs Local variables: mode: indented-text end: