to check a range the Query Object Model of X-Application provides a QueryRange. It is a query item which uses <=,< and >=,> operators for filter expression. In your case the use of QueryRange would
/node[childnode >= date_low and childnode <= date_high]
To use the ?between? operator you could use a QueryFilter.
If the Query Object Model does not fit your requirements there is a way to create a cursor for documents directly. Use the following code:
// define how many document should be returned by on request.
int pagesize = 10;
// load the schema for your query.
Schema nodeSchema = Schema.read(workspace.getStore(), “node”, false);
// name which is used by the cursor to register the current document within the workspace
String name = ?myNodes?;
// create the cursor for query set
BusinessDocumentCursor bdc = new BusinessDocumentCursor ("/node[childnode between date_low, date_high]", workspace, name, nodeSchema, pagesize);
I hope that this will help you to define your queries.