Validation
[Common]

XML schema based validation of XML representations of SCAP documents. More...

Typedefs

typedef enum oscap_document_type oscap_document_type_t
 SCAP document type identifiers.
typedef int(* xml_reporter )(const char *file, int line, const char *msg, void *arg)

Enumerations

enum  oscap_document_type {
  OSCAP_DOCUMENT_UNKNOWN = 0, OSCAP_DOCUMENT_OVAL_DEFINITIONS, OSCAP_DOCUMENT_OVAL_VARIABLES, OSCAP_DOCUMENT_OVAL_SYSCHAR,
  OSCAP_DOCUMENT_OVAL_RESULTS, OSCAP_DOCUMENT_OVAL_DIRECTIVES, OSCAP_DOCUMENT_XCCDF, OSCAP_DOCUMENT_CPE_LANGUAGE,
  OSCAP_DOCUMENT_CPE_DICTIONARY, OSCAP_DOCUMENT_CVE_FEED, OSCAP_DOCUMENT_SCE_RESULT, OSCAP_DOCUMENT_SDS,
  OSCAP_DOCUMENT_ARF, OSCAP_DOCUMENT_XCCDF_TAILORING, OSCAP_DOCUMENT_OCIL, OSCAP_DOCUMENT_CVRF_FEED
}
 SCAP document type identifiers. More...

Functions

const char * oscap_document_type_to_string (oscap_document_type_t type)
 Convert oscap_document_type_t constant to human readable (english) representation.
int oscap_validate_document (const char *xmlfile, oscap_document_type_t doctype, const char *version, xml_reporter reporter, void *arg)
 Validate a SCAP document file against a XML schema.
int oscap_schematron_validate_document (const char *xmlfile, oscap_document_type_t doctype, const char *version, const char *outfile)
 Validate a SCAP document file against schematron rules.
int oscap_apply_xslt (const char *xmlfile, const char *xsltfile, const char *outfile, const char **params)
 Apply a XSLT stylesheet to a XML file.
const char * oscap_path_to_schemas (void)
 Function returns path used to locate OpenSCAP XML schemas.
const char * oscap_path_to_schematron (void)
 Function returns path used to locate OpenSCAP Schematron files.
const char * oscap_path_to_cpe (void)
 Function returns path used to locate OpenSCAP Default CPE files.
int oscap_determine_document_type (const char *document, oscap_document_type_t *doc_type)
 Determine document type.

Detailed Description

XML schema based validation of XML representations of SCAP documents.


Enumeration Type Documentation

SCAP document type identifiers.

Enumerator:
OSCAP_DOCUMENT_UNKNOWN  The type is unknown.
OSCAP_DOCUMENT_OVAL_DEFINITIONS  OVAL Definitions file.
OSCAP_DOCUMENT_OVAL_VARIABLES  OVAL Variables.
OSCAP_DOCUMENT_OVAL_SYSCHAR  OVAL system characteristics file.
OSCAP_DOCUMENT_OVAL_RESULTS  OVAL results file.
OSCAP_DOCUMENT_OVAL_DIRECTIVES  OVAL directives file.
OSCAP_DOCUMENT_XCCDF  XCCDF benchmark file.
OSCAP_DOCUMENT_CPE_LANGUAGE  CPE language file.
OSCAP_DOCUMENT_CPE_DICTIONARY  CPE dictionary file.
OSCAP_DOCUMENT_CVE_FEED  CVE NVD feed.
OSCAP_DOCUMENT_SCE_RESULT  SCE result file.
OSCAP_DOCUMENT_SDS  Source Data Stream file.
OSCAP_DOCUMENT_ARF  Result Data Stream file.
OSCAP_DOCUMENT_XCCDF_TAILORING  XCCDF tailoring file.
OSCAP_DOCUMENT_OCIL  OCIL Definitions file.
OSCAP_DOCUMENT_CVRF_FEED  CVRF feed.


Function Documentation

int oscap_apply_xslt ( const char *  xmlfile,
const char *  xsltfile,
const char *  outfile,
const char **  params 
)

Apply a XSLT stylesheet to a XML file.

If xsltfile is not an absolute path, the file will be searched relatively to a path specified by the OSCAP_XSLT_PATH environment variable. If the variable does not exist a default path is used (usually something like $PREFIX/share/openscap/schemas).

Parameters:
xmlfile File to be transformed.
xsltfile XSLT file
outfile Result file shall be written here (NULL for stdout).
params list of key-value pairs to pass to the stylesheet.
Returns:
the number of bytes written or -1 in case of failure

int oscap_determine_document_type ( const char *  document,
oscap_document_type_t doc_type 
)

Determine document type.

Deprecated:
This function has been deprecated and it may be dropped from later OpenSCAP releases. Please use oscap_source_get_scap_type instead.

const char* oscap_document_type_to_string ( oscap_document_type_t  type  ) 

Convert oscap_document_type_t constant to human readable (english) representation.

Parameters:
type OpenSCAP Document Type
Returns:
English string describing document type.
Return values:
Returned value might be pointer to static memory and must not be modified.
NULL in case of unrecognized document type

const char* oscap_path_to_schematron ( void   ) 

Function returns path used to locate OpenSCAP Schematron files.

Deprecated:
This function has been deprecated. It has never returned correct path to schematron files. This function may be dropped from the next version of the library.

int oscap_schematron_validate_document ( const char *  xmlfile,
oscap_document_type_t  doctype,
const char *  version,
const char *  outfile 
)

Validate a SCAP document file against schematron rules.

The rules are searched relative to path specified by the OSCAP_SCHEMA_PATH environment variable. If the variable does not exist a default path is used (usually something like $PREFIX/share/openscap/schemas).

Parameters:
xmlfile File to be validated.
doctype Document type represented by the file.
version Version of the document, use NULL for library's default.
outfile Report from schematron validation is written into the outfile. If NULL, stdou will be used.
Returns:
0 on pass; <0 error; >0 fail
Deprecated:
This function has been deprecated and it may be dropped from later OpenSCAP releases. Please use oscap_source_validate_schematron instead.

int oscap_validate_document ( const char *  xmlfile,
oscap_document_type_t  doctype,
const char *  version,
xml_reporter  reporter,
void *  arg 
)

Validate a SCAP document file against a XML schema.

Schemas are searched relative to path specified by the OSCAP_SCHEMA_PATH environment variable. If the variable does not exist a default path is used (usually something like $PREFIX/share/openscap/schemas).

Directory structure must adhere $SCHEMA_PATH/$STANDARD/$VERSION/$SCHEMAFILE.xsd structure, where $STANDARD is oval, xccdf, etc., and $VERSION is a version of the standard.

Parameters:
xmlfile File to be validated.
doctype Document type represented by the file.
version Version of the document, use NULL for library's default.
reporter A reporter to by notified of encountered issues. Can be NULL, if a binary document validates / does not validate answer is satisfactonary.
arg Argument for the reporter.
Returns:
0 on pass; -1 error; 1 fail
Deprecated:
This function has been deprecated and it may be dropped from later OpenSCAP releases. Please use oscap_source_validate instead.


Generated on Tue Nov 14 12:18:58 2017 for Open SCAP Library by  doxygen 1.5.6