New
[cql-java-moved-to-github.git] / Changes
diff --git a/Changes b/Changes
index 06d0cee..4441afe 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,32 +1,80 @@
-$Id: Changes,v 1.26 2002-12-09 17:01:03 mike Exp $
+$Id: Changes,v 1.46 2008-05-28 10:03:53 mike Exp $
 
 Revision history for the CQL-Java package.
 See the bottom of this file for a list of things still to do.
 
-0.5  (IN PROGRESS, currently at RC1)
+The work for releases 1.0, 1.2 and 1.2.1 was sponsored by the National
+Library of Australia, whose help we gratefully acknowledge.
+
+1.3  Wed May 28 11:02:00 BST 2008
+       - Add getSortIndexes() to CQLSortNode, as suggested by Marcel
+         Versteeg <Marcel.Versteeg@KB.nl>
+
+1.2.1  Mon Aug  6 16:54:54 BST 2007
+       - Contructors for the CQLParser class are made public (as they
+         should have been all along).
+
+1.2  Tue Jul  3 17:53:28 BST 2007
+       - Support for CQL version 1.2 as described at
+               http://www.loc.gov/standards/sru/next-version.html
+         The most significant part of the v1.2 change is support for
+         sorting, but as of this writing (29th June) the official SRU
+         maintenance agency web site at  
+               http://www.loc.gov/standards/sru/index.html
+         does not include any specification for CQL sorting.
+         Therefore the original proposal at
+               http://zing.z3950.org/cql/sorting.html
+         is still considered canonical.
+
+1.0 Fri Jun 29 14:10:28 BST 2007
+       - Support for version 1.1 as described at
+               http://www.loc.gov/standards/sru/specs/cql.html
+         Since this is a significant leap forward, the version
+         numbering increases to the next major version.
+       - "Qualifiers" renamed as "indexes" throughout, to match what
+         is now universal CQL terminology.
+
+       PLEASE NOTE THE FOLLOWING INCOMPATIBLE API CHANGES
+       - The class UnknownQualifierException is replaced by
+         UnknownIndexException.
+       - The CQLTermNode method getQualifier() is replaced by
+         getIndex().
+
+0.7  Thu Sep  4 22:51:11 2003
+       - Support for profiled relations and relation modifiers:
+         recognise any non-key word as a relation or modifier, 
+         rejecting those that are not of the form <prefix>.<name>
+         since these must be explicitly tied to a "context" (what
+         used to be called a qualifier-set or index-set).
+
+0.6  Tue Jul 29 23:33:56 2003
+       - Include Ralph's fix for CQLTermNode::toType1BER() to prevent
+         it surrounding multi-word terms in quotes when encoded into
+         BER packet.
+
+0.5  Wed Feb  5 15:50:57 2003
        - Add an extra back-end method,
-               byte[] toType1(Properties config)
+               byte[] toType1BER(Properties config)
          which generates an opaque BER-encoded PDU suitable for
          forwarding to Z39.50 server as a pasrt of a searchRequest
          APDU.  This was contributed by Ralph Levan <levan@oclc.org>
+       - Add srw.resultSet support to the toPFQ() method.
+       - Add new resultSetName() method to CQLNode and its
+         subclasses, returning the name of the referenced result-set
+         for a node that is just a result-set reference, and null for
+         anything else.
        - Change regression-test rules for Adam's compiler to use his
          new front-end cql2xcql instead of the old cqlparse3.
        - Change the names of the anchoring properties in
          etc/pqf.properties and the CQLTermNode code that examines
          them, in accordance with Adam's PQF-renderer's behaviour.
          This gives more flexibility in terms of generating
-         attributes for end-of-field anchoring.
-       - Fix comment in etc/pqf.properties (claimed that the Type-1
-         "string" attribute was "phrase").  Just a documentation
-         error.
+         attributes for end-of-field anchoring.  Various other minor
+         tweaks to the pqf.properties file, mostly to the comments.
        - Change the capitalisation of the project name from
          "cql-java" to "CQL-Java".  That doesn't really make any
          difference to anything: in particular, file-names such as
          "cql-java.jar" remain the same.
-       - Recreate last-in-field support
-       - Add srw.resultSet support to the toPFQ() method.  I've not
-         attempted this for the toType1() method: Ralph will have to
-         do it.
 
 0.4  Thu Nov 21 10:09:26 2002
        - Add support for the new "phonetic" relation modifier,
@@ -114,6 +162,18 @@ See the bottom of this file for a list of things still to do.
 --
 
 ### Still to do
+       - Test-harness option to use Type1 BER back-end.
+       - Case-insensitive matching for serverChoice and any other
+         special-case qualifiers.  (Are the configured qualifiers
+         matched case-insensitively?  They should be.)
+       - Prefix-aware matching for serverChoice, so that
+         >x="http://www.loc.gov/zing/srw/dc-indexes/v1.0/" x.resultSet=foo
+         does the right thing.
+       - Extend test-suite for PQF and BER renderers.
+       - Additional test-suite entries for things like
+         case-sensitivity.
+       - Add a new configuration file that allows arbitrary new
+         relations and relation modifiers to be defined.
        - Fix the bug where "9x" is parsed as two tokens, a TT_NUMBER
          followed by a TT_WORD.  The problem here is that I don't
          think it's actually possible to fix this without throwing
@@ -134,3 +194,4 @@ See the bottom of this file for a list of things still to do.
          * Generate multi-word terms
          * Generate prefix-mappings
 
+