The following module was proposed for inclusion in the Module List: modid: CGI::ValidOp DSLIP: adpOp description: Simple validation of CGI params & runmodes userid: LEGLESS (Randall Hansen) chapterid: 15 (World_Wide_Web_HTML_HTTP_CGI) communities: A wiki at: http://sonofhans.net/cgi-validop/kwiki; if there's enough interest I'll setup a mailing list.
similar: CGI::AppToolkit CGI::Application CGI::Application::RM Data::FormValidator CGI::Validate Params::Check CGI::Untaint CGI::ArgChecker String::Checker rationale: I have a longish page on the module's Wiki (http://sonofhans.net/cgi-validop/kwiki/index.cgi?SimilarModules) that reviews all of the afore-mentioned related modules in some detail. Trying to err on the side of not clogging the list with minutiae, I'll reproduce only my conclusions here: It seems to me that no existing modules combine CGI::ValidOp's best features: - Easy-to-learn and simple API. - Relation of parameters to run-modes/operations. - Minimal usage is easy and useful; complex usage is easy and powerful. - Robust set of validation criteria (e.g. max/min length, data type, required/optional, custom error messages). - Validation defaults settable on many levels to minimize repetition. - Extensible validation with coderefs or regexes. - Error messages on a per-parameter basis; also available globally. Other modules do similar parsing, and perhaps do it better. These are good candidates for subclassing or integration, but don't affect the namespace of CGI::ValidOp or its usefulness as a standalone module. The name itself -- ValidOp -- sounds good to me, but I'm open to suggestions. CGI::Validate is a good module, and I could perhaps instantiate it individually for each operation/runmode, but see the 'Challenges to integration' section. In a perfect world, CGI::ValidOp could perhaps be CGI::Validate::Op, but this would require many changes in scope and philosophy to both modules. I'll start a conversation with Byron, CGI::Validate's author, so we'll see how it goes. enteredby: LEGLESS (Randall Hansen) enteredon: Mon Sep 29 01:37:52 2003 GMT The resulting entry would be: CGI:: ::ValidOp adpOp Simple validation of CGI params & runmodes LEGLESS Thanks for registering, -- The PAUSE PS: The following links are only valid for module list maintainers: Registration form with editing capabilities: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=72500000_1de2b3835920f49c&SUBMIT_pause99_add_mod_preview=1 Immediate (one click) registration: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=72500000_1de2b3835920f49c&SUBMIT_pause99_add_mod_insertit=1