XMLSpecContainer(3pm)

NAME
Lire::XMLSpecContainer - Base clase for XML report and filter specifications

SYNOPSIS
  use base qw/Lire::XMLSpecContainer/;

DESCRIPTION
This is the base class for Lire::ReportSpec and Lire::FilterSpec which are XML specifications used to compute reports. This man page document the attributes common to both type of specification.

  id( [ $new_id ] )
Returns the type id of this specification. It $new_id is set, it will change the id of the specification.

  superservice( [ $new_superservice ] )
Returns the superservice (aka base DLF schema) used by this specification. It $new_superservice is set, it will change the superservice of the specification.

  schema( [ $new_schema ] )
Returns the Lire::DLfSchema object used by this specification. This can be the superservice or any of its Lire::ExtendedSchema or Lire::DerivedSchema.

If $new_schema is a string, the specification's schema will be changed to that schema. If $new_schema is undef, the base DlfSchema (aka superservice) will be used.

  joined_schemas( [ $new_schemas ] )
Returns as an array reference, the list of schemas that are joined in this specification.

If $new_schemas is set, the list of joined schemas will be changed to that list. This is an array reference of schema name. All of these schemas should be join compatible with the schema specified in the schema() attribute.

  schemas()
Returns in an array reference all the schemas used by this specification. This will include the base schema as well as any joined schemas.

  has_field( $name )
Returns whether the field named $name is available in this specification's schema or any of its joined schema.

  field( $name )
Returns the Lire::Field object named $name present in one of the specification's joined schema.

  title( [ $new_title ]
This method returns the title of this specification. If $new_title is set, the specification's title will be changed to that value.

The returned value is localized if a translation string is available. The domain used for translation is 'lire-<superservice'.

  description( [ $new_description ]
This method returns the description of this specification. If $new_description is set, the specification's description will be changed to that value. That description is a DocBook string describing the specification's purpose.

The returned value is localized if a translation string is available. The domain used for translation is 'lire-<superservice'.

  display_title( [ $new_title ]
This method returns the title that will be displayed in the generated specification. This value can contains reference to the specification's parameters using the '$name' syntax.

If $new_title is set, the specification's display title will be changed to that value.

The returned value is localized if a translation string is available. The domain used for translation is 'lire-<superservice'.

  display_description( [ $new_description ]
This method returns the description that will be displayed in the generated report. This value can contains reference to the specification's parameters using the '$name' syntax.

If $new_description is set, the specification's description will be changed to that value. That description is a DocBook string describing the specification's purpose.

The returned value is localized if a translation string is available. The domain used for translation is 'lire-<superservice'.

  expanded_display_title()
Returns display_title() with parameters reference expanded.

  expanded_display_description()
Returns display_description() with parameters reference expanded.

  print( $fh )
Prints this specification as XML on $fh.

SEE ALSO
 Lire::ReportSpec(3pm), Lire::FilterSpec(3pm), Lire::XMLSpecParser(3pm)

AUTHORS
  Francis J. Lacoste <flacoste@logreport.org>
  Wolfgang Sourdeau <wolfgang@logreport.org>

VERSION
$Id: XMLSpecContainer.pm,v 1.41 2006/07/23 13:16:30 vanbaal Exp $

COPYRIGHT
Copyright (C) 2001-2004 Stichting LogReport Foundation LogReport@LogReport.org

This file is part of Lire.

Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.