/* * Outputs prefix:name. */ void XMLOutputStream::writeName (const XMLTriple& triple) { if ( !triple.getPrefix().empty() ) { writeChars( triple.getPrefix() ); mStream << ':'; } writeChars( triple.getName() ); }
/* * Reads the value for the attribute with the given XMLTriple into value. * If the XMLTriple was not found or value could be interpreted as an int, * value is not modified. * * According to the W3C XML Schema valid integers include zero, *all* * positive and *all* negative whole numbers. For practical purposes, we * limit values to what can be stored in a int. For more information, * see: http://www.w3.org/TR/xmlschema-2/#integer * * If an XMLErrorLog is passed in datatype format errors are logged. If * required is true, missing attributes are also logged. * * @returns @c true if the attribute was read into value, @c false otherwise. * */ bool XMLAttributes::readInto ( const XMLTriple& triple , int& value , XMLErrorLog* log , bool required , const unsigned int line , const unsigned int column ) const { return readInto(getIndex(triple), triple.getPrefixedName(), value, log, required, line, column); }
/* * Reads the value for the attribute XMLTriple into value. If XMLTriple was not * found or value could not be interpreted as a boolean, value is not modified. * * According to the W3C XML Schema, valid boolean values are: "true", * "false", "1", and "0" (case-insensitive). For more information, see: * http://www.w3.org/TR/xmlschema-2/#boolean * * If an XMLErrorLog is passed in datatype format errors are logged. If * required is true, missing attributes are also logged. * * @returns true if the attribute was read into value, false otherwise. */ bool XMLAttributes::readInto ( const XMLTriple& triple , bool& value , XMLErrorLog* log , bool required , const unsigned int line , const unsigned int column ) const { if (&triple == NULL || &value == NULL) return (int)false; return readInto(getIndex(triple), triple.getPrefixedName(), value, log, required, line, column); }
/* * Comparison (equal-to) operator for XMLTriple. * * @return @c non-zero (true) if the combination of name, URI, and * prefix of lhs is equal to that of rhs @c zero (false) otherwise. */ bool operator==(const XMLTriple& lhs, const XMLTriple& rhs) { if (lhs.getName() != rhs.getName() ) return false; if (lhs.getURI() != rhs.getURI() ) return false; if (lhs.getPrefix() != rhs.getPrefix()) return false; return true; }
/* * Adds an attribute with the given triple/value pair to this XMLAttributes set. * If name with the same namespaceURI already exists in this attribute set, * its value will be replaced. */ int XMLAttributes::add ( const XMLTriple& triple, const std::string& value) { return add(triple.getName(), value, triple.getURI(), triple.getPrefix()); }
/* * Adds an attribute with the given triple/value pair to this XMLAttributes set. * If name with the same namespaceURI already exists in this attribute set, * its value will be replaced. */ int XMLAttributes::add ( const XMLTriple& triple, const std::string& value) { if (&triple == NULL || &value == NULL) return LIBSBML_INVALID_OBJECT; return add(triple.getName(), value, triple.getURI(), triple.getPrefix()); }