OpenMS
Loading...
Searching...
No Matches
CVMappingFile Class Reference

Used to load CvMapping files. More...

#include <OpenMS/FORMAT/CVMappingFile.h>

Inheritance diagram for CVMappingFile:
[legend]
Collaboration diagram for CVMappingFile:
[legend]

Public Member Functions

 CVMappingFile ()
 Default constructor.
 
 ~CVMappingFile () override
 Destructor.
 
void load (const std::string &filename, CVMappings &cv_mappings, bool strip_namespaces=false)
 loads CvMappings from the given file
 
- Public Member Functions inherited from XMLFile
 XMLFile ()
 Construct an XMLFile without schema info; schema_location_ remains unset, so isValid cannot be used until derived-class logic initializes schema_location_ before calling isValid.
 
 XMLFile (const std::string &schema_location, const std::string &version)
 Construct with a schema location for later isValid calls.
 
virtual ~XMLFile ()
 Virtual destructor — defaulted; allows safe deletion through a base-class pointer.
 
bool isValid (const std::string &filename, std::ostream &os)
 Check if filename validates against the bound XML schema.
 
const std::string & getVersion () const
 Return the schema version string passed to the parameterised constructor; empty for default-constructed instances.
 

Protected Member Functions

void onStartElement (const char16_t *qname, const Internal::XMLAttributes &attributes) override
 Parsing method for opening tags.
 
void onEndElement (const char16_t *qname) override
 Parsing method for closing tags.
 
void onCharacters (const char16_t *chars, Size) override
 Parsing method for character data.
 
- Protected Member Functions inherited from XMLHandler
void writeUserParam_ (const std::string &tag_name, std::ostream &os, const MetaInfoInterface &meta, UInt indent) const
 Writes the content of MetaInfoInterface to the file.
 
Int asInt_ (const std::string &in) const
 Conversion of a std::string to an integer value.
 
Int asInt_ (const char16_t *in) const
 Conversion of a Xerces string to an integer value.
 
UInt asUInt_ (const std::string &in) const
 Conversion of a std::string to an unsigned integer value.
 
double asDouble_ (const std::string &in) const
 Conversion of a std::string to a double value.
 
float asFloat_ (const std::string &in) const
 Conversion of a std::string to a float value.
 
bool asBool_ (const std::string &in) const
 Conversion of a string to a boolean value.
 
DateTime asDateTime_ (std::string date_string) const
 Conversion of a xs:datetime string to a DateTime value.
 
bool equal_ (const char16_t *a, const char16_t *b) const
 Returns if two Xerces strings are equal.
 
SignedSize cvStringToEnum_ (const Size section, const std::string &term, const char *message, const SignedSize result_on_error=0)
 
std::string attributeAsString_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a String.
 
Int attributeAsInt_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a Int.
 
double attributeAsDouble_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a double.
 
DoubleList attributeAsDoubleList_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a DoubleList.
 
IntList attributeAsIntList_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to an IntList.
 
StringList attributeAsStringList_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to an StringList.
 
bool optionalAttributeAsString_ (std::string &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the String value if the attribute is present.
 
bool optionalAttributeAsInt_ (Int &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the Int value if the attribute is present.
 
bool optionalAttributeAsUInt_ (UInt &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the UInt value if the attribute is present.
 
bool optionalAttributeAsDouble_ (double &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the double value if the attribute is present.
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present.
 
bool optionalAttributeAsStringList_ (StringList &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the StringList value if the attribute is present.
 
bool optionalAttributeAsIntList_ (IntList &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the IntList value if the attribute is present.
 
std::string attributeAsString_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a String.
 
Int attributeAsInt_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a Int.
 
double attributeAsDouble_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a double.
 
DoubleList attributeAsDoubleList_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a DoubleList.
 
IntList attributeAsIntList_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a IntList.
 
StringList attributeAsStringList_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a StringList.
 
bool optionalAttributeAsString_ (std::string &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the String value if the attribute is present.
 
bool optionalAttributeAsInt_ (Int &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the Int value if the attribute is present.
 
bool optionalAttributeAsUInt_ (UInt &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the UInt value if the attribute is present.
 
bool optionalAttributeAsDouble_ (double &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the double value if the attribute is present.
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present.
 
bool optionalAttributeAsIntList_ (IntList &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the IntList value if the attribute is present.
 
bool optionalAttributeAsStringList_ (StringList &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the StringList value if the attribute is present.
 
 XMLHandler (const std::string &filename, const std::string &version)
 Default constructor.
 
virtual ~XMLHandler ()
 Destructor.
 
void reset ()
 Release internal memory used for parsing (call.
 
void fatalError (ActionMode mode, const std::string &msg, UInt line=0, UInt column=0) const
 Fatal error handler. Throws a ParseError exception.
 
void error (ActionMode mode, const std::string &msg, UInt line=0, UInt column=0) const
 Error handler for recoverable errors.
 
void warning (ActionMode mode, const std::string &msg, UInt line=0, UInt column=0) const
 Warning handler.
 
virtual void writeTo (std::ostream &)
 Writes the contents to a stream.
 
virtual LOADDETAIL getLoadDetail () const
 handler which support partial loading, implement this method
 
virtual void setLoadDetail (const LOADDETAIL d)
 handler which support partial loading, implement this method
 
DataValue cvParamToValue (const ControlledVocabulary &cv, const std::string &parent_tag, const std::string &accession, const std::string &name, const std::string &value, const std::string &unit_accession) const
 Convert the value of a <cvParam value=.> (as commonly found in PSI schemata) to the DataValue with the correct type (e.g. int) according to the type stored in the CV (usually PSI-MS CV), as well as set its unit.
 
DataValue cvParamToValue (const ControlledVocabulary &cv, const CVTerm &raw_term) const
 Convert the value of a <cvParam value=.> (as commonly found in PSI schemata) to the DataValue with the correct type (e.g. int) according to the type stored in the CV (usually PSI-MS CV), as well as set its unit.
 
void checkUniqueIdentifiers_ (const std::vector< ProteinIdentification > &prot_ids) const
 
- Protected Member Functions inherited from XMLFile
void parse_ (const std::string &filename, XMLHandler *handler)
 Parse the XML file at filename through handler.
 
void parseBuffer_ (const std::string &buffer, XMLHandler *handler)
 Parse an in-memory XML buffer through handler.
 
void save_ (const std::string &filename, XMLHandler *handler) const
 Stores the contents of the XML handler given by handler in the file given by filename.
 
void enforceEncoding_ (const std::string &encoding)
 Set or clear the XML-encoding override applied to subsequent parse_ / parseBuffer_ calls.
 
 XMLFile ()
 Construct an XMLFile without schema info; schema_location_ remains unset, so isValid cannot be used until derived-class logic initializes schema_location_ before calling isValid.
 
 XMLFile (const std::string &schema_location, const std::string &version)
 Construct with a schema location for later isValid calls.
 
virtual ~XMLFile ()
 Virtual destructor — defaulted; allows safe deletion through a base-class pointer.
 
bool isValid (const std::string &filename, std::ostream &os)
 Check if filename validates against the bound XML schema.
 
const std::string & getVersion () const
 Return the schema version string passed to the parameterised constructor; empty for default-constructed instances.
 

Private Member Functions

 CVMappingFile (const CVMappingFile &rhs)
 Not implemented.
 
CVMappingFileoperator= (const CVMappingFile &rhs)
 Not implemented.
 

Private Attributes

std::string tag_
 
bool strip_namespaces_
 
CVMappingRule actual_rule_
 
std::vector< CVMappingRulerules_
 
std::vector< CVReferencecv_references_
 

Additional Inherited Members

- Protected Types inherited from XMLHandler
enum  ActionMode { LOAD , STORE }
 Action to set the current mode (for error messages) More...
 
enum  LOADDETAIL { LD_ALLDATA , LD_RAWCOUNTS , LD_COUNTS_WITHOPTIONS }
 
- Static Protected Member Functions inherited from XMLHandler
static std::string writeXMLEscape (const std::string &to_escape)
 Escapes a string and returns the escaped string.
 
static DataValue fromXSDString (const std::string &type, const std::string &value)
 Convert an XSD type (e.g. 'xsd:double') to a DataValue.
 
- Protected Attributes inherited from XMLHandler
std::string file_
 File name.
 
std::string version_
 Schema version.
 
StringManager sm_
 Helper class for string conversion.
 
std::vector< std::string > open_tags_
 Stack of open XML tags.
 
LOADDETAIL load_detail_
 parse only until total number of scans and chroms have been determined from attributes
 
std::vector< std::vector< std::string > > cv_terms_
 Array of CV term lists (one sublist denotes one term and it's children)
 
- Protected Attributes inherited from XMLFile
std::string schema_location_
 Path of the XML schema for validation; empty when the default constructor was used (isValid then throws NotImplemented).
 
std::string schema_version_
 Schema version string returned by getVersion.
 
std::string enforced_encoding_
 Optional XML encoding override applied to the InputSource in parse_ and parseBuffer_; empty disables the override. Used as a workaround for XTandem output XML which carries an encoding the parser otherwise stumbles on.
 

Detailed Description

Used to load CvMapping files.

This file contains the mapping of CV terms to the schema, which is used by PSI standard formats to semantically validate files.

A documented schema for this format can be found at https://github.com/OpenMS/OpenMS/tree/develop/share/OpenMS/SCHEMAS

Constructor & Destructor Documentation

◆ CVMappingFile() [1/2]

Default constructor.

◆ ~CVMappingFile()

~CVMappingFile ( )
override

Destructor.

◆ CVMappingFile() [2/2]

CVMappingFile ( const CVMappingFile rhs)
private

Not implemented.

Member Function Documentation

◆ load()

void load ( const std::string &  filename,
CVMappings cv_mappings,
bool  strip_namespaces = false 
)

loads CvMappings from the given file

Exceptions
Exception::FileNotFoundis thrown if the file could not be opened
Exception::ParseErroris thrown if an error occurs during parsing
Parameters
[in]filenameThe filename to read from
[out]cv_mappingsThe CVMappings instance in which the rules, cvs and other content from the file should be stored
[in]strip_namespacesif enable, namespace definitions of the paths are eliminated, e.g. 'pf:cvParam' -> 'cvParam'

◆ onCharacters()

void onCharacters ( const char16_t *  chars,
Size  length 
)
overrideprotectedvirtual

Parsing method for character data.

Reimplemented from XMLHandler.

◆ onEndElement()

void onEndElement ( const char16_t *  qname)
overrideprotectedvirtual

Parsing method for closing tags.

Reimplemented from XMLHandler.

◆ onStartElement()

void onStartElement ( const char16_t *  qname,
const Internal::XMLAttributes attributes 
)
overrideprotectedvirtual

Parsing method for opening tags.

Reimplemented from XMLHandler.

◆ operator=()

CVMappingFile & operator= ( const CVMappingFile rhs)
private

Not implemented.

Member Data Documentation

◆ actual_rule_

CVMappingRule actual_rule_
private

◆ cv_references_

std::vector<CVReference> cv_references_
private

◆ rules_

std::vector<CVMappingRule> rules_
private

◆ strip_namespaces_

bool strip_namespaces_
private

◆ tag_

std::string tag_
private