distrib
Entry point for “distrib” package validation.
This class of objects is defined by libSBML only and has no direct
equivalent in terms of SBML components. This class is not prescribed by
the SBML specifications, although it is used to implement features
defined in SBML.
- LibSBML implements facilities for verifying that a given SBML document is valid according to the SBML specifications; it also exposes the validation interface so that user programs and SBML Level 3 package authors may use the facilities to implement new validators. There are two main interfaces to libSBML's validation facilities, based on the classes Validator and SBMLValidator.
The DistribValidator class extends the Validator class from core libSBML to apply validation to the constructs introduced by the SBML Level 3 Distributions package. This class then acts as a base class for any validators that apply rules to the “distrib” package specification constructs or to entire models that use the “distrib” package, and may therefore be subject to other global restrictions introduced.
General information about package-specific validators
The general SBMLDocument::checkConsistency() methods that perform validation make use of the libSBML plugin mechanism to invoke the package-specific validators via the relevant document plugin. In the case of a validator such as FbcValidator, QualValidator, and others, the package-specific validator acts on the constructs from the relevant package rather than on core SBML constructs. (However, this does not necessarily mean it does not take into account the whole SBML model—the information needed by a given validator to do its work is up to the validator itself.)
Package-specific validators are invoked when SBMLDocument::checkConsistency() is invoked on the overall SBMLDocument object. As the main validation procedure executes, it passes control to each libSBML package plugin via the plugin's PackageSBMLDocumentPlugin
class, (where Package
is the package prefix, such as Qual
, or Fbc
). These class implement their own consistency-checking functions for rules defined in the relevant SBML Level 3 package.
The package-specific validators obey the same categories of consistency/error checks as are used by the overall SBMLDocument::checkConsistency(). This means that, for example, if identifier validation is turned off, it is turned off in all SBML Level 3 package validators too. See SBMLDocument::setConsistencyChecks() for more information about categories and how to control them.
- See also
- SBMLDocument::checkConsistency()
-
SBMLDocument::checkInternalConsistency()
-
SBMLDocument::setConsistencyChecks()