#ifndef _LSUP_NT_PARSER_H #define _LSUP_NT_PARSER_H #include "codec.h" /** @brief Parse a single term. * * @param[in] rep N-Triples representation as a character string. * * @param[in] map Unused: there is no namespace prefixing in N-triples. Kept * for interface compatibility. May be NULL. * * @param[out] term Term to be created from the string. * * @return LSUP_OK on success, LSUP_VALUE_ERR if the string is not valid * N-Triples syntax for a IRI ref, Literal or BNode. */ LSUP_rc LSUP_nt_parse_term (const char *rep, const LSUP_NSMap *map, LSUP_Term **term); /** @brief Parse a N-Triples document from a file handle. * * @param[in] doc N-Triples document. * * @param[out] Pointer to a graph handle to be created. The new graph will have * a random UUID URN. * * @param[out] ct If not NULL it is populated with the number of triples * parsed. This may be more than the triples in the resulting graph. * * @return LSUP_OK on success, LSUP_VALUE_ERR if a parsing error was * encountered. TODO Add line/char info for parsing error */ LSUP_rc LSUP_nt_parse_doc (FILE *stream, LSUP_Graph **gr, size_t *ct, char **err); #endif