Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Parameter supplying an Attribute, needs to know which Parameter is supplying the schema (so we can show a nice drop-down list)
  • Parameters that are required to work together in a group
  • Parameters that are exclusive (only one can be used in a group)

Original email:

I would like to propose two simple modifications to the Parameter class, to enhance the semantics of geoprocesses. They both can be implemented as new hints, and made available through the DescribeParameter annotation - A hint describing dependence of one parameter to another. The most typical use for that would be to indicate the relation between a String parameter representign and attribute and a FeatureCollection. That would allow the user interface to make it easier for the user to select the field, as it could be taken from the list of available ones for the selected FC - A hint describing the group of optional one a parameter belongs to. Some processes have a set of 2 or 3 parameters, from which just one has to be used (see the ContourProcess for example). If these grouping is not explicitly described, the UI will let the user fill all parameters or none of them, instead of enforcing using only one of them. As you can see, it is a very simple thing, but I think that would add more robustness to the process semantics. Adapting existing processes to this change is trivial and should take little time to do. Looking forward to knowing your opinion on this. Regards
Wiki Markup
Panel
bgColor#CCCCFF


I would like to propose two simple modifications to the Parameter class, to enhance the semantics of geoprocesses. They both can be implemented as new hints, and made available through the DescribeParameter annotation

- A hint describing dependence of one parameter to another. The most typical use for that would be to indicate the relation between a String parameter representign and attribute and a FeatureCollection. That would allow the user interface to make it easier for the user to select the field, as it could be taken from the list of available ones for the selected FC

- A hint describing the group of optional one a parameter belongs to. Some processes have a set of 2 or 3 parameters, from which just one has to be used (see the ContourProcess for example). If these grouping is not explicitly described, the UI will let the user fill all parameters or none of them, instead of enforcing using only one of them.

As you can see, it is a very simple thing, but I think that would add more robustness to the process semantics. Adapting existing processes to this change is trivial and should take little time to do.

Looking forward to knowing your opinion on this.

Regards

Victor

 

Here are the code examples.

...

Exclusive

Code Block
titleExclusive
languagejava
Parameter<Double> interval= new Parameter<Double>("interval", Double.class, "Interval ",
   "Interval between contour values (ignored if levels parameter is supplied)",
   false, 10, 1, new KVP( GROUP, "contours", INTERACTION, "exclusive") );
Parameter<Double[]> levels= new Parameter<Double[]>("levels", Double[].class, "Fixed contour elevations",
   "Values of levels at which to generate contours",
   false, 10, null1, new KVP( GROUP, "contours", INTERACTION, "exclusive") );

Enable

...