![]() |
![]() |
![]() |
Raptor RDF Syntax Library Manual | ![]() |
---|---|---|---|---|
Top | Description |
typedef raptor_iostream; int (*raptor_iostream_init_func) (void *context
); void (*raptor_iostream_finish_func) (void *context
); int (*raptor_iostream_write_byte_func) (void *context
,const int byte
); int (*raptor_iostream_write_bytes_func) (void *context
,const void *ptr
,size_t size
,size_t nmemb
); int (*raptor_iostream_write_end_func) (void *context
); int (*raptor_iostream_read_bytes_func) (void *context
,void *ptr
,size_t size
,size_t nmemb
); int (*raptor_iostream_read_eof_func) (void *context
); raptor_iostream_handler; raptor_iostream * raptor_new_iostream_from_handler (raptor_world *world
,void *user_data
,const raptor_iostream_handler * const handler
); raptor_iostream * raptor_new_iostream_from_sink (raptor_world *world
); raptor_iostream * raptor_new_iostream_from_filename (raptor_world *world
,const char *filename
); raptor_iostream * raptor_new_iostream_from_file_handle (raptor_world *world
,FILE *handle
); raptor_iostream * raptor_new_iostream_from_string (raptor_world *world
,void *string
,size_t length
); raptor_iostream * raptor_new_iostream_to_sink (raptor_world *world
); raptor_iostream * raptor_new_iostream_to_filename (raptor_world *world
,const char *filename
); raptor_iostream * raptor_new_iostream_to_file_handle (raptor_world *world
,FILE *handle
); raptor_iostream * raptor_new_iostream_to_string (raptor_world *world
,void **string_p
,size_t *length_p
,raptor_data_malloc_handler const malloc_handler
); void raptor_free_iostream (raptor_iostream *iostr
); int raptor_iostream_hexadecimal_write (unsigned int integer
,int width
,raptor_iostream *iostr
); int raptor_iostream_read_bytes (void *ptr
,size_t size
,size_t nmemb
,raptor_iostream *iostr
); int raptor_iostream_read_eof (raptor_iostream *iostr
); unsigned long raptor_iostream_tell (raptor_iostream *iostr
); int raptor_iostream_counted_string_write (const void *string
,size_t len
,raptor_iostream *iostr
); int raptor_iostream_decimal_write (int integer
,raptor_iostream *iostr
); int raptor_iostream_string_write (const void *string
,raptor_iostream *iostr
); int raptor_iostream_write_byte (const int byte
,raptor_iostream *iostr
); int raptor_iostream_write_bytes (const void *ptr
,size_t size
,size_t nmemb
,raptor_iostream *iostr
); int raptor_iostream_write_end (raptor_iostream *iostr
); int raptor_bnodeid_ntriples_write (const unsigned char *bnodeid
,size_t len
,raptor_iostream *iostr
); enum raptor_escaped_write_bitflags; int raptor_string_escaped_write (const unsigned char *string
,size_t len
,const char delim
,unsigned int flags
,raptor_iostream *iostr
); int raptor_term_escaped_write (const raptor_term *term
,unsigned int flags
,raptor_iostream *iostr
); int raptor_uri_escaped_write (raptor_uri *uri
,raptor_uri *base_uri
,unsigned int flags
,raptor_iostream *iostr
); int raptor_string_ntriples_write (const unsigned char *string
,size_t len
,const char delim
,raptor_iostream *iostr
); int raptor_string_python_write (const unsigned char *string
,size_t len
,const char delim
,unsigned int mode
,raptor_iostream *iostr
);
An class providing an I/O writer abstraction that allows generating
output that can be stored or passed on to system files, strings
allocated in memory (usually via raptor_stringbuffer), system
file handles (FILE*
) or to a user function.
int (*raptor_iostream_init_func) (void *context
);
Handler function for raptor_iostream initialising.
|
stream context data |
Returns : |
non-0 on failure. |
void (*raptor_iostream_finish_func) (void *context
);
Handler function for raptor_iostream terminating.
|
stream context data |
int (*raptor_iostream_write_byte_func) (void *context
,const int byte
);
Handler function for implementing raptor_iostream_write_byte()
.
|
stream context data |
|
byte to write |
Returns : |
non-0 on failure. |
int (*raptor_iostream_write_bytes_func) (void *context
,const void *ptr
,size_t size
,size_t nmemb
);
Handler function for implementing raptor_iostream_write_bytes()
.
|
stream context data |
|
pointer to bytes to write |
|
size of item |
|
number of items |
Returns : |
non-0 on failure. |
int (*raptor_iostream_write_end_func) (void *context
);
Handler function for implementing raptor_iostream_write_end()
.
|
stream context data |
Returns : |
non-0 on failure. |
int (*raptor_iostream_read_bytes_func) (void *context
,void *ptr
,size_t size
,size_t nmemb
);
Handler function for implementing raptor_iostream_read_bytes()
.
|
stream context data |
|
pointer to buffer to read into |
|
size of buffer |
|
number of items |
Returns : |
number of items read, 0 or < size on EOF, <0 on failure |
int (*raptor_iostream_read_eof_func) (void *context
);
Handler function for implementing raptor_iostream_read_eof()
.
|
stream context data |
Returns : |
non-0 if EOF |
typedef struct { int version; /* V1 functions */ raptor_iostream_init_func init; raptor_iostream_finish_func finish; raptor_iostream_write_byte_func write_byte; raptor_iostream_write_bytes_func write_bytes; raptor_iostream_write_end_func write_end; /* V2 functions */ raptor_iostream_read_bytes_func read_bytes; raptor_iostream_read_eof_func read_eof; } raptor_iostream_handler;
I/O stream implementation handler structure.
interface version. Presently 1 or 2. | |
initialisation handler - optional, called at most once (V1) | |
raptor_iostream_finish_func |
finishing handler - optional, called at most once (V1) |
raptor_iostream_write_byte_func |
write byte handler - required (for writing) (V1) |
raptor_iostream_write_bytes_func |
write bytes handler - required (for writing) (V1) |
raptor_iostream_write_end_func |
write end handler - optional (for writing), called at most once (V1) |
raptor_iostream_read_bytes_func |
read bytes handler - required (for reading) (V2) |
raptor_iostream_read_eof_func |
read EOF handler - required (for reading) (V2) |
raptor_iostream * raptor_new_iostream_from_handler (raptor_world *world
,void *user_data
,const raptor_iostream_handler * const handler
);
Create a new iostream over a user-defined handler
|
raptor_world object |
|
pointer to context information to pass in to calls |
|
pointer to handler methods |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_from_sink (raptor_world *world
);
Create a new read iostream from a sink, returning no data.
Provides an I/O source that returns end of input immediately on
reads, and throw away all writes. Same as
raptor_new_iostream_to_sink()
|
raptor world |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_from_filename (raptor_world *world
,const char *filename
);
Constructor - create a new iostream reading from a filename.
|
raptor world |
|
Input filename to open and read from |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_from_file_handle (raptor_world *world
,FILE *handle
);
Constructor - create a new iostream reading from a file_handle.
The handle
must already be open for reading.
NOTE: This does not fclose the handle
when it is finished.
|
raptor world |
|
Input file_handle to open and read from |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_from_string (raptor_world *world
,void *string
,size_t length
);
Constructor - create a new iostream reading from a string.
|
raptor world |
|
pointer to string |
|
length of string |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_to_sink (raptor_world *world
);
Create a new write iostream to a sink, throwing away all data.
Provides an that throw away all writes and returns end of input
immediately on reads. Same as raptor_new_iostream_from_sink()
|
raptor_world object |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_to_filename (raptor_world *world
,const char *filename
);
Constructor - create a new iostream writing to a filename.
|
raptor world |
|
Output filename to open and write to |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_to_file_handle (raptor_world *world
,FILE *handle
);
Constructor - create a new iostream writing to a FILE*.
The handle
must already be open for writing.
NOTE: This does not fclose the handle
when it is finished.
|
raptor world |
|
FILE* handle to write to |
Returns : |
new raptor_iostream object or NULL on failure |
raptor_iostream * raptor_new_iostream_to_string (raptor_world *world
,void **string_p
,size_t *length_p
,raptor_data_malloc_handler const malloc_handler
);
Constructor - create a new iostream writing to a string.
If malloc_handler
is null, raptor will allocate it using it's
own memory allocator. *string_p
is set to NULL on failure (and
*length_p
to 0 if length_p
is not NULL).
|
raptor world |
|
pointer to location to hold string |
|
pointer to location to hold length of string (or NULL) |
|
pointer to malloc() to use to make string (or NULL) |
Returns : |
new raptor_iostream object or NULL on failure |
void raptor_free_iostream (raptor_iostream *iostr
);
Destructor - destroy an iostream.
|
iostream object |
int raptor_iostream_hexadecimal_write (unsigned int integer
,int width
,raptor_iostream *iostr
);
Write an integer in hexadecimal to the iostream.
Always 0-fills the entire field and writes in uppercase A-F
|
unsigned integer to format as hexadecimal |
|
field width |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_iostream_read_bytes (void *ptr
,size_t size
,size_t nmemb
,raptor_iostream *iostr
);
Read bytes to the iostream.
|
start of buffer to read objects into |
|
size of object |
|
number of objects to read |
|
raptor iostream |
Returns : |
number of objects read, 0 or less than nmemb on EOF, <0 on failure |
int raptor_iostream_read_eof (raptor_iostream *iostr
);
Check if an read iostream has ended
|
raptor read iostream |
Returns : |
non-0 if EOF (or not a read iostream) |
unsigned long raptor_iostream_tell (raptor_iostream *iostr
);
Get the offset in the iostream.
|
raptor iostream |
Returns : |
offset in iostream |
int raptor_iostream_counted_string_write (const void *string
,size_t len
,raptor_iostream *iostr
);
Write a counted string to the iostream.
|
string |
|
string length |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_iostream_decimal_write (int integer
,raptor_iostream *iostr
);
Write an integer in decimal to the iostream.
|
integer to format as decimal |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_iostream_string_write (const void *string
,raptor_iostream *iostr
);
Write a NULL-terminated string to the iostream.
|
string |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_iostream_write_byte (const int byte
,raptor_iostream *iostr
);
Write a byte to the iostream.
|
byte to write |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_iostream_write_bytes (const void *ptr
,size_t size
,size_t nmemb
,raptor_iostream *iostr
);
Write bytes to the iostream.
|
start of objects to write |
|
size of object |
|
number of objects |
|
raptor iostream |
Returns : |
number of objects actually written, which may be less than nmemb. <0 on failure |
int raptor_iostream_write_end (raptor_iostream *iostr
);
End writing to the iostream.
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_bnodeid_ntriples_write (const unsigned char *bnodeid
,size_t len
,raptor_iostream *iostr
);
Write a blank node ID in a form legal for N-Triples with _: prefix
|
bnode ID to write |
|
length of bnode ID |
|
raptor_iostream to write to |
Returns : |
non-0 on failure |
typedef enum { RAPTOR_ESCAPED_WRITE_BITFLAG_BS_ESCAPES_BF = 1, RAPTOR_ESCAPED_WRITE_BITFLAG_BS_ESCAPES_TNRU = 2, RAPTOR_ESCAPED_WRITE_BITFLAG_UTF8 = 4, RAPTOR_ESCAPED_WRITE_BITFLAG_SPARQL_URI_ESCAPES = 8, /* N-Triples - favour writing \u, \U over UTF8 */ RAPTOR_ESCAPED_WRITE_NTRIPLES_LITERAL = RAPTOR_ESCAPED_WRITE_BITFLAG_BS_ESCAPES_TNRU | RAPTOR_ESCAPED_WRITE_BITFLAG_BS_ESCAPES_BF, RAPTOR_ESCAPED_WRITE_NTRIPLES_URI = RAPTOR_ESCAPED_WRITE_BITFLAG_SPARQL_URI_ESCAPES, /* SPARQL literal: allows raw UTF8 for printable literals */ RAPTOR_ESCAPED_WRITE_SPARQL_LITERAL = RAPTOR_ESCAPED_WRITE_BITFLAG_UTF8, /* SPARQL long literal: no BS-escapes allowed */ RAPTOR_ESCAPED_WRITE_SPARQL_LONG_LITERAL = RAPTOR_ESCAPED_WRITE_BITFLAG_UTF8, /* SPARQL uri: have to escape certain characters */ RAPTOR_ESCAPED_WRITE_SPARQL_URI = RAPTOR_ESCAPED_WRITE_BITFLAG_UTF8 | RAPTOR_ESCAPED_WRITE_BITFLAG_SPARQL_URI_ESCAPES, /* Turtle (2013) escapes are like SPARQL */ RAPTOR_ESCAPED_WRITE_TURTLE_URI = RAPTOR_ESCAPED_WRITE_SPARQL_URI, RAPTOR_ESCAPED_WRITE_TURTLE_LITERAL = RAPTOR_ESCAPED_WRITE_SPARQL_LITERAL, RAPTOR_ESCAPED_WRITE_TURTLE_LONG_LITERAL = RAPTOR_ESCAPED_WRITE_SPARQL_LONG_LITERAL, /* JSON literals: \b \f \t \r \n and \u \U */ RAPTOR_ESCAPED_WRITE_JSON_LITERAL = RAPTOR_ESCAPED_WRITE_BITFLAG_BS_ESCAPES_TNRU | RAPTOR_ESCAPED_WRITE_BITFLAG_BS_ESCAPES_BF } raptor_escaped_write_bitflags;
Bit flags for raptor_string_escaped_write()
and friends.
Allow \b \f, | |
ALlow \t \n \r \u | |
Allow UTF-8 for printable U * | |
Must escape x00-x20<>\"{}|^` in URIs | |
N-Triples literal | |
N-Triples URI | |
SPARQL literal: allows raw UTF8 for printable literals | |
SPARQL long literal: no BS-escapes allowed | |
SPARQL uri: have to escape certain characters | |
Turtle 2013 URIs (like SPARQL) | |
Turtle 2013 literals (like SPARQL) | |
Turtle 2013 long literals (like SPARQL) | |
JSON literals: \b \f \t \r \n and \u \U |
int raptor_string_escaped_write (const unsigned char *string
,size_t len
,const char delim
,unsigned int flags
,raptor_iostream *iostr
);
Write a UTF-8 string formatted using different escapes to a raptor_iostream
Supports writing escapes in the Python, N-Triples, Turtle, JSON, SPARQL styles to an iostream.
|
UTF-8 string to write |
|
length of UTF-8 string |
|
Terminating delimiter character for string (such as " or >) or \0 for no escaping. |
|
bit flags - see raptor_escaped_write_bitflags |
|
raptor_iostream to write to |
Returns : |
non-0 on failure such as bad UTF-8 encoding. |
int raptor_term_escaped_write (const raptor_term *term
,unsigned int flags
,raptor_iostream *iostr
);
Write a raptor_term formatted with escapes to a raptor_iostream
|
term to write |
|
bit flags - see raptor_escaped_write_bitflags |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_uri_escaped_write (raptor_uri *uri
,raptor_uri *base_uri
,unsigned int flags
,raptor_iostream *iostr
);
Write a raptor_uri formatted with escapes to a raptor_iostream
|
uri to write |
|
base uri to write relative to (or NULL) |
|
bit flags - see raptor_escaped_write_bitflags |
|
raptor iostream |
Returns : |
non-0 on failure |
int raptor_string_ntriples_write (const unsigned char *string
,size_t len
,const char delim
,raptor_iostream *iostr
);
Write an UTF-8 string using N-Triples escapes to an iostream.
|
UTF-8 string to write |
|
length of UTF-8 string |
|
Terminating delimiter character for string (such as " or >) or \0 for no escaping. |
|
raptor_iostream to write to |
Returns : |
non-0 on failure such as bad UTF-8 encoding. |
int raptor_string_python_write (const unsigned char *string
,size_t len
,const char delim
,unsigned int mode
,raptor_iostream *iostr
);
Write a UTF-8 string using Python-style escapes (N-Triples, Turtle, JSON) to a raptor_iostream
Deprecated
: use raptor_string_escaped_write()
where the features
requested are bits that can be individually chosen.
|
UTF-8 string to write |
|
length of UTF-8 string |
|
Terminating delimiter character for string (such as " or >) or \0 for no escaping. |
|
mode 0=N-Triples mode, 1=Turtle (allow raw UTF-8), 2=Turtle long string (allow raw UTF-8), 3=JSON |
|
raptor_iostream to write to |
Returns : |
non-0 on failure such as bad UTF-8 encoding. |