Top |
raptor_uri * raptor_new_uri (raptor_world *world
,const 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 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 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 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 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 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 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 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 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 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 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.