X-Git-Url: http://git.indexdata.com/?p=cql-java-moved-to-github.git;a=blobdiff_plain;f=Changes;h=4441afebb72ad4636b6f88cdcc4ede2e2cd8df92;hp=d369d4fce2625ce2bea41dac2bc442267b1b065e;hb=refs%2Fheads%2Forigin;hpb=35cce503437a2003a10b85b8f277db81f2ae8fa3 diff --git a/Changes b/Changes index d369d4f..4441afe 100644 --- a/Changes +++ b/Changes @@ -1,15 +1,118 @@ -$Id: Changes,v 1.9 2002-11-14 22:12:19 mike Exp $ +$Id: Changes,v 1.46 2008-05-28 10:03:53 mike Exp $ -Revision history for "cql-java" +Revision history for the CQL-Java package. See the bottom of this file for a list of things still to do. -0.3 (IN PROGRESS) +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 + +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 . + 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[] 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 + - 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. 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. + +0.4 Thu Nov 21 10:09:26 2002 + - Add support for the new "phonetic" relation modifier, + including its mapping in "etc/pqf.properties". + - Make prefix-maps bind loosely, so that ``>dc=x a and b'' + applies the dc=x binding to both the ``a'' and ``b'' + sub-queries. + - Change the XCQL output to include the nasty (but official) + and wrapper elements. + - Change the XCQL output to use the nasty (but official) + rendition of prefix-mapping: a element, + containing one of more es may appear at the top + of either a or a . + - Include test/regression/xmlpp.pl in the distribution: this + may now be used for testing whether a CQL compiler produces + _equivalent_ XCQL to what's in the regression test, rather + than requiring byte-identical output. + - Include the reference XCQL output in the distribution, for + the regression test suite to run against. + - Change build process so that javadoc documentation is built + by "make" in the "docs" directory. There's now a top-level + makefile that builds the source, runs the test suite and + creates the documentation. + - Write javadoc comments for CQLRelation and ModifierSet. + - Other improvements to javadoc comments (e.g. describe the + `config' parameter to the toPQF() method.) + - Sort out the licence: I've settled on the LGPL. + - Remove the redundant and misleading etc/Grammar file. + - Fix up various Maintenance Agency web addresses that have + moved in the great ZING-release shake-up. + +0.3 Fri Nov 15 12:04:04 2002 - Allow keywords to be used unquoted as search terms. - Add support for serverChoiceRelation (scr). - Add support for prefix-mapping, as in - >dc="http://dublincore.org/ dc.title=fish + >dc="http://www.loc.gov/zing/cql/dc-indexes/" dc.title=fish and - >"http://dublincore.org/ title=fish + >"http://www.loc.gov/zing/cql/dc-indexes/" dc.title=fish The XCQL generated corresponds to Adam's suggested format rather than Rob's, not so much because I prefer it (although I do) as because it's what fell out when I just Coded What @@ -59,22 +162,28 @@ 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 - out StreakTokenizer and rolling our own, which we absolutely - _don't_ want to do. - - Write javadoc comments for CQLRelation and ModifierSet. - - Write "overview" file for the javadoc documentation. + out StreamTokenizer and rolling our own, which we absolutely + - Fix term-to-PQF translation to omit empty properties + (for the broken Korean server) + - Write "package.html" file for the javadoc documentation. - Some niceties for the cql-decompiling back-end: * Don't emit redundant parentheses. * Don't put spaces around relations that don't need them. - - Consider the utility of yet another back-end that translates - a CQLNode tree into JZKit's representation of a Type-1 query - tree. That would be nice so that CQL could become a JZKit - query-type; but you could achieve the same effect by - generating PQF, and running that through JZKit's existing - PQN-to-Type-1 compiler. - Many refinements to the random query generator: * Generate relation modifiers * Proximity support @@ -83,4 +192,6 @@ See the bottom of this file for a list of things still to do. * Better selection of terms (from a dictionary file?) * Introduce wildcard characters into generated terms * Generate multi-word terms + * Generate prefix-mappings +