code: private Set<QName> propertyNames(HierarchicalProperty body)
     {
        HashSet<QName> names = new HashSet<QName>();
  
        HierarchicalProperty propBody = body.getChild(PropertyConstants.DAV_ALLPROP_INCLUDE);
  
        if (propBody != null)
        {
           names.add(PropertyConstants.DAV_ALLPROP_INCLUDE);
        }
        else
        {
           propBody = body.getChild(0);
        }
  
        List<HierarchicalProperty> properties = propBody.getChildren();
        Iterator<HierarchicalProperty> propIter = properties.iterator();
        while (propIter.hasNext())
        {
           HierarchicalProperty property = propIter.next();
           names.add(property.getName());
        }
  
        return names;
     }
docs: Returns the set of properties names.
  
  @param body request body.
  @return the set of properties names.