code: public List<LayoutProperty> getDataProperties() throws FetchException {
          List<LayoutProperty> all = getAllProperties();
          List<LayoutProperty> data = new ArrayList<LayoutProperty>(all.size() - 1);
          for (LayoutProperty property : all) {
              if (!property.isPrimaryKeyMember()) {
                  data.add(property);
              }
          }
          return Collections.unmodifiableList(data);
      }
docs: Returns all the non-primary key properties of this layout, in their
  proper order.