private QueryParamsDataMap()
  {
  }
@Test
  public void testNestedCases() throws Exception
  {
    String testQS = "ids[0].keys[0].part1=part001&ids[0].keys[0].part2=part002&" +
                    "ids[0].keys[1].part1=part011&ids[0].keys[1].part2=part012&" +
                    "ids[1].keys[0].part1=part101&ids[1].keys[0].part2=part102&" +
                    "ids[1].keys[1].part1=part111&ids[1].keys[1].part2=part112&";
    DataMap queryParamsDataMap = queryParamsDataMap(testQS);
    Object ids = queryParamsDataMap.get("ids");
    Assert.assertTrue(ids instanceof DataList);
    DataList idsList = (DataList)ids;
    Object id = idsList.get(0);
    Assert.assertTrue(id instanceof DataMap);
    DataMap idDataMap = (DataMap)id;
    Object keys = idDataMap.get("keys");
    Assert.assertTrue(keys instanceof DataList);
    DataList keysList = (DataList)keys;

    Object parts = keysList.get(0);
    Assert.assertTrue(parts instanceof DataMap);
    DataMap partsDataMap = (DataMap)parts;
    Assert.assertEquals("part001", partsDataMap.get("part1"));
    Assert.assertEquals("part002", partsDataMap.get("part2"));

    parts = keysList.get(1);
    Assert.assertTrue(parts instanceof DataMap);
    partsDataMap = (DataMap)parts;
    Assert.assertEquals("part011", partsDataMap.get("part1"));
    Assert.assertEquals("part012", partsDataMap.get("part2"));

    id = idsList.get(1);
    Assert.assertTrue(id instanceof DataMap);
    idDataMap = (DataMap)id;
    keys = idDataMap.get("keys");
    Assert.assertTrue(keys instanceof DataList);
    keysList = (DataList)keys;

    parts = keysList.get(0);
    Assert.assertTrue(parts instanceof DataMap);
    partsDataMap = (DataMap)parts;
    Assert.assertEquals("part101", partsDataMap.get("part1"));
    Assert.assertEquals("part102", partsDataMap.get("part2"));

    parts = keysList.get(1);
    Assert.assertTrue(parts instanceof DataMap);
    partsDataMap = (DataMap)parts;
    Assert.assertEquals("part111", partsDataMap.get("part1"));
    Assert.assertEquals("part112", partsDataMap.get("part2"));
  }