+ "FILTER=(<Filter xmlns:gml='http://www.opengis.net/gml'><Within><PropertyName>location</PropertyName><gml:Box><gml:coordinates>10,10 20,20</gml:coordinates></gml:Box></Within></Filter>)(<Filter xmlns:gml='http://www.opengis.net/gml'><Within><PropertyName>location</PropertyName><gml:Box><gml:coordinates>10,10 20,20</gml:coordinates></gml:Box></Within></Filter>)";
TransactionRequest baseRequest = new TransactionRequest();
baseRequest.setVersion("1.0.0");
DeleteRequest internalRequest1 = new DeleteRequest();
internalRequest1.setTypeName("rail");
//baseRequest.setReleaseAction(true);
// make base comparison objects
GeometryFilter filter = factory.createGeometryFilter(AbstractFilter.GEOMETRY_WITHIN);
AttributeExpression leftExpression = factory.createAttributeExpression((AttributeType)null);
leftExpression.setAttributePath("location");
// Creates coordinates for the linear ring
Coordinate[] coords = new Coordinate[5];
coords[0] = new Coordinate(10, 10);
coords[1] = new Coordinate(10, 20);
coords[2] = new Coordinate(20, 20);
coords[3] = new Coordinate(20, 10);
coords[4] = new Coordinate(10, 10);
LinearRing outerShell = new LinearRing(coords, new PrecisionModel(), 0);
Polygon polygon = new Polygon(outerShell, new PrecisionModel(), 0);
LiteralExpression rightExpression = factory.createLiteralExpression(polygon);
filter.addLeftGeometry(leftExpression);
filter.addRightGeometry(rightExpression);
internalRequest1.setFilter(filter);
DeleteRequest internalRequest2 = new DeleteRequest();
internalRequest2.setTypeName("roads");
internalRequest2.setFilter(filter);
baseRequest.addSubRequest(internalRequest1);
baseRequest.addSubRequest(internalRequest2);
// run test