code: private PropertyData propertyData(QPath parentPath, ResultSet item) throws RepositoryException, SQLException,
        IOException
     {
        String cid = item.getString(COLUMN_ID);
        String cname = item.getString(COLUMN_NAME);
        int cversion = item.getInt(COLUMN_VERSION);
        String cpid = item.getString(COLUMN_PARENTID);
        int cptype = item.getInt(COLUMN_PTYPE);
        boolean cpmultivalued = item.getBoolean(COLUMN_PMULTIVALUED);
  
        try
        {
           InternalQName qname = InternalQName.parse(cname);
  
           QPath qpath = QPath.makeChildPath(parentPath == null ? traverseQPath(cpid) : parentPath, qname);
  
           PersistedPropertyData pdata =
              new PersistedPropertyData(getIdentifier(cid), qpath, getIdentifier(cpid), cversion, cptype, cpmultivalued,
                 new ArrayList<ValueData>(), new SimplePersistedSize(0));
  
           return pdata;
        }
        catch (InvalidItemStateException e)
        {
           throw new InvalidItemStateException("FATAL: Can't build property path for name " + cname + " id: "
              + getIdentifier(cid) + ". " + e);
        }
        catch (IllegalNameException e)
        {
           throw new RepositoryException(e);
        }
     }
docs: Read property data without value data. For listChildPropertiesData(NodeData).
  
  @param parentPath
  - parent path
  @param item
  database - ResultSet with Item record(s)
  @return PropertyData instance
  @throws RepositoryException
  Repository error
  @throws SQLException
  database error
  @throws IOException
  I/O error