Index: trunk/gsdl/perllib/classify/AZCompactList.pm
===================================================================
--- trunk/gsdl/perllib/classify/AZCompactList.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/AZCompactList.pm	(revision 6968)
@@ -62,5 +62,5 @@
 	'reqd' => "yes" },
       { 'name' => "buttonname",
-  	'desc' => "{AZCompactList.buttonname}",
+  	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "{BasClas.metadata.deft}",
@@ -127,21 +127,4 @@
 	'args'     => $arguments };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify AZCompactList -metadata X [options]
-#    options:
-#     -metadata X            (required) Metadata field used for classification
-#     -buttonname X          Title to use on web pages (defaults to metadata)
-#     -removeprefix regex    pattern to remove from metadata before sorting
-#     -doclevel top|section  (Defaults to top)
-#     -freqsort              Sort by node frequency rather than alpha-numeric
-#     -mingroup N            Minimum num of documents required to form a new group
-#     -minnesting N          Minimum list size to become a nested list
-#     -mincompact N          Used in compact list
-#     -maxcompact N          Used in compact list
-#     -onlyfirst             Only use the first value if metadata is repeated.
-#     -recopt
-#  ";
-#  }
 
 sub new {
@@ -153,4 +136,8 @@
     push( @{$option_list}, $options );
 
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
 
     my ($metaname, $title, $removeprefix, $removesuffix);
Index: trunk/gsdl/perllib/classify/AZCompactSectionList.pm
===================================================================
--- trunk/gsdl/perllib/classify/AZCompactSectionList.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/AZCompactSectionList.pm	(revision 6968)
@@ -29,4 +29,9 @@
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );
+
+    #if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+    #return bless $self, $class;
+    #}
 
     return bless $self, $class;
Index: trunk/gsdl/perllib/classify/AZList.pm
===================================================================
--- trunk/gsdl/perllib/classify/AZList.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/AZList.pm	(revision 6968)
@@ -43,5 +43,5 @@
 	'reqd' => "yes" } ,
       { 'name' => "buttonname",
-  	'desc' => "{AZList.buttonname}",
+  	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "{BasClas.metadata.deft}",
@@ -73,4 +73,8 @@
     push( @{$option_list}, $options );
     
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
     my ($metadata, $title, $removeprefix, $removesuffix);
     
Index: trunk/gsdl/perllib/classify/AZSectionList.pm
===================================================================
--- trunk/gsdl/perllib/classify/AZSectionList.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/AZSectionList.pm	(revision 6968)
@@ -51,5 +51,5 @@
 	'reqd' => "yes" },
       { 'name' => "buttonname",
-  	'desc' => "{AZList.buttonname}",
+  	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "{BasClas.metadata.deft}",
@@ -62,21 +62,4 @@
 		'args'     => $arguments };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify AZSectionList [options]
-#    options:
-
-#    -metadata X    (required) Metadata field used for classification,
-#                    list will be sorted by this element.
-
-#    -buttonname X  (OPTIONAL) Title field for this classification.
-#                    if not included title field will be Metaname. 
-
-#    -removeprefix regex A prefix to ignore in the Metadata values
-#                        for the field when sorting.
-#  This is very similar to AZList except it sorts by section level metadata
-#  (excluding the top level) instead of just top level metadata.
-#  ";
-#  }
 
 sub new {
@@ -87,4 +70,9 @@
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );
+    
+    #if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+    #	return bless $self, $class;
+    #}
 
     return bless $self, $class;
Index: trunk/gsdl/perllib/classify/BasClas.pm
===================================================================
--- trunk/gsdl/perllib/classify/BasClas.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/BasClas.pm	(revision 6968)
@@ -219,4 +219,5 @@
     
     $self->{'option_list'} = [ $options ];
+    my $gsdlinfo;
 
     # general options available to all classifiers
@@ -226,4 +227,5 @@
 			 q^verbosity/\d/2^, \$self->{'verbosity'},
 			 q^ignore_namespace^, \$self->{'ignore_namespace'},
+			 q^gsdlinfo^, \$gsdlinfo,
 			 "allow_extra_options")) {
 
@@ -233,4 +235,9 @@
     }
 
+    if ($gsdlinfo) {
+	# created from classinfo.pl - set this so subclasses don't need to 
+	# parse the arguments
+	$self->{'info_only'} = 1;
+    }
     return bless $self, $class;
 }
Index: trunk/gsdl/perllib/classify/Browse.pm
===================================================================
--- trunk/gsdl/perllib/classify/Browse.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/Browse.pm	(revision 6968)
@@ -40,10 +40,4 @@
 		'inherits' => "yes" };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify Browse
-#    This classifier has no options (yet).
-#  ";
-#  }
 
 sub new {
@@ -54,4 +48,9 @@
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );  
+
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
 
     # classifier information
Index: trunk/gsdl/perllib/classify/Collage.pm
===================================================================
--- trunk/gsdl/perllib/classify/Collage.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/Collage.pm	(revision 6968)
@@ -24,23 +24,7 @@
 ###########################################################################
 
-# simple list classifier plugin 
-# options are:
-# metadata=Metaname -- (optional) all documents with Metaname metadata
-#                      will be included in list. if not included all documents
-#                      will be included in list.
-# sort=Meta         -- (optional) sort documents in list alphabetically by
-#                      Meta. by default it will sort by Metaname, if neither
-#                      are set documents will be in build (random) order.
-#                      Meta may be Filename to sort by original filename or
-#                      nosort to force not to sort
-# buttonname=Title  -- (optional) the title field for this classification.
-#                      if not included title field will be Metaname. 
-#                      if metadata is also not included title will be 'List'
-
-# 12/05/02 Added usage datastructure - John Thompson
+package Collage;
 
 use BasClas;
-package Collage;
-
 use sorttools;
 
@@ -51,7 +35,7 @@
 my $arguments = 
     [ { 'name' => "buttonname",
-  	'desc' => "{Collage.buttonname}",
+  	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
-	'deft' => "Metadata element specified with -metadata",
+	'deft' => "Collage",
 	'reqd' => "no" }];
 
@@ -61,13 +45,4 @@
 		'args'     => $arguments };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify List [options]
-#    options:
-
-#     -buttonname X  (optional) Title field for this classification.
-#                    if not included title field will be Metaname. 
-#  ";
-#  }
 
 sub new {
@@ -75,7 +50,11 @@
     my $self = new BasClas($class, @_);
 
-    # 14-05-02 To allow for proper inheritance of arguments - John Thompson
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );
+
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }   
 
     my ($title, $list);
Index: trunk/gsdl/perllib/classify/DateList.pm
===================================================================
--- trunk/gsdl/perllib/classify/DateList.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/DateList.pm	(revision 6968)
@@ -86,4 +86,9 @@
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );
+
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
 
     $self->{'list'} = {};
Index: trunk/gsdl/perllib/classify/HTML.pm
===================================================================
--- trunk/gsdl/perllib/classify/HTML.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/HTML.pm	(revision 6968)
@@ -26,10 +26,4 @@
 # html classifier plugin - creates an empty classification
 # that's simply a link to a web page
-# options are:
-# buttonname=Title  -- (optional) the title field for this classification.
-#                      if not included title field 'Browse'
-# url=url           -- the url of the web page to link to
-
-# 12/05/02 Added usage datastructure - John Thompson
 
 package HTML;
@@ -47,5 +41,5 @@
 	'reqd' => "yes" } ,
       { 'name' => "buttonname",
-	'desc' => "{HTML.buttonname}",
+	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "Browse",
@@ -58,16 +52,4 @@
 		'args'     => $arguments };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify AZList [options]
-#    options:
-#     -url X         The url of the web page to link to.
-#     -buttonname X  (optional) the title field for this classification.
-#                    The default is 'Browse'
-
-#  HTML classifier plugin - creates classifier that is a link to a web page
-
-#  ";
-#  }
 
 sub new {
Index: trunk/gsdl/perllib/classify/Hierarchy.pm
===================================================================
--- trunk/gsdl/perllib/classify/Hierarchy.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/Hierarchy.pm	(revision 6968)
@@ -25,19 +25,4 @@
 
 # classifier plugin for generating hierarchical classifications
-
-# options for this classifier are:
-# -hfile file.txt    - classification file
-# -metadata Metaname - metadata field to test against file.txt
-# -sort Meta         - this option is optional (genious;-). by default this 
-#                     classifier will sort documents within each section 
-#                     alphabetically by Title. sort=nosort prevents sorting 
-#                     (i.e. documents will end up in build order), sort=Meta 
-#                     will sort each field alphabetically by Meta (Meta may 
-#                     also be 'Filename' to sort by the original filename).
-# -buttonname Title  - another optional field. this is what will end up in the
-#                     Title field for this classification. if not present it
-#                     defaults to Metaname
-# -hlist_at_top      - use a horizontal list for the top level (i.e. display it
-#                     like an AZList classification)
 
 # 12/05/02 Added usage datastructure - John Thompson
@@ -66,5 +51,5 @@
 	'reqd' => "yes" },
       { 'name' => "buttonname",
-  	'desc' => "{Hierarchy.buttonname}",
+  	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "{BasClas.metadata.deft}",
@@ -87,26 +72,4 @@
 	'args'     => $arguments };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify Hierarchy [options]
-#    options:
-
-#     -buttonname X  Title field for this classification.
-#                    Defaults to metadata name. 
-
-#     -metadata X    Metadata field used for classification,
-#                    list will be sorted by this element, 
-#                    unless -sort is used.
-
-#     -hfile X       The classification structure file
-
-#     -sort X        Metadata field to sort by (defaults to -metadata)
-#                    use '-sort nosort' for no sorting.
-
-#     -hlist_at_top  Display the first level of the classification
-#                    horizontally.
-#  ";
-#  }
-
 
 sub new {
@@ -114,8 +77,12 @@
     my $self = new BasClas($class, @_);
  
-    # 14-05-02 To allow for proper inheritance of arguments - John Thompson
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );
-   
+ 
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
+ 
     my ($hfile, $metadata, $sortname, $title, $hlist_at_top);
     
Index: trunk/gsdl/perllib/classify/List.pm
===================================================================
--- trunk/gsdl/perllib/classify/List.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/List.pm	(revision 6968)
@@ -42,5 +42,5 @@
 	'reqd' => "no" },
       { 'name' => "buttonname",
-  	'desc' => "{List.buttonname}",
+  	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "{BasClas.metadata.deft}",
@@ -66,4 +66,9 @@
     my $option_list = $self->{'option_list'};
     push( @{$option_list}, $options );
+
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
 
     my ($metadata, $title, $sortname, $list);
Index: trunk/gsdl/perllib/classify/Phind.pm
===================================================================
--- trunk/gsdl/perllib/classify/Phind.pm	(revision 6967)
+++ trunk/gsdl/perllib/classify/Phind.pm	(revision 6968)
@@ -94,6 +94,6 @@
 	'deft' => "Title",
 	'reqd' => "no" },
-      { 'name' => "button",
-	'desc' => "{Phind.button}",
+      { 'name' => "buttonname",
+	'desc' => "{BasClas.buttonname}",
 	'type' => "string",
 	'deft' => "Phrase",
@@ -134,43 +134,4 @@
 		'args'     => $arguments };
 
-#  sub print_usage {
-#      print STDERR "
-#    usage: classify Phind [options]
-
-#    options:
-#     -text Fields    The text used to build the phrase hierarchy.
-#                     (default: 'section:Title,section:text')
-
-#     -title Title    The metadata field used to describe each document.
-#                     (default: 'Title')
-
-#     -button Name    The label for the classifier screen and button in
-#                     navigation bar. 
-#                     (default: 'Phrase')
-
-#     -language Regex Language or languages to use building hierarchy.
-#                     Languages are identified by two-letter country codes
-#                     like en (English), es (Spanish), and fr (French).
-#                     Language is a regular expression, so 'en|fr' (English or
-#                     French) and '..' (match any language) are valid.
-#                     (default: 'en'.)
-
-#     -savephrases File If set, the phrase infomation will be stored in 
-#                       the given file as text. It is probably a good idea 
-#                       to use an absolute path. 
-#                       (default: not set)
-
-#     -suffixmode N   The smode parameter to the phrase extraction program.  A
-#                     value of 0 means that stopwords are ignored, and of 1
-#                     means that stopwords are used.
-#                     (default: 1)
-
-#     -thesaurus Name Name of a thesaurus stored in Phind format in the
-#                     collection's etc directory.
-#                     (default: not set)
-
-#     -untidy         Don't remove working files.
-
-#  "; }
 
 # Phrase delimiter symbols - these should be abstracted out someplace
@@ -193,4 +154,9 @@
     push( @{$option_list}, $options );
 
+    if ($self->{'info_only'}) {
+	# created from classinfo.pl - don't need to parse the arguments
+	return bless $self, $class;
+    }
+
     my $out = $self->{'outhandle'};
 
@@ -210,5 +176,5 @@
 			 q^text/.*/section:Title,section:text^, \$self->{'indexes'},
 			 q^title/.*/Title^, \$self->{'titlefield'},
-			 q^button/.*/Phrase^, \$self->{'buttonname'},
+			 q^buttonname/.*/Phrase^, \$self->{'buttonname'},
 			 q^language/.*/en^, \$language,
 			 q^builddir/.*/^, \$builddir,
