Previous Up Next

Chapter 7  For Galax Developers

7.1  Galax Source Code Architecture

The Galax source-code directories roughly correspond to each phase of the query processor. (Put link to Jerome’s tutorial presentation here)

The processing phases are:

Document processing
  Document Parsing =>  
 [Schema Normalization (below) =>]
    Validation => 
      Loading => 
        Evaluation (below)
Schema processing
  Schema Parsing => 
    Schema Normalization =>
      Validation (above)
      Static Typing (below)
Query processing
  Query Parsing => 
    Normalization => 
   [Schema Normalization (above) =>]
      Static Typing (optional phase) => 
        Rewriting => 
          Compilation => 
         [Loading (above) =>]
            Evaluation =>
              Serialization 

7.1.1  General

Makefile

base/

ast/

config/

monitor/

toplevel/

website/

7.1.2  Datamodel

datatypes/ (*** Doug)

namespace/

dm/ (*** Doug)

datamodel/

jungledm/

physicaldm/

streaming/

7.1.3  Processing Model

procctxt/

procmod/

7.1.4  Query Parsing

lexing/

parsing/

7.1.5  Normalization

normalization/

7.1.6  Static Typing

fsa/

typing/

7.1.7  Schema/Validation

schema/

7.1.8  Rewriting

cleaning/

rewriting/

7.1.9  Compilation

compile/

algebra/

7.1.10  Evaluation

evaluation/

stdlib/

7.1.11  Serialization

serialization/

7.1.12  Testing

usecases/

examples/

regress/

7.1.13  APIs

galapi/

7.1.14  External libraries & tools

tools/

Required tools:

Optional supported tools:

Optional unsupported tools:

7.1.15  Extensions

extensions/

7.1.16  Experimental Galax extensions

projection/

wsdl/

wsdl_usecases/

7.1.17  Documentation

7.1.18  Generated executables

ocaml-galax
O’Caml top-level interpretor that loads Galax library. Usage: ocaml-galax -I $(HOME)/Galax/lib/caml-devel
galax-run
Complete XQuery engine For Usage: galax-run –help See also: all: rule in usecases/Makefile
galax.a
Library versions of Galax
galax.cma
byte code
galax.cmxa
machine code
galax-parse
Syntax checking on query, validation on a document
galax-compile
Parsing, normalization, optimization, and prints resulting expression
galax-mapschema
Takes XML Schema and prints out internal XQuery type

Auxiliary research tools:

galax-mapwsdl
Imports/exports Galax queries as WSDL Web Services
xquery2soap
galax-project
Takes XQuery query and figures out what fragments of documents are necessary to evaluate the query

Previous Up Next