/** @page libsbml-csharp-example-files Additional complete example programs
The libSBML distribution comes with the following selection of
complete example programs in the top-level file directory
named examples/csharp.
@section simple-programs Simple programs
@li @ref echoSBML.cs "echoSBML.cs":
Echos (and in the process, pretty prints) an SBML model.
@li @ref readSBML.cs "readSBML.cs":
A simple command-line program that reads an SBML file and prints
some statistics about it.
@li @ref printSBML.cs "printSBML.cs":
Prints information about the top-level model in the given SBML file.
@li @ref printRegisteredPackages.cs "printRegisteredPackages.cs":
Prints the SBML Level 3 packages registered/installed in this copy of libSBML.
@li @ref printSupported.cs "printSupported.cs":
Prints the supported SBML Levels and Versions for this copy of libSBML.
@section advanced-programs More advanced programs
@li @ref addCVTerms.cs "addCVTerms.cs":
Adds controlled vocabulary terms to a species in a model.
@li @ref addCustomValidator.cs "addCustomValidator.cs":
Example of creating a custom validator to be called during validation.
@li @ref addModelHistory.cs "addModelHistory.cs":
Adds a model history to a model.
@li @ref addingEvidenceCodes_1.cs "addingEvidenceCodes_1.cs":
Adds controlled vocabulary terms to a reaction in a model.
@li @ref addingEvidenceCodes_2.cs "addingEvidenceCodes_2.cs":
Adds evidence codes to a species in a model.
@li @ref appendAnnotation.cs "appendAnnotation.cs":
Adds annotation strings to a model and a species.
@li @ref callExternalValidator.cs "callExternalValidator.cs":
Example that shows how to call an external program for validation.
@li @ref convertSBML.cs "convertSBML.cs":
Example demonstrating how to convert SBML documents between SBML Levels.
@li @ref createExampleSBML.cs "createExampleSBML.cs":
Lengthy example of creating SBML models presented in the SBML specification.
@li @ref getAllElementsWithNotes.cs "getAllElementsWithNotes.cs":
Demonstrates how to use the element filter class to search the model
for elements with specific attributes .
@li @ref printAnnotation.cs "printAnnotation.cs":
Prints the annotation strings for each element in a given model.
@li @ref printMath.cs "printMath.cs":
Prints the rule, reaction, and event formulas in a given SBML document.
@li @ref printNotes.cs "printNotes.cs":
Prints the notes strings for each element in a given model.
@li @ref printRegisteredPackages.cs "printRegisteredPackages.cs":
A command-line program that prints the package plug-ins that are
registered with this copy of libSBML.
@li @ref printUnits.cs "printUnits.cs":
A command-line program that prints information about the units
of measurement used in a given SBML file.
@li @ref promoteParameters.cs "promoteParameters.cs":
Promote all local parameters in the model to global parameters.
@li @ref setIdFromNames.cs "setIdFromNames.cs":
Program that renames all SIds that also have names specified. The new
identifiers will be derived from the name, with all invalid characters removed.
@li @ref stripPackage.cs "stripPackage.cs":
Strips the given SBML Level 3 package from the given SBML file.
@li @ref translateMath.cs "translateMath.cs":
Translates infix formulas into MathML and vice-versa.
@li @ref unsetAnnotation.cs "unsetAnnotation.cs":
Unsets the annotation for each element in the given SBML file.
@li @ref unsetNotes.cs "unsetNotes.cs":
Unsets the notes for each element in the given SBML file.
@li @ref validateSBML.cs "validateSBML.cs":
Validates one or more SBML files.
@section package-programs Programs using SBML Level 3 packages
The following examples use specific libSBML plug-ins to support SBML
Level 3 packages. The use of these packages requires your copy
of libSBML to have been configured to enable the appropriate plug-in. The
default installation of libSBML comes with the packages below already
enabled, but beware that if you built libSBML from source code and
disabled one or more of these packages, then their features will not
be available.
@subsection package-fbc-examples Package: Flux Balance Constraints
The Flux Balance Constraints package has
the nickname “fbc”. The libSBML classes that implement
this package are marked with the symbol @htmlinclude
pkg-marker-fbc.html@~ in the libSBML documentation.
@li @ref fbc_example1.cs "fbc_example1.cs":
Simple example of writing a model that uses the SBML Level 3 Flux
Balance Constraints package.
@li @ref convertCobraToFbc.cs "convertCobraToFbc.cs":
Example of converting a COBRA-style SBML Level 2 model to SBML
Level 3 using the Flux Balance Constraints package.
@li @ref convertFbcToCobra.cs "convertFbcToCobra.cs":
Example of converting an SBML Level 3 model using the Flux
Balance Constraints package to a COBRA-style SBML Level 2 model.
@subsection package-groups-examples Package: Groups
The Groups
package has the nickname “groups”. The libSBML classes that
implement this package are marked with the symbol @htmlinclude
pkg-marker-groups.html@~ in the libSBML documentation.
@li @ref groups_example1.cs "groups_example1.cs":
Simple example of writing a model that uses the SBML Level 3 Groups
package.
@subsection package-comp-examples Package: Hierarchical Model Composition
The Hierarchical Model Composition
package has the nickname “comp”. The libSBML classes that
implement this package are marked with the symbol @htmlinclude
pkg-marker-comp.html@~ in the libSBML documentation.
@li @ref FlattenModel.cs "FlattenModel.cs": %Model flattening
example.
@li @ref SpecExample1.cs "SpecExample1.cs":
Example #1 from the SBML Level 3 Hierarchical %Model Composition specification.
@li @ref SpecExample2.cs "SpecExample2.cs":
Example #2 from the SBML Level 3 Hierarchical %Model Composition specification.
@li @ref SpecExample3.cs "SpecExample3.cs":
Example #3 from the SBML Level 3 Hierarchical %Model Composition specification.
@li @ref SpecExample4.cs "SpecExample4.cs": Example #4 from the
SBML Level 3 Hierarchical %Model Composition specification.
@subsection package-layout-examples Package: Layout
The Layout package has the nickname
“layout”. The libSBML classes that implement this package
are marked with the symbol @htmlinclude pkg-marker-layout.html@~ in the
libSBML documentation.
@li @ref example1-L3.cs "example1-L3.cs":
A version of example1.cs for SBML Level 3.
@subsection package-qual-examples Package: Qualitative Models
The Qualitative Models package has the
nickname “qual”. The libSBML classes that implement this
package are marked with the symbol @htmlinclude
pkg-marker-qual.html@~ in the libSBML documentation.
@li @ref qual_example1.cs "qual_example1.cs":
An example of creating a model using SBML Level 3 Qualitative Models.
@example addCVTerms.cs Adds controlled vocabulary terms to a species
in a model.
@example addCustomValidator.cs Example of creating a custom validator
to be called during validation.
@example addModelHistory.cs Adds a model history to a model.
@example addingEvidenceCodes_1.cs Adds controlled vocabulary terms to
a reaction in a model.
@example addingEvidenceCodes_2.cs Adds evidence codes to a species in
a model.
@example appendAnnotation.cs Adds annotation strings to a model and a
species.
@example callExternalValidator.cs Example that shows how to call an
external program for validation.
@example convertSBML.cs Example demonstrating how to convert SBML
documents between SBML Levels.
@example createExampleSBML.cs Lengthy example of creating SBML models
presented in the SBML specification.
@example echoSBML.cs Echos (and in the process, pretty prints) an
SBML model.
@example getAllElementsWithNotes.cs Demonstrates how to use the
element filter class to search the model for elements with specific
attributes .
@example printAnnotation.cs Prints the annotation strings for each
element in a given model.
@example printMath.cs Prints the rule, reaction, and event formulas
in a given SBML document.
@example printNotes.cs Prints the notes strings for each element in a
given model.
@example printRegisteredPackages.cs Prints the SBML Level 3 packages
registered/installed in this copy of libSBML.
@example printSBML.cs Prints information about the top-level model in
the given SBML file.
@example printSupported.cs Prints the supported SBML Levels and
Versions for this copy of libSBML.
@example printUnits.cs A command-line program that prints information
about the units of measurement used in a given SBML file.
@example readSBML.cs A simple command-line program that reads an SBML
file and prints some statistics about it.
@example setIdFromNames.cs Program that renames all SIds that also
have names specified. The new identifiers will be derived from the
name, with all invalid characters removed.
@example stripPackage.cs Strips the given SBML Level 3 package from
the given SBML file.
@example translateMath.cs Translates infix formulas into MathML and
vice-versa.
@example unsetAnnotation.cs Unsets the annotation for each element in
the given SBML file.
@example unsetNotes.cs Unsets the notes for each element in the given
SBML file.
@example validateSBML.cs Validates one or more SBML files.
@example FlattenModel.cs Model flattening example.
@example SpecExample1.cs
Example #1 from the SBML Level 3 Hierarchical Model Composition specification.
@example SpecExample2.cs
Example #2 from the SBML Level 3 Hierarchical Model Composition specification.
@example SpecExample3.cs
Example #3 from the SBML Level 3 Hierarchical Model Composition specification.
@example SpecExample4.cs
Example #4 from the SBML Level 3 Hierarchical Model Composition specification.
@example fbc_example1.cs
Simple example of writing a model that uses the SBML Level 3 Flux
Balance Constraints package.
@example convertCobraToFbc.cs
Example of converting a COBRA-style SBML Level 2 model to SBML
Level 3 using the Flux Balance Constraints package.
@example convertFbcToCobra.cs
Example of converting an SBML Level 3 model using the Flux
Balance Constraints package to a COBRA-style SBML Level 2 model.
@example promoteParameters.cs
Promote all local parameters in the model to global parameters.
@example example1-L3.cs
A version of example1.cs for SBML Level 3.
@example qual_example1.cs
An example of creating a model using SBML Level 3 Qualitative Models.
*/