| Top |
raptor_uri * raptor_new_uri (raptor_world *world,const unsigned char *uri_string);
Constructor - create a raptor URI from a UTF-8 encoded Unicode string.
raptor_uri * raptor_new_uri_from_counted_string (raptor_world *world,const unsigned char *uri_string,size_t length);
Constructor - create a raptor URI from a UTF-8 encoded Unicode string.
Note: The uri_string
need not be NULL terminated - a NULL will be
added to the copied string used.
raptor_uri * raptor_new_uri_from_uri_local_name (raptor_world *world,raptor_uri *uri,const unsigned char *local_name);
Constructor - create a raptor URI from an existing URI and a local name.
Creates a new URI from the concatenation of the local_name
to the
uri
. This is NOT relative URI resolution, which is done by the
raptor_new_uri_relative_to_base() constructor.
raptor_uri * raptor_new_uri_from_uri_or_file_string (raptor_world *world,raptor_uri *base_uri,const unsigned char *uri_or_file_string);
Constructor - create a raptor URI from a string that is a relative or absolute URI or a filename
If the uri_or_file_string
is a filename PATH that exists, the
result will be a URI file://PATH
raptor_uri * raptor_new_uri_relative_to_base (raptor_world *world,raptor_uri *base_uri,const unsigned char *uri_string);
Constructor - create a raptor URI from a base URI and a relative URI string.
Use raptor_new_uri_relative_to_base_counted() if the URI string length is known
raptor_uri * raptor_new_uri_relative_to_base_counted (raptor_world *world,raptor_uri *base_uri,const unsigned char *uri_string,size_t uri_len);
Constructor - create a raptor URI from a base URI and a relative counted URI string.
raptor_uri * raptor_new_uri_from_id (raptor_world *world,raptor_uri *base_uri,const unsigned char *id);
Constructor - create a new URI from a base URI and RDF ID.
This creates a URI equivalent to concatenating base_uri
with
raptor_uri * raptor_new_uri_for_rdf_concept (raptor_world *world,const unsigned char *name);
Constructor - create a raptor URI for the RDF namespace concept name.
Example: u=raptor_new_uri_for_rdf_concept("value") creates a new URI for the rdf:value term.
raptor_uri *
raptor_new_uri_for_xmlbase (raptor_uri *old_uri);
Constructor - create a URI suitable for use as an XML Base.
Takes an existing URI and ensures it has a path (default /) and has no fragment or query arguments - XML base does not use these.
raptor_uri *
raptor_new_uri_for_retrieval (raptor_uri *old_uri);
Constructor - create a URI suitable for retrieval.
Takes an existing URI and ensures it has a path (default /) and has no fragment - URI retrieval does not use the fragment part.
int raptor_uri_compare (raptor_uri *uri1,raptor_uri *uri2);
Compare two URIs, ala strcmp.
A NULL URI is always less than (never equal to) a non-NULL URI.
int raptor_uri_equals (raptor_uri *uri1,raptor_uri *uri2);
Check if two URIs are equal.
A NULL URI is not equal to a non-NULL URI.
raptor_uri *
raptor_uri_copy (raptor_uri *uri);
Constructor - get a copy of a URI.
unsigned char *
raptor_uri_as_string (raptor_uri *uri);
Get a string representation of a URI.
Returns a shared pointer to a string representation of uri
. This
string is shared and must not be freed, otherwise see use the
raptor_uri_to_string() or raptor_uri_to_counted_string() methods.
unsigned char * raptor_uri_as_counted_string (raptor_uri *uri,size_t *len_p);
Get a string representation of a URI with count.
Returns a shared pointer to a string representation of uri
along
with the length of the string in len_p
, if not NULL. This
string is shared and must not be freed, otherwise see use the
raptor_uri_to_string() or raptor_uri_to_counted_string() methods.
unsigned char * raptor_uri_to_relative_counted_uri_string (raptor_uri *base_uri,raptor_uri *reference_uri,size_t *length_p);
Get the counted relative URI string of a URI against a base URI.
unsigned char * raptor_uri_to_relative_uri_string (raptor_uri *base_uri,raptor_uri *reference_uri);
Get the relative URI string of a URI against a base URI.
unsigned char * raptor_uri_to_counted_string (raptor_uri *uri,size_t *len_p);
Get a new counted string for a URI.
If len_p
is not NULL, the length of the string is stored in it.
The memory allocated must be freed by the caller and
raptor_free_memory() should be used for best portability.
unsigned char *
raptor_uri_to_string (raptor_uri *uri);
Get a new string for a URI.
The memory allocated must be freed by the caller and
raptor_free_memory() should be used for best portability.
size_t raptor_uri_resolve_uri_reference (const unsigned char *base_uri,const unsigned char *reference_uri,unsigned char *buffer,size_t length);
Resolve a URI against a base URI to create a new absolute URI.
unsigned char * raptor_uri_counted_filename_to_uri_string (const char *filename,size_t filename_len);
Converts a counted filename to a file: URI.
Handles the OS-specific escaping on turning filenames into URIs
and returns a new buffer that the caller must free(). Turns a
space in the filename into %20 and '%' into %25.
unsigned char *
raptor_uri_filename_to_uri_string (const char *filename);
Converts a filename to a file: URI.
Handles the OS-specific escaping on turning filenames into URIs
and returns a new buffer that the caller must free(). Turns a
space in the filename into %20 and '%' into %25.
int
raptor_uri_uri_string_is_absolute (const unsigned char *uri_string);
Check if a uri string is an absolute URI
int
raptor_uri_uri_string_is_file_uri (const unsigned char *uri_string);
Check if a URI string is a file: URI.
char *
raptor_uri_uri_string_to_filename (const unsigned char *uri_string);
Convert a file: URI to a filename.
Handles the OS-specific file: URIs to filename mappings. Returns a new buffer containing the filename that the caller must free.
See also raptor_uri_uri_string_to_counted_filename_fragment()
char * raptor_uri_uri_string_to_filename_fragment (const unsigned char *uri_string,unsigned char **fragment_p);
Convert a file: URI to a filename and fragment.
Handles the OS-specific file: URIs to filename mappings. Returns a new buffer containing the filename that the caller must free.
If fragment_p
is given, a new string containing the URI fragment
is returned, or NULL if none is present
See also raptor_uri_uri_string_to_counted_filename_fragment()
char * raptor_uri_uri_string_to_counted_filename_fragment (const unsigned char *uri_string,size_t *len_p,unsigned char **fragment_p,size_t *fragment_len_p);
Convert a file: URI to a counted filename and counted fragment.
Handles the OS-specific file: URIs to filename mappings. Returns a new buffer containing the filename that the caller must free.
If len_p
is present the length of the filename is returned
If fragment_p
is given, a new string containing the URI fragment
is returned, or NULL if none is present. If fragment_len_p
is present
the length is returned in it.
int raptor_uri_print (const raptor_uri *uri,FILE *stream);
Print a URI to a file handle.
raptor_world *
raptor_uri_get_world (raptor_uri *uri);
Get the raptor_world object associated with a raptor_uri.
int raptor_uri_write (raptor_uri *uri,raptor_iostream *iostr);
Write a raptor URI to the iostream.
int
raptor_uri_file_exists (raptor_uri *uri);
Check if a file: URI is a file that exists
int
raptor_uri_filename_exists (const unsigned char *path);
Check if path
points to a file that exists
unsigned char * raptor_uri_to_turtle_counted_string (raptor_world *world,raptor_uri *uri,raptor_namespace_stack *nstack,raptor_uri *base_uri,size_t *len_p);
Convert raptor_uri to a string. Caller has responsibility to free the string.
Note: This creates and destroys several internal objects for each call so for more efficient writing, create a turtle serializer.
unsigned char * raptor_uri_to_turtle_string (raptor_world *world,raptor_uri *uri,raptor_namespace_stack *nstack,raptor_uri *base_uri);
Convert raptor_uri to a string. Caller has responsibility to free the string.
Note: This creates and destroys several internal objects for each call so for more efficient writing, create a turtle serializer.
int raptor_uri_turtle_write (raptor_world *world,raptor_iostream *iostr,raptor_uri *uri,raptor_namespace_stack *nstack,raptor_uri *base_uri);
Write raptor_uri to a stream in turtle syntax (using QNames).
Note: This creates and destroys several internal objects for each call so for more efficient writing, create a turtle serializer.