org.z3950.zing.cql
Class CQLTermNode

java.lang.Object
  |
  +--org.z3950.zing.cql.CQLNode
        |
        +--org.z3950.zing.cql.CQLTermNode

public class CQLTermNode
extends CQLNode

Represents a terminal node in a CQL parse-tree. A term node consists of the term String itself, together with, optionally, a qualifier string and a relation. Neither or both of these must be provided - you can't have a qualifier without a relation or vice versa.

Version:
$Id: CQLTermNode.java,v 1.8 2002/11/06 20:13:45 mike Exp $

Constructor Summary
CQLTermNode(java.lang.String qualifier, CQLRelation relation, java.lang.String term)
          Creates a new term node with the specified qualifier, relation and term.
 
Method Summary
 java.lang.String getQualifier()
           
 CQLRelation getRelation()
           
 java.lang.String getTerm()
           
 java.lang.String toCQL()
          Decompiles a parse-tree into a CQL query.
 java.lang.String toPQF(java.util.Properties config)
          Renders a parse-tree into a Yaz-style PQF string.
 java.lang.String toXCQL(int level)
          Translates a parse-tree into an XCQL document.
 
Methods inherited from class org.z3950.zing.cql.CQLNode
indent, xq
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CQLTermNode

public CQLTermNode(java.lang.String qualifier,
                   CQLRelation relation,
                   java.lang.String term)
Creates a new term node with the specified qualifier, relation and term. The first two may be null, but the term may not.
Method Detail

getQualifier

public java.lang.String getQualifier()

getRelation

public CQLRelation getRelation()

getTerm

public java.lang.String getTerm()

toXCQL

public java.lang.String toXCQL(int level)
Description copied from class: CQLNode
Translates a parse-tree into an XCQL document.

Overrides:
toXCQL in class CQLNode
Following copied from class: org.z3950.zing.cql.CQLNode
Parameters:
level - The number of levels to indent the top element of the XCQL document. This will typically be 0 when invoked by an application; it takes higher values when this method is invoked recursively for nodes further down the tree.
Returns:
A String containing an XCQL document equivalent to the parse-tree whose root is this node.

toCQL

public java.lang.String toCQL()
Description copied from class: CQLNode
Decompiles a parse-tree into a CQL query.

Overrides:
toCQL in class CQLNode
Following copied from class: org.z3950.zing.cql.CQLNode
Returns:
A String containing a CQL query equivalent to the parse-tree whose root is this node, so that compiling that query will yield an identical tree.

toPQF

public java.lang.String toPQF(java.util.Properties config)
                       throws PQFTranslationException
Description copied from class: CQLNode
Renders a parse-tree into a Yaz-style PQF string. PQF, or Prefix Query Format, is a cryptic but powerful notation that can be trivially mapped, one-to-one, int Z39.50 Type-1 and Type-101 queries. A specification for the format can be found in Chapter 7 (Supporting Tools) of the YAZ manual.

Overrides:
toPQF in class CQLNode
Following copied from class: org.z3950.zing.cql.CQLNode
Returns:
A String containing a PQF query equivalent to the parse-tree whose root is this node. This may be fed into the tool of your choice to obtain a BER-encoded packet.