]> Parsers 3 REDLAND Library Parsers RDF parsers from syntax to triples. Synopsis typedef librdf_parser; typedef librdf_parser_factory; int librdf_parser_enumerate (librdf_world *world, unsigned int counter, const char **name, const char **label); const char* librdf_parser_guess_name (const char *mime_type, unsigned char *buffer, unsigned char *identifier); void librdf_parser_register_factory (librdf_world *world, const char *name, const char *label, const char *mime_type, unsigned char *uri_string, void (factorylibrdf_parser_factory*) ()); librdf_parser* librdf_new_parser (librdf_world *world, const char *name, const char *mime_type, librdf_uri *type_uri); librdf_parser* librdf_new_parser_from_factory (librdf_world *world, librdf_parser_factory *factory); void librdf_free_parser (librdf_parser *parser); librdf_stream* librdf_parser_parse_as_stream (librdf_parser *parser, librdf_uri *uri, librdf_uri *base_uri); int librdf_parser_parse_into_model (librdf_parser *parser, librdf_uri *uri, librdf_uri *base_uri, librdf_model *model); librdf_stream* librdf_parser_parse_file_handle_as_stream (librdf_parser *parser, FILE *fh, int close_fh, librdf_uri *base_uri); int librdf_parser_parse_file_handle_into_model (librdf_parser *parser, FILE *fh, int close_fh, librdf_uri *base_uri, librdf_model *model); librdf_stream* librdf_parser_parse_string_as_stream (librdf_parser *parser, unsigned char *string, librdf_uri *base_uri); int librdf_parser_parse_string_into_model (librdf_parser *parser, unsigned char *string, librdf_uri *base_uri, librdf_model *model); void librdf_parser_set_error (librdf_parser *parser, void *user_data, void (error_fnvoid *user_data, const char *msg, ...) ()); void librdf_parser_set_warning (librdf_parser *parser, void *user_data, void (warning_fnvoid *user_data, const char *msg, ...) ()); librdf_stream* librdf_parser_parse_counted_string_as_stream (librdf_parser *parser, unsigned char *string, size_t length, librdf_uri *base_uri); int librdf_parser_parse_counted_string_into_model (librdf_parser *parser, unsigned char *string, size_t length, librdf_uri *base_uri, librdf_model *model); #define LIBRDF_PARSER_FEATURE_ERROR_COUNT #define LIBRDF_PARSER_FEATURE_WARNING_COUNT librdf_node* librdf_parser_get_feature (librdf_parser *parser, librdf_uri *feature); int librdf_parser_set_feature (librdf_parser *parser, librdf_uri *feature, librdf_node *value); char* librdf_parser_get_accept_header (librdf_parser *parser); int librdf_parser_get_namespaces_seen_count (librdf_parser *parser); const char* librdf_parser_get_namespaces_seen_prefix (librdf_parser *parser, int offset); librdf_uri* librdf_parser_get_namespaces_seen_uri (librdf_parser *parser, int offset); librdf_uri_filter_func librdf_parser_get_uri_filter (librdf_parser *parser, void **user_data_p); void librdf_parser_set_uri_filter (librdf_parser *parser, librdf_uri_filter_funcfilter , void *user_data); Description Provides classes to create parsers and parse syntaxes from URIs or a string into RDF graphs (librdf_model) or sequences of triples (librdf_stream). Parser features can be set, which are passed down to Raptor and errors and warnings that are returned can be retrieved by callbacks. Details librdf_parser librdf_parsertypedef struct librdf_parser_s librdf_parser; Redland parser class. librdf_parser_factory librdf_parser_factorytypedef struct librdf_parser_factory_s librdf_parser_factory; Redland parser factory class. librdf_parser_enumerate () librdf_parser_enumerateint librdf_parser_enumerate (librdf_world *world, unsigned int counter, const char **name, const char **label); Get information on parsers. world : redland world object counter : index into the list of parsers name : pointer to store the name of the parser (or NULL) label : pointer to store syntax readable label (or NULL) Returns : non 0 on failure of if counter is out of range librdf_parser_guess_name () librdf_parser_guess_nameconst char* librdf_parser_guess_name (const char *mime_type, unsigned char *buffer, unsigned char *identifier); Get a parser name for content with type or identiifer mime_type : MIME type of syntax or NULL buffer : content buffer or NULL identifier : content identifier or NULL Returns : a parser name or NULL if nothing was guessable librdf_parser_register_factory () librdf_parser_register_factoryvoid librdf_parser_register_factory (librdf_world *world, const char *name, const char *label, const char *mime_type, unsigned char *uri_string, void (factorylibrdf_parser_factory*) ()); Register a parser factory . world : redland world object name : the name of the parser label : the label of the parser (optional) mime_type : MIME type of the syntax (optional) uri_string : URI of the syntax (optional) factory : function to be called to register the factor parameters librdf_new_parser () librdf_new_parserlibrdf_parser* librdf_new_parser (librdf_world *world, const char *name, const char *mime_type, librdf_uri *type_uri); Constructor - create a new librdf_parser object. If all fields are NULL, this means any parser supporting MIME Type "application/rdf+xml" world : redland world object name : the parser factory name mime_type : the MIME type of the syntax (NULL if not used) type_uri : URI of syntax (NULL if not used) Returns : new librdf_parser object or NULL librdf_new_parser_from_factory () librdf_new_parser_from_factorylibrdf_parser* librdf_new_parser_from_factory (librdf_world *world, librdf_parser_factory *factory); Constructor - create a new librdf_parser object. world : redland world object factory : the parser factory to use to create this parser Returns : new librdf_parser object or NULL librdf_free_parser () librdf_free_parservoid librdf_free_parser (librdf_parser *parser); Destructor - destroys a librdf_parser object. parser : the parser librdf_parser_parse_as_stream () librdf_parser_parse_as_streamlibrdf_stream* librdf_parser_parse_as_stream (librdf_parser *parser, librdf_uri *uri, librdf_uri *base_uri); Parse a URI to a librdf_stream of statements. parser : the parser uri : the URI to read base_uri : the base URI to use or NULL Returns : librdf_stream of statements or NULL librdf_parser_parse_into_model () librdf_parser_parse_into_modelint librdf_parser_parse_into_model (librdf_parser *parser, librdf_uri *uri, librdf_uri *base_uri, librdf_model *model); Parse a URI of content into an librdf_model. parser : the parser uri : the URI to read the content base_uri : the base URI to use or NULL model : the model to use Returns : non 0 on failure librdf_parser_parse_file_handle_as_stream () librdf_parser_parse_file_handle_as_streamlibrdf_stream* librdf_parser_parse_file_handle_as_stream (librdf_parser *parser, FILE *fh, int close_fh, librdf_uri *base_uri); Parse a FILE* handle of content to a librdf_stream of statements. parser : the parser fh : FILE* to read content source close_fh : non-0 to fclose() the file handle on finishing base_uri : the base URI to use (or NULL) Returns : librdf_stream of statements or NULL librdf_parser_parse_file_handle_into_model () librdf_parser_parse_file_handle_into_modelint librdf_parser_parse_file_handle_into_model (librdf_parser *parser, FILE *fh, int close_fh, librdf_uri *base_uri, librdf_model *model); Parse a FILE* handle of content into an librdf_model. parser : the parser fh : FILE* to read content source close_fh : non-0 to fclose() the file handle on finishing base_uri : the base URI to use (or NULL) model : the model to write to Returns : non 0 on failure librdf_parser_parse_string_as_stream () librdf_parser_parse_string_as_streamlibrdf_stream* librdf_parser_parse_string_as_stream (librdf_parser *parser, unsigned char *string, librdf_uri *base_uri); Parse a string of content to a librdf_stream of statements. parser : the parser string : the string to parse base_uri : the base URI to use or NULL Returns : librdf_stream of statements or NULL librdf_parser_parse_string_into_model () librdf_parser_parse_string_into_modelint librdf_parser_parse_string_into_model (librdf_parser *parser, unsigned char *string, librdf_uri *base_uri, librdf_model *model); Parse a string of content into an librdf_model. parser : the parser string : the content to parse base_uri : the base URI to use or NULL model : the model to use Returns : non 0 on failure librdf_parser_set_error () librdf_parser_set_errorvoid librdf_parser_set_error (librdf_parser *parser, void *user_data, void (error_fnvoid *user_data, const char *msg, ...) ()); Deprecated: Does nothing Set the parser error handling function. parser : the parser user_data : user data to pass to function error_fn : pointer to the function librdf_parser_set_warning () librdf_parser_set_warningvoid librdf_parser_set_warning (librdf_parser *parser, void *user_data, void (warning_fnvoid *user_data, const char *msg, ...) ()); Deprecated: Does nothing. Set the parser warning handling function. parser : the parser user_data : user data to pass to function warning_fn : pointer to the function librdf_parser_parse_counted_string_as_stream () librdf_parser_parse_counted_string_as_streamlibrdf_stream* librdf_parser_parse_counted_string_as_stream (librdf_parser *parser, unsigned char *string, size_t length, librdf_uri *base_uri); Parse a counted string of content to a librdf_stream of statements. parser : the parser string : the string to parse length : length of the string content (must be >0) base_uri : the base URI to use or NULL Returns : librdf_stream of statements or NULL librdf_parser_parse_counted_string_into_model () librdf_parser_parse_counted_string_into_modelint librdf_parser_parse_counted_string_into_model (librdf_parser *parser, unsigned char *string, size_t length, librdf_uri *base_uri, librdf_model *model); Parse a counted string of content into an librdf_model. parser : the parser string : the content to parse length : length of content (must be >0) base_uri : the base URI to use or NULL model : the model to use Returns : non 0 on failure LIBRDF_PARSER_FEATURE_ERROR_COUNT LIBRDF_PARSER_FEATURE_ERROR_COUNT#define LIBRDF_PARSER_FEATURE_ERROR_COUNT "http://feature.librdf.org/parser-error-count" Parser feature URI string for getting the error count of the last parse. LIBRDF_PARSER_FEATURE_WARNING_COUNT LIBRDF_PARSER_FEATURE_WARNING_COUNT#define LIBRDF_PARSER_FEATURE_WARNING_COUNT "http://feature.librdf.org/parser-warning-count" Parser feature URI string for getting the warning count of the last parse. librdf_parser_get_feature () librdf_parser_get_featurelibrdf_node* librdf_parser_get_feature (librdf_parser *parser, librdf_uri *feature); Get the value of a parser feature. parser : librdf_parser object feature : librdf_Uuri feature property Returns : new librdf_node feature value or NULL if no such feature exists or the value is empty. librdf_parser_set_feature () librdf_parser_set_featureint librdf_parser_set_feature (librdf_parser *parser, librdf_uri *feature, librdf_node *value); Set the value of a parser feature. parser : librdf_parser object feature : librdf_uri feature property value : librdf_node feature property value Returns : non 0 on failure (negative if no such feature) librdf_parser_get_accept_header () librdf_parser_get_accept_headerchar* librdf_parser_get_accept_header (librdf_parser *parser); Get an HTTP Accept value for the parser. The returned string must be freed by the caller such as with raptor_free_memory(). parser : parser Returns : a new Accept: header string or NULL on failure librdf_parser_get_namespaces_seen_count () librdf_parser_get_namespaces_seen_countint librdf_parser_get_namespaces_seen_count (librdf_parser *parser); Get the number of namespaces seen during parsing parser : librdf_parser object Returns : uri or NULL if no such namespace uri librdf_parser_get_namespaces_seen_prefix () librdf_parser_get_namespaces_seen_prefixconst char* librdf_parser_get_namespaces_seen_prefix (librdf_parser *parser, int offset); Get the prefix of namespaces seen during parsing parser : librdf_parser object offset : index into list of namespaces Returns : prefix or NULL if no such namespace prefix librdf_parser_get_namespaces_seen_uri () librdf_parser_get_namespaces_seen_urilibrdf_uri* librdf_parser_get_namespaces_seen_uri (librdf_parser *parser, int offset); Get the uri of namespaces seen during parsing parser : librdf_parser object offset : index into list of namespaces Returns : uri or NULL if no such namespace uri librdf_parser_get_uri_filter () librdf_parser_get_uri_filterlibrdf_uri_filter_func librdf_parser_get_uri_filter (librdf_parser *parser, void **user_data_p); Get the current URI filter function for retrieval during parsing. parser : librdf_parser object user_data_p : Pointer to user data to return Returns : current URI filter function librdf_parser_set_uri_filter () librdf_parser_set_uri_filtervoid librdf_parser_set_uri_filter (librdf_parser *parser, librdf_uri_filter_funcfilter , void *user_data); Set URI filter function for retrieval during parsing. parser : librdf_parser object Param2 : user_data : User data to pass to filter function