SaxonC 12.5
Saxon Processor library for C/C++, PHP and Python
|
#include <SchemaValidator.h>
Public Member Functions | |
SchemaValidator () | |
Default constructor. | |
SchemaValidator (SaxonProcessor *proc, std::string cwd="") | |
A constructor with a SaxonProcessor. | |
SchemaValidator (const SchemaValidator &other) | |
Copy constructor. | |
~SchemaValidator () | |
SchemaValidator & | operator= (const SchemaValidator &other) |
The copy assignment= operator. | |
void | setcwd (const char *cwd) |
Set the Current working Directory. | |
void | registerSchemaFromFile (const char *xsd) |
Register the schema from file name. | |
void | registerSchemaFromString (const char *schemaStr, const char *systemID=nullptr) |
Register the schema supplied as a string. | |
void | registerSchemaFromNode (XdmNode *node) |
Register the schema supplied as an XDM Node Object. | |
void | exportSchema (const char *fileName) |
void | setOutputFile (const char *outputFile) |
Set the name of the output file that will be used by the validator. | |
void | validate (const char *sourceFile=nullptr) |
Validate an instance document by a registered schema. | |
XdmNode * | validateToNode (const char *sourceFile=nullptr) |
Validate an instance document supplied as a Source object. | |
void | setSourceNode (XdmNode *source) |
Set the source node for validation. | |
XdmNode * | getValidationReport () |
Get the Validation report. | |
void | setParameter (const char *name, XdmValue *value) |
Set a parameter value used in the validator. | |
bool | removeParameter (const char *name) |
Remove a parameter (name, value) pair. | |
void | setProperty (const char *name, const char *value) |
Set a property. | |
void | clearParameters (bool deleteValues=false) |
Clear parameter values set. | |
void | clearProperties () |
Clear property values set. | |
XdmValue * | getParameter (const char *name, bool withParam) |
std::map< std::string, XdmValue * > & | getParameters () |
Get all parameters as a std::map. | |
std::map< std::string, std::string > & | getProperties () |
Get all properties as a std::map. | |
bool | exceptionOccurred () |
const char * | checkException () |
Check for exception thrown. | |
void | exceptionClear () |
Clear any exception thrown. | |
const char * | getErrorMessage () |
Get number of errors during validation of the source against the schema. | |
const char * | getErrorCode () |
Get error code if an error is reported. | |
void | setLax (bool l) |
The validation mode may be either strict or lax. | |
int64_t | getUnderlyingValidator () |
Get the underlying java object of the C++ schema validator. | |
A SchemaValidator
represents a factory for validating instance documents against a schema.
SchemaValidator::SchemaValidator | ( | ) |
SchemaValidator::SchemaValidator | ( | SaxonProcessor * | proc, |
std::string | cwd = "" ) |
A constructor with a SaxonProcessor.
The supplied processor should have license flag set to true for the Schema Validator to operate.
proc | - the SaxonProcessor |
cwd | - set the current working directory |
SaxonApiException |
SchemaValidator::SchemaValidator | ( | const SchemaValidator & | other | ) |
Copy constructor.
Creates Schema Validator
SchemaValidator::~SchemaValidator | ( | ) |
Destructor method. At the end of the program call the release() method to clear the JVM.
const char * SchemaValidator::checkException | ( | ) |
Check for exception thrown.
void SchemaValidator::clearParameters | ( | bool | deleteValues = false | ) |
Clear parameter values set.
Default behaviour (false) is to leave XdmValues in memory. Individual pointers to XdmValue objects have to be deleted in the calling program.
deleteValues | - if true then XdmValues are deleted |
bool SchemaValidator::exceptionOccurred | ( | ) |
Checks for pending exceptions without creating a local reference to the exception object
void SchemaValidator::exportSchema | ( | const char * | fileName | ) |
Export a precompiled Schema Component Model containing all the components (except built-in components) that have been loaded by using the register methods.
fileName | - The file name where the exported schema will be stored |
SaxonApiException |
const char * SchemaValidator::getErrorCode | ( | ) |
Get error code if an error is reported.
Validation error are reported as exceptions. All errors can be retrieved.
const char * SchemaValidator::getErrorMessage | ( | ) |
Get number of errors during validation of the source against the schema.
XdmValue * SchemaValidator::getParameter | ( | const char * | name, |
bool | withParam ) |
Get a parameter value by name
name | - Specified parameter name to get |
withParam | Internal use only |
XdmNode * SchemaValidator::getValidationReport | ( | ) |
Get the Validation report.
The validation-report option must have been set to true in the properties to use this feature.
SaxonApiException |
SchemaValidator & SchemaValidator::operator= | ( | const SchemaValidator & | other | ) |
The copy assignment= operator.
Create a copy of the SchemaValidator.
other | - SchemaValidator object |
void SchemaValidator::registerSchemaFromFile | ( | const char * | xsd | ) |
Register the schema from file name.
The schema components derived from this schema document are added to the cache of schema components maintained by this SchemaManager
xsd | - File name of the schema relative to the cwd or full path if cwd is null. The document may be either a schema document in source XSD format, or a compiled schema in Saxon-defined SCM format (as produced using the method exportSchema) |
SaxonApiException |
void SchemaValidator::registerSchemaFromNode | ( | XdmNode * | node | ) |
Register the schema supplied as an XDM Node Object.
node | - The schema document supplied as an XdmNode object |
SaxonApiException |
void SchemaValidator::registerSchemaFromString | ( | const char * | schemaStr, |
const char * | systemID = nullptr ) |
Register the schema supplied as a string.
schemaStr | - The schema document supplied as a string |
systemID | - The system ID of the document supplied as a string |
SaxonApiException |
bool SchemaValidator::removeParameter | ( | const char * | name | ) |
Remove a parameter (name, value) pair.
name | of the parameter |
void SchemaValidator::setcwd | ( | const char * | cwd | ) |
Set the Current working Directory.
Set the current working directory for the Schema Validator
cwd | - Supplied working directory which replaces any set cwd. Ignore if cwd is NULL. |
void SchemaValidator::setLax | ( | bool | l | ) |
The validation mode may be either strict or lax.
The default is strict; this method may be called to indicate that lax validation is required. With strict validation, validation fails if no element declaration can be located for the outermost element. With lax validation, the absence of an element declaration results in the content being considered valid.
l | - true if validation is to be lax, false if it is to be strict |
void SchemaValidator::setOutputFile | ( | const char * | outputFile | ) |
Set the name of the output file that will be used by the validator.
outputFile | the output file name for later use |
void SchemaValidator::setParameter | ( | const char * | name, |
XdmValue * | value ) |
Set a parameter value used in the validator.
name | of the parameter, as a string. For namespaced parameter use the JAXP solution i.e. "{uri}name" |
value | of the query parameter, or nullptr to clear a previously set value |
void SchemaValidator::setProperty | ( | const char * | name, |
const char * | value ) |
Set a property.
name | of the property |
value | of the property |
void SchemaValidator::setSourceNode | ( | XdmNode * | source | ) |
Set the source node for validation.
source | - The source document supplied as an XdmNode, which will be used to validate against the schema using the validate methods. The deletion of allocated memory associated with the source node is the document is the responsbility of the caller. |
void SchemaValidator::validate | ( | const char * | sourceFile = nullptr | ) |
Validate an instance document by a registered schema.
sourceFile | Name of the file to be validated. Allow nullptr when source document is supplied with other method |
SaxonApiException |
XdmNode * SchemaValidator::validateToNode | ( | const char * | sourceFile = nullptr | ) |
Validate an instance document supplied as a Source object.
sourceFile | The name of the file to be validated. Default is nullptr |
SaxonApiException |