Raptor RDF Syntax Parsing and Serializing Library Manual |
---|
Identifiers are created in some parsers by generating them
automatically or via hints given a syntax. Raptor can customise this
process using a user-supplied identifier handler function.
For example, in RDF/XML generated blank node identifiers and those
those specified rdf:nodeID
are passed through this
process. Setting a handler allows the identifier generation mechanism to be
fully replaced. A lighter alternative is to use
raptor_set_default_generate_id_parameters()
to adjust the default algorithm for generated identifiers.
It is used as follows
raptor_generate_id_handler id_handler; raptor_set_generate_id_handler(rdf_parser, user_data, id_handler);
The id_handler takes the following signature:
unsigned char* generate_id_handler(void* user_data, raptor_genid_type type, unsigned char* user_id) { /* return a new generated ID based on user_id (optional) */ }
where the
raptor_genid_type
provides extra information on the identifier being created and
user_id an optional user-supplied identifier,
such as the value of a rdf:nodeID
in RDF/XML.