Prefixes

Prefixes — XML QName-style prefixes made from a URI and a short text prefix.

Synopsis

                    rasqal_prefix;
rasqal_prefix*      rasqal_new_prefix                   (unsigned char *prefix,
                                                         raptor_uri *uri);
void                rasqal_free_prefix                  (rasqal_prefix *p);
void                rasqal_prefix_print                 (rasqal_prefix *p,
                                                         FILE *fh);

Description

Used inside a rasqal_query to declare syntax prefix abbreviations for URIs. Once a rasqal_query is constructed, these are for information only.

Details

rasqal_prefix

typedef struct {
  const unsigned char *prefix;
  raptor_uri* uri;
  int declared;
  int depth;
} rasqal_prefix;

Namespace (prefix, uri) pair.

Includes internal flags used for marking when prefixes are declared and at what XML element depth when used in XML formats.

raptor_uri *uri;

URI associated with the prefix.

int declared;

Internal flag.

int depth;

Internal flag.

rasqal_new_prefix ()

rasqal_prefix*      rasqal_new_prefix                   (unsigned char *prefix,
                                                         raptor_uri *uri);

Constructor - create a new rasqal_prefix. Takes ownership of prefix and uri.

prefix :

Short prefix string to stand for URI or NULL.

uri :

Name raptor_uri.

Returns :

a new rasqal_prefix or NULL on failure.

rasqal_free_prefix ()

void                rasqal_free_prefix                  (rasqal_prefix *p);

Destructor - destroy a rasqal_prefix object.

p :

rasqal_prefix object.

rasqal_prefix_print ()

void                rasqal_prefix_print                 (rasqal_prefix *p,
                                                         FILE *fh);

Print a Rasqal prefix in a debug format.

The print debug format may change in any release.

p :

rasqal_prefix object.

fh :

The FILE* handle to print to.