libSBML C API
libSBML 5.8.0 C API
|
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 CompValidator and SBMLCompValidator.
The CompValidator class is the basis of the system for validating an SBML document against the validation rules defined in the SBML specifications. The scheme used by CompValidator relies is compact and uses the visitor programming pattern, but it relies on C/C++ features and is not directly accessible from language bindings. SBMLCompValidator offers a framework for straightforward class-based extensibility, so that user code can subclass SBMLCompValidator to implement new validation systems, different validators can be introduced or turned off at run-time, and interfaces can be provided in the libSBML language bindings. SBMLCompValidator can call CompValidator functionality internally (as is the case in the current implementation of SBMLInternalCompValidator) or use entirely different implementation approaches, as necessary.