Skip to Content.
Sympa Menu

grouper-dev - Re: [grouper-dev] Grouper design call, Wednesday, 26 Jan 2005, 1200EST (1700Z), 60 minutes

Subject: Grouper Developers Forum

List archive

Re: [grouper-dev] Grouper design call, Wednesday, 26 Jan 2005, 1200EST (1700Z), 60 minutes

Chronological Thread 
  • From: "GW Brown, Information Systems and Computing" <>
  • To:
  • Subject: Re: [grouper-dev] Grouper design call, Wednesday, 26 Jan 2005, 1200EST (1700Z), 60 minutes
  • Date: Thu, 27 Jan 2005 14:56:40 +0000

--On 26 January 2005 08:50 -0800 blair christensen <> wrote:

On 2005.01.26 10:20, GW Brown, Information Systems and Computing wrote:
If there is time I would like to start a discussion about data
validation. It is relevant to base groups / stems since a site may want
to apply its own business rules as to valid names, but becomes more
important with custom groups where complex rules may apply to
combinations of attribute values.

Yeah, I know I've been punting on this one so far but we should
probably get the discussion started.

Do you have any specific examples of validation that you may want or
need to do? That may help frame the requirements.

The sort of things that I am thinking of are dependent attributes e.g. a unit of study may belong to a department which belongs to a faculty. I need to check that each individual unit_code, dept_code and faculty_code exist, but also that dept_code is valid given the faculty_code and that unit_code is valid given the dept_code. Group types might 'modify' the validation.

Where do we put hooks to allow site specific validation?

Some things that come to mind that sites *may* want to apply custom
validation policies to:
- Stem creation (name)
- Group creation (name)
- Attribute add|mod|del
- Member addition (restrict membership to certain subject types?)

Anything else?

I can't think of anything else at the moment. The key thing is that it occurs in the API rather than say the UI since a Loader should be subject to the same validation.

One way of achieving this would be to treat the above as events and to register listeners which can veto the action.

create(GrouperSession s, java.lang.String stem, java.lang.String
extension, java.lang.String type, List attributes)

This, or something like it, is a possibility.

This reminds that an earlier incarnation of Grouper during the months
before 0.5 would have made this trivial -- while making a lot of other
things harder.

It would be nice to have the group + attribute assignment be an atomic process otherwise we could end up with a lot of half finished groups i.e. all the important attributes might not be set. The same may be true of adding members e.g.
listAddVals(GrouperSession s, List groupMembers).

GW Brown, Information Systems and Computing

Archive powered by MHonArc 2.6.16.

Top of Page