1. removed the call to QuerySpecification.printAttributeSQL() from QuerySpecification.printExtendedSQL()2. in QuerySpecification.printExtendedSQL() if ( returnFieldList.size() == 0 ) then it returns null3. DBQuery.addReturnfield() doesnt execute the element query if printExtendedSQL returns null
A minor change from containAtrributeReturnField to containsAttributeReturnField
I've added in a test in QuerySpecification.printExtendedSQL that checksto see if attributes, and sometimes only attributes, are in the originalreturnfield request. If so, the printAttributeQuery is called.
Changed the handleReturnField() method so that it handles path expressions withonly attributes in the path.
Added a check if printAttributeQuery() for returnPath to see that it is not null so that that this doesnt happen
xml_index.path like 'null' AND xml_nodes.nodename like 'id'
Fixed a bug in previous commit
Modified code for computing the returnfield string - earlier only elements were used to construct the string. e.g. /dataset/titleNow attributes are also added to the returnfield. e.g. title/@id
Replaced 1.4.0 with release
release
When a path expression includes element content and attribute content, thenthe SQL generated needs to search for attribute nodetypes with parentnodenames equal to the path expression element content. However, whenonly searching for attribute content (such as just @packageId), then...
When searching for attributes in the XPATH expression, an 'index out of bounds'exception was thrown when only an attribute was included in the path string.
This fix changes the pathexpr.indexOf comparison to 0 rather than 1, sincethe index starts at 0....
View revisions
Also available in: Atom