Galax Manual: General

# Chapter 9 General

## 9.1 The Galax Team

Contributors:

- Mary Fernández (Lead)
- Trevor Jim
- Philippe Michiels
- Kristi Morton
- Nicola Onose
- Chris Rath
- Christopher Ré
- Jérôme Siméon (Lead)
- Michael Stark

Alumni:

- Byron Choi
- Vladimir Gapeyev
- Amélie Marian
- Douglas Petkanics
- Gargi Sur
- Avinash Vyas
- Philip Wadler

## 9.2 Feedback

Feedback and bug reports can be sent by mail to: galax-users@research.att.com

You can be subscribe to the Galax mailing list at: galax-users-request@research.att.com

You can report bugs at `http://bugzilla.galaxquery.net/`.

## 9.3 Copyright and License

Galax version 1.0 is distributed under the terms of the LUCENT PUBLIC LICENSE VERSION 1.0 - see the LICENSE file for details.

    Lucent Public License Version 1.0

    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS PUBLIC
    LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE
    PROGRAM CONSTITUTES RECIPIENT’S ACCEPTANCE OF THIS AGREEMENT.

    1. DEFINITIONS

    "Contribution" means:

    a.in the case of Lucent Technologies Inc. ("LUCENT"), the Original
    Program, and

    b.in the case of each Contributor,

    i.changes to the Program, and

    ii.additions to the Program; where such changes and/or additions to
    the Program originate from and are "Contributed" by that particular
    Contributor.

    A Contribution is "Contributed" by a Contributor only (i) if it was
    added to the Program by such Contributor itself or anyone acting on
    such Contributor’s behalf, and (ii) the Contributor explicitly
    consents, in accordance with Section 3C, to characterization of the
    changes and/or additions as Contributions.

    "Contributor" means LUCENT and any other entity that has Contributed a
    Contribution to the Program.

    "Distributor" means a Recipient that distributes the Program,
    modifications to the Program, or any part thereof.

    "Licensed Patents" mean patent claims licensable by a Contributor
    which are necessarily infringed by the use or sale of its Contribution
    alone or when combined with the Program.

    "Original Program" means the original version of the software
    accompanying this Agreement as released by LUCENT, including source
    code, object code and documentation, if any.

    "Program" means the Original Program and Contributions or any part
    thereof

    "Recipient" means anyone who receives the Program under this
    Agreement, including all Contributors.

    2. GRANT OF RIGHTS

    a.Subject to the terms of this Agreement, each Contributor hereby
    grants Recipient a non-exclusive, worldwide, royalty-free copyright
    license to reproduce, prepare derivative works of, publicly display,
    publicly perform, distribute and sublicense the Contribution of such
    Contributor, if any, and such derivative works, in source code and
    object code form.

    b.Subject to the terms of this Agreement, each Contributor hereby
    grants Recipient a non-exclusive, worldwide, royalty-free patent
    license under Licensed Patents to make, use, sell, offer to sell,
    import and otherwise transfer the Contribution of such Contributor, if
    any, in source code and object code form. The patent license granted
    by a Contributor shall also apply to the combination of the
    Contribution of that Contributor and the Program if, at the time the
    Contribution is added by the Contributor, such addition of the
    Contribution causes such combination to be covered by the Licensed
    Patents. The patent license granted by a Contributor shall not apply
    to (i) any other combinations which include the Contribution, nor to
    (ii) Contributions of other Contributors. No hardware per se is
    licensed hereunder.

    c.Recipient understands that although each Contributor grants the
    licenses to its Contributions set forth herein, no assurances are
    provided by any Contributor that the Program does not infringe the
    patent or other intellectual property rights of any other entity. Each
    Contributor disclaims any liability to Recipient for claims brought by
    any other entity based on infringement of intellectual property rights
    or otherwise. As a condition to exercising the rights and licenses
    granted hereunder, each Recipient hereby assumes sole responsibility
    to secure any other intellectual property rights needed, if any. For
    example, if a third party patent license is required to allow
    Recipient to distribute the Program, it is Recipient’s responsibility
    to acquire that license before distributing the Program.

    d.Each Contributor represents that to its knowledge it has sufficient
    copyright rights in its Contribution, if any, to grant the copyright
    license set forth in this Agreement.

    3. REQUIREMENTS

    A. Distributor may choose to distribute the Program in any form under
    this Agreement or under its own license agreement, provided that:

    a.it complies with the terms and conditions of this Agreement;

    b.if the Program is distributed in source code or other tangible form,
    a copy of this Agreement or Distributor’s own license agreement is
    included with each copy of the Program; and

    c.if distributed under Distributor’s own license agreement, such
    license agreement:

    i.effectively disclaims on behalf of all Contributors all warranties
    and conditions, express and implied, including warranties or
    conditions of title and non-infringement, and implied warranties or
    conditions of merchantability and fitness for a particular purpose;

    ii.effectively excludes on behalf of all Contributors all liability
    for damages, including direct, indirect, special, incidental and
    consequential damages, such as lost profits; and

    iii.states that any provisions which differ from this Agreement are
    offered by that Contributor alone and not by any other party.

    B. Each Distributor must include the following in a conspicuous
    location in the Program:

    Copyright (C) 2003, Lucent Technologies Inc. and others. All Rights
    Reserved.

    C. In addition, each Contributor must identify itself as the
    originator of its Contribution, if any, and manifest its intent that
    the additions and/or changes be a Contribution, in a manner that
    reasonably allows subsequent Recipients to identify the originator of
    the Contribution. Once consent is granted, it may not thereafter be
    revoked.

    4. COMMERCIAL DISTRIBUTION

    Commercial distributors of software may accept certain
    responsibilities with respect to end users, business partners and the
    like. While this license is intended to facilitate the commercial use
    of the Program, the Distributor who includes the Program in a
    commercial product offering should do so in a manner which does not
    create potential liability for Contributors. Therefore, if a
    Distributor includes the Program in a commercial product offering,
    such Distributor ("Commercial Distributor") hereby agrees to defend
    and indemnify every Contributor ("Indemnified Contributor") against
    any losses, damages and costs (collectively "Losses") arising from
    claims, lawsuits and other legal actions brought by a third party
    against the Indemnified Contributor to the extent caused by the acts
    or omissions of such Commercial Distributor in connection with its
    distribution of the Program in a commercial product offering. The
    obligations in this section do not apply to any claims or Losses
    relating to any actual or alleged intellectual property
    infringement. In order to qualify, an Indemnified Contributor must: a)
    promptly notify the Commercial Distributor in writing of such claim,
    and b) allow the Commercial Distributor to control, and cooperate with
    the Commercial Distributor in, the defense and any related settlement
    negotiations. The Indemnified Contributor may participate in any such
    claim at its own expense.

    For example, a Distributor might include the Program in a commercial
    product offering, Product X. That Distributor is then a Commercial
    Distributor. If that Commercial Distributor then makes performance
    claims, or offers warranties related to Product X, those performance
    claims and warranties are such Commercial Distributor’s responsibility
    alone. Under this section, the Commercial Distributor would have to
    defend claims against the Contributors related to those performance
    claims and warranties, and if a court requires any Contributor to pay
    any damages as a result, the Commercial Distributor must pay those
    damages.

    5. NO WARRANTY

    EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
    PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
    WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
    OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
    responsible for determining the appropriateness of using and
    distributing the Program and assumes all risks associated with its
    exercise of rights under this Agreement, including but not limited to
    the risks and costs of program errors, compliance with applicable
    laws, damage to or loss of data, programs or equipment, and
    unavailability or interruption of operations.

    6. DISCLAIMER OF LIABILITY

    EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
    ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
    INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
    WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
    LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
    NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
    DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
    HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

    7. EXPORT CONTROL

    The Recipient acknowledges that the Program is "publicly available" as
    the term is defined under the United States export administration
    regulations and is not subject to export control under such laws and
    regulations. However, if the Recipient modifies the Program to change
    (or otherwise affect) such publicly available status, the Recipient
    agrees that Recipient alone is responsible for compliance with the
    United States export administration regulations (or the export control
    laws and regulation of any other countries) and hereby indemnifies the
    Contributors for any liability incurred as a result of the Recipients
    actions which result in any violation of any such laws and
    regulations.

    8. GENERAL

    If any provision of this Agreement is invalid or unenforceable under
    applicable law, it shall not affect the validity or enforceability of
    the remainder of the terms of this Agreement, and without further
    action by the parties hereto, such provision shall be reformed to the
    minimum extent necessary to make such provision valid and
    enforceable.

    If Recipient institutes patent litigation against a Contributor with
    respect to a patent applicable to software (including a cross-claim or
    counterclaim in a lawsuit), then any patent licenses granted by that
    Contributor to such Recipient under this Agreement shall terminate as
    of the date such litigation is filed. In addition, if Recipient
    institutes patent litigation against any entity (including a
    cross-claim or counterclaim in a lawsuit) alleging that the Program
    itself (excluding combinations of the Program with other software or
    hardware) infringes such Recipient’s patent(s), then such Recipient’s
    rights granted under Section 2(b) shall terminate as of the date such
    litigation is filed.

    All Recipient’s rights under this Agreement shall terminate if it
    fails to comply with any of the material terms or conditions of this
    Agreement and does not cure such failure in a reasonable period of
    time after becoming aware of such noncompliance. If all Recipient’s
    rights under this Agreement terminate, Recipient agrees to cease use
    and distribution of the Program as soon as reasonably
    practicable. However, Recipient’s obligations under this Agreement and
    any licenses granted by Recipient relating to the Program shall
    continue and survive.

    Lucent Technologies Inc. may publish new versions (including
    revisions) of this Agreement from time to time. Each new version of
    the Agreement will be given a distinguishing version number. The
    Program (including Contributions) may always be distributed subject to
    the version of the Agreement under which it was received. In addition,
    after a new version of the Agreement is published, Contributor may
    elect to distribute the Program (including its Contributions) under
    the new version. No one other than Lucent has the right to modify this
    Agreement. Except as expressly stated in Sections 2(a) and 2(b) above,
    Recipient receives no rights or licenses to the intellectual property
    of any Contributor under this Agreement, whether expressly, by
    implication, estoppel or otherwise. All rights in the Program not
    expressly granted under this Agreement are reserved.

    This Agreement is governed by the laws of the State of New York and
    the intellectual property laws of the United States of America. No
    party to this Agreement will bring a legal action under this Agreement
    more than one year after the cause of action arose. Each party waives
    its rights to a jury trial in any resulting litigation.

## 9.4 Bugs and Limitations

## 9.5 Known Bugs and Limitations

Galax’s error messages are often uninformative. We are working on this.

Namespace declarations in input and output documents and in input queries are not handled consistently. We are working on this.

Although module declarations and module import statements are supported, they are not well tested.

    Testing buildbot

    Bugs fixed in Version 0.4
    ~~~~~~~~~~~~~~~~~~~~~~~~~

    Date:       Reported By:           Locus:          Fixed by:   Test in XQueryUnit:
    —–       ————           ——          ———   ——————-
    06 Nov	Trevor Jim
    	Feature request: if no file arguments are given to galax, take input
    	from standard input; or at least provide a flag that allows this.

    04Apr03     Mary Fernandez             Datamodel/Node order
                mff@research.att.com                   Jerome      New data model
                galax-dev/2003q2/000209.html
                Node order

    12Jul03     Mark Anderson          Makefiles (MacOSX)
                galax/2003q3/000285.html               Mary

    30Jul03     Michael Burbridge      Makefiles (MacOSX)
                galax/2003q3/000287.html               Mary
                galax/2003q3/000294.html

    8Aug03      Michael Schlenker      Extensible DM interface
                galax/2003q3/000304.html

    Bugs fixed in Version 0.3.1
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Date:       Reported By:           Locus:          Fixed by:   Test in XQueryUnit:
    —–       ————           ——          ———   ——————-
    16Apr03     Carmelo Montanez       Atomic types    Mary
                carmelo@nist.gov
                galax/2003q2/000196.html
                literal ints are int, not integer

    29Jan03     Bard Bloom             Optimization    Mary        [galax]Optimization_001.xq
                <bardb@us.ibm.com>
                galax/2003q1/000130.html

    31Jan03     Bard Bloom             Error messages  Mary        [Section3.1.4]Function_014.xq
    	    <bardb@us.ibm.com>
                galax/2003q1/000138.html

    11Feb03     Clause Huempel         Lexing          Jerome
                Claus Huempel
                chuempel@orange.fr
                galax/2003q1/000140.html

    20Feb03     Jerome Simeon          Context         Jerome/Mary
                simeon@research.bell-labs.com
                galax-dev/2003q1/000180.html

    13Mar03     Christopher Burdorf    Galapi-ML       Mary
                cburdorf@imageworks.com
                galax/2003q1/000156.html

    22Mar03     Mike Tikiliainen       Galapi-ML       Mary
                mt99@doc.ic.ac.uk
                galax/2003q1/000157.html

    26Mar03     Steve Fortune          Text constructor             [Section3.7.2]ComputedTextConstructor_0012.xq

    26Mar03     Steve Fortune          Context/API      Mary        [galax]ExtContext_001,002.xq

    16Apr03     Michael Burbidge       Galapi-C         Mary
                mburbidg@adobe.com
                galax/2003q2/000198.html

    18Apr03     Michael Burbidge       Command-line API Mary
                mburbidg@adobe.com
                galax/2003q2/000217.html

    01May03     Bard Bloom             Evaluation       Mary        [Section3.8]OrderClause_007.xq
                <bardb@us.ibm.com>
                galax/2003q2/000233.html
                Order-by clause broken

    05May03     Greg Pomerantz         Serialization    Jerome
                gmp@alumni.brown.edu
                galax/2003q2/000242.html

    21Apr03     Michael Burbidge           	 Unicode support  Jerome     Implemented some support for UTF-8,
                mburbidg@adobe.com         	                             ISO-88591 and UTF16
                galax/2003q2/000227.html

    30Apr03     Mary Fernandez             	 Document validate
                mff@research.att.com
                glx:document-validate
                galax-dev/2003q2/000230.html

    Bug fixed in Version 0.3
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Date:   Reported By:               Locus:          Fixed by:   Test in XQueryUnit:
    —–   ————               ——          ———   ——————-
    14 Oct	Rajasekar Krishnamurthy    Sorting         Jerome      [Section3.2.2]Predicates_012.xq
            <sekar@cs.wisc.edu>
            galax/2002q4/000054.html

    04 Nov	Trevor Jim                 Attr: single quotes Jerome  [Section3.7.2]ComputedAttributeConstructor_009.xq
            <trevor@research.att.com>

    04 Nov	Trevor Jim                 Attr constructors Mary      [Section3.7.2]ComputedAttributeConstructor_010.xq
            <trevor@research.att.com>                              [Section3.7.2]ComputedAttributeConstructor_011.xq

    04 Nov	Blavier, André             Attribute constructors      (Covered by ComputedAttributeConstructor above)
            galax/2002q4/000062.html

    05 Nov	Blavier, André             Function calls   Mary       [Section3.1.4]/FunctionCall_013.xq
            <andre.blavier@caissedesdepots.fr>
            galax/2002q4/000064.html

    06 Nov	Bard Bloom                 Whitespace in elem          [Section3.7.1]ComputedElementConstructor_001.xq
                                       constructor
            <bardb@us.ibm.com>
            galax/2002q4/000067.html

    06 Nov  Peter Patel-Schneider      Namespaces       Jerome     Should reject wrongful rebindings of xml and xmlns

    06 Nov  Peter Patel-Schneider      Namespaces       Jerome
            Requested support for xml:base and xml:lang special attributes

    08 Nov	Bard Bloom                 Sorting          J/M        [Section3.9.1]SortExpr_010.xq
            <bardb@us.ibm.com>
            galax/2002q4/000073.html

    15 Nov  Bernd Amann                Def’n of fn:data on         [Section3.5.2]GeneralComp_010.xq
                                       complex content

    25 Nov	Bard Bloom                 Attr constructor            (Covered by ComputedAttributeConstructor above)
            <bardb@us.ibm.com>
            galax/2002q4/000086.html

    4 Dec	Bard Bloom                 Print function   Jerome     Implemented glx:print-string, glx:print-item
            <bardb@us.ibm.com>
            galax/2002q4/000092.html

    =======
    STILL OUTSTANDING
    ~~~~~~~~~~~~~~~~~

    Requested features
    ~~~~~~~~~~~~~~~~~~

    Date:   Requested by:
    11Apr03 Bronneberg EM              Schema support
            embronne@cs.vu.nl
            galax/2003q2/000187.html
            Attribute groups unsupported

    14Apr03 MW                         Atomic types
            onlymails@gmx.net
            galax/2003q2/000194.html
            literal ints are int, not integer

    16Apr03 Carmelo Montanez           Atomic types
            carmelo@nist.gov
            galax/2003q2/000203.html
            All numeric types not supported

    User contributions
    ~~~~~~~~~~~~~~~~~~

    20 Nov  Volker Stoltz
            Free BSD compilation script

    17Apr03 Michael Burbidge
            mburbidg@adobe.com
            Makefile changes for Mac OS X build...
            galax/2003q2/000207.html

    Bugs
    ~~~~

    Date:   Reported By:               Locus:          Fixed by:   Test:
    —–   ————               ——          ———   —–
    30Jul03 Michael Burbridge          MacOSX
            galax/2003q3/000304.html
            glx_serialize_to_file doesn’t work

    06Nov02	Trevor Jim                 Error messages               galax-bugs/error.xq
            <trevor@research.att.com>
            galax/2002q4/000066.html

    17Nov02 Michael Good               Win32 distribution
            galax/2002q4/000077.html

    03Dec02	Bard Bloom                 Error messages               General error messages
            <bardb@us.ibm.com>
            galax/2002q4/000090.html

    28Feb03 Bronneberg EM              Parsing
            <embronne@cs.vu.nl>
            galax/2003q1/000144.html
            Parse error in function definitions

    06Mar03 Bard Bloom                 Windows installation
            <bardb@us.ibm.com>
            galax/2003q1/000147.html
            Spaces in path to Galax installation

    07Mar03 Palmer, Jim                Windows installation
            jim.palmer@certive.com
            galax/2003q2/thread.html

    10Apr03 Torsten Grust              Static typing
            Torsten.Grust@uni-konstanz.de
            galax/2003q2/000183.html
            Semantics of XPath axes and attributes

    10Apr03 Sima Kdoshim               Parsing
            sigik@alum.cs.huji.ac.il
            galax/2003q2/thread.html
            Parsing entities in DTDs