serializer

## serializer serializer |

## Functions

const raptor_syntax_description * | librdf_serializer_get_description ()
int | librdf_serializer_enumerate ()
void | librdf_serializer_register_factory ()
librdf_serializer * | librdf_new_serializer ()
librdf_serializer * | librdf_new_serializer_from_factory ()
void | librdf_free_serializer ()
int | librdf_serializer_check_name ()
int | librdf_serializer_serialize_model ()
int | librdf_serializer_serialize_model_to_file_handle ()
int | librdf_serializer_serialize_model_to_file ()
unsigned char * | librdf_serializer_serialize_model_to_string ()
unsigned char * | librdf_serializer_serialize_model_to_counted_string ()
int | librdf_serializer_serialize_model_to_iostream ()
unsigned char * | librdf_serializer_serialize_stream_to_counted_string ()
int | librdf_serializer_serialize_stream_to_file ()
int | librdf_serializer_serialize_stream_to_file_handle ()
int | librdf_serializer_serialize_stream_to_iostream ()
unsigned char * | librdf_serializer_serialize_stream_to_string ()
void | librdf_serializer_set_error ()
void | librdf_serializer_set_warning ()
librdf_node * | librdf_serializer_get_feature ()
int | librdf_serializer_set_feature ()
int | librdf_serializer_set_namespace ()

## Types and Values

typedef | librdf_serializer
typedef | librdf_serializer_factory

## Description

## Functions

### librdf_serializer_get_description ()

    const raptor_syntax_description *
    librdf_serializer_get_description (librdf_world *world,
                                       unsigned int counter);

Get serializer descriptive syntax information

#### Parameters

world | world object |
counter | index into the list of serializers |

#### Returns

description or NULL if counter is out of range

### librdf_serializer_enumerate ()

    int
    librdf_serializer_enumerate (librdf_world *world,
                                 const unsigned int counter,
                                 const char **name,
                                 const char **label);

`librdf_serializer_enumerate` is deprecated and should not be used in newly-written code.

Get information on serializers.

`Deprecated` : use `librdf_serializer_get_description()` to return more information in a static structure.

#### Parameters

world | redland world object |
counter | index into the list of serializers |
name | pointer to store the name of the serializer (or NULL) |
label | pointer to store syntax readable label (or NULL) |

#### Returns

non 0 on failure of if counter is out of range

### librdf_serializer_register_factory ()

    void
    librdf_serializer_register_factory (librdf_world *world,
                                        const char *name,
                                        const char *label,
                                        const char *mime_type,
                                        const unsigned char *uri_string,
                                        void (*factory) (librdf_serializer_factory*));

Register a serializer factory .

#### Parameters

world | redland world object |
name | the name of the serializer |
label | the label of the serializer (optional) |
mime_type | MIME type of the syntax (optional) |
uri_string | URI of the syntax (optional) |
factory | function to be called to register the factor parameters |

### librdf_new_serializer ()

    librdf_serializer *
    librdf_new_serializer (librdf_world *world,
                           const char *name,
                           const char *mime_type,
                           librdf_uri *type_uri);

Constructor - create a new librdf_serializer object.

#### Parameters

world | redland world object |
name | the serializer factory name (or NULL or empty string if don't care) |
mime_type | the MIME type of the syntax (NULL if not used) |
type_uri | URI of syntax (NULL if not used) |

#### Returns

new librdf_serializer object or NULL

### librdf_new_serializer_from_factory ()

    librdf_serializer *
    librdf_new_serializer_from_factory (librdf_world *world,
                                        librdf_serializer_factory *factory);

Constructor - create a new librdf_serializer object.

#### Parameters

world | redland world object |
factory | the serializer factory to use to create this serializer |

#### Returns

new librdf_serializer object or NULL

### librdf_free_serializer ()

    void
    librdf_free_serializer (librdf_serializer *serializer);

Destructor - destroys a librdf_serializer object.

#### Parameters

serializer | the serializer |

### librdf_serializer_check_name ()

    int
    librdf_serializer_check_name (librdf_world *world,
                                  const char *name);

Check if a serializer name is known

#### Parameters

world | redland world object |
name | name of serializer |

#### Returns

non 0 if name is a known serializer

### librdf_serializer_serialize_model ()

    int
    librdf_serializer_serialize_model (librdf_serializer *serializer,
                                       FILE *handle,
                                       librdf_uri *base_uri,
                                       librdf_model *model);

`librdf_serializer_serialize_model` is deprecated and should not be used in newly-written code.

`Deprecated` : Use `librdf_serializer_serialize_model_to_file_handle()`

Write a serialized librdf_model to a FILE*.

#### Parameters

serializer | the serializer |
handle | file handle to serialize to |
base_uri | the base URI to use (or NULL) |
model | the librdf_model model to use |

#### Returns

non 0 on failure

### librdf_serializer_serialize_model_to_file_handle ()

    int
    librdf_serializer_serialize_model_to_file_handle
                                   (librdf_serializer *serializer,
                                    FILE *handle,
                                    librdf_uri *base_uri,
                                    librdf_model *model);

Write a serialized librdf_model to a FILE*.

#### Parameters

serializer | the serializer |
handle | file handle to serialize to |
base_uri | the base URI to use (or NULL) |
model | the librdf_model model to use |

#### Returns

non 0 on failure

### librdf_serializer_serialize_model_to_file ()

    int
    librdf_serializer_serialize_model_to_file
                                   (librdf_serializer *serializer,
                                    const char *name,
                                    librdf_uri *base_uri,
                                    librdf_model *model);

Write a serialized librdf_model to a file.

#### Parameters

serializer | the serializer |
name | filename to serialize to |
base_uri | the base URI to use (or NULL) |
model | the librdf_model model to use |

#### Returns

non 0 on failure

### librdf_serializer_serialize_model_to_string ()

    unsigned char *
    librdf_serializer_serialize_model_to_string
                                   (librdf_serializer *serializer,
                                    librdf_uri *base_uri,
                                    librdf_model *model);

Write a serialized librdf_model to a string. The returned string must be freed by the caller using `librdf_free_memory()`.

#### Parameters

serializer | the serializer |
base_uri | the base URI to use (or NULL) |
model | the librdf_model model to use |

#### Returns

NULL on failure

### librdf_serializer_serialize_model_to_counted_string ()

    unsigned char *
    librdf_serializer_serialize_model_to_counted_string
                                   (librdf_serializer *serializer,
                                    librdf_uri *base_uri,
                                    librdf_model *model,
                                    size_t *length_p);

Write a serialized librdf_model to a counted string. The returned string must be freed by the caller using `librdf_free_memory()`.

#### Parameters

serializer | the serializer |
base_uri | the base URI to use (or NULL) |
model | the librdf_model model to use |
length_p | pointer to store length or NULL |

#### Returns

non 0 on failure

### librdf_serializer_serialize_model_to_iostream ()

    int
    librdf_serializer_serialize_model_to_iostream
                                   (librdf_serializer *serializer,
                                    librdf_uri *base_uri,
                                    librdf_model *model,
                                    raptor_iostream *iostr);

Write a serialized librdf_model to a raptor_iostream. This function takes ownership of the iostream and frees it.

#### Parameters

serializer | the serializer |
base_uri | the base URI to use (or NULL) |
model | the librdf_model model to use |
iostr | the raptor_iostream to write to |

#### Returns

non-0 on failure

### librdf_serializer_serialize_stream_to_counted_string ()

    unsigned char *
    librdf_serializer_serialize_stream_to_counted_string
                                   (librdf_serializer *serializer,
                                    librdf_uri *base_uri,
                                    librdf_stream *stream,
                                    size_t *length_p);

Write a librdf_stream to a counted string. Caller should free the string with `librdf_free_memory()`.

#### Parameters

serializer | the serializer |
base_uri | the base URI to use (or NULL) |
stream | the librdf_stream stream to use |
length_p | pointer to store length or NULL |

#### Returns

stream as string or NULL on failure

### librdf_serializer_serialize_stream_to_file ()

    int
    librdf_serializer_serialize_stream_to_file
                                   (librdf_serializer *serializer,
                                    const char *name,
                                    librdf_uri *base_uri,
                                    librdf_stream *stream);

Write a librdf_stream to a file.

#### Parameters

serializer | the serializer |
name | filename to serialize to |
base_uri | the base URI to use (or NULL) |
stream | the librdf_stream stream to use |

#### Returns

non 0 on failure

### librdf_serializer_serialize_stream_to_file_handle ()

    int
    librdf_serializer_serialize_stream_to_file_handle
                                   (librdf_serializer *serializer,
                                    FILE *handle,
                                    librdf_uri *base_uri,
                                    librdf_stream *stream);

Write a librdf_stream to a FILE*.

#### Parameters

serializer | the serializer |
handle | file handle to serialize to |
base_uri | the base URI to use (or NULL) |
stream | the librdf_stream model to use |

#### Returns

non 0 on failure

### librdf_serializer_serialize_stream_to_iostream ()

    int
    librdf_serializer_serialize_stream_to_iostream
                                   (librdf_serializer *serializer,
                                    librdf_uri *base_uri,
                                    librdf_stream *stream,
                                    raptor_iostream *iostr);

Write a librdf_stream to a raptor_iostream. This function takes ownership of the iostream and frees it.

#### Parameters

serializer | the serializer |
base_uri | the base URI to use (or NULL) |
stream | the librdf_stream stream to use |
iostr | the raptor_iostream to write to |

#### Returns

non-0 on failure

### librdf_serializer_serialize_stream_to_string ()

    unsigned char *
    librdf_serializer_serialize_stream_to_string
                                   (librdf_serializer *serializer,
                                    librdf_uri *base_uri,
                                    librdf_stream *stream);

Write a librdf_stream to a string.

#### Parameters

serializer | the serializer |
base_uri | the base URI to use (or NULL) |
stream | the librdf_stream stream to use |

#### Returns

NULL on failure

### librdf_serializer_set_error ()

    void
    librdf_serializer_set_error (librdf_serializer *serializer,
                                 void *user_data,
                                 void (*error_fn) (void *user_data, const char *msg, ...));

`Deprecated` : Does nothing

Set the serializer error handling function.

#### Parameters

serializer | the serializer |
user_data | user data to pass to function |
error_fn | pointer to the function |

### librdf_serializer_set_warning ()

    void
    librdf_serializer_set_warning (librdf_serializer *serializer,
                                   void *user_data,
                                   void (*warning_fn) (void *user_data, const char *msg, ...));

`Deprecated` : Does nothing

Set the serializer warning handling function.

#### Parameters

serializer | the serializer |
user_data | user data to pass to function |
warning_fn | pointer to the function |

### librdf_serializer_get_feature ()

    librdf_node *
    librdf_serializer_get_feature (librdf_serializer *serializer,
                                   librdf_uri *feature);

Get the value of a serializer feature.

#### Parameters

serializer | serializer object |
feature | URI of feature |

#### Returns

the value of the feature or NULL if no such feature exists or the value is empty.

### librdf_serializer_set_feature ()

    int
    librdf_serializer_set_feature (librdf_serializer *serializer,
                                   librdf_uri *feature,
                                   librdf_node *value);

Set the value of a serializer feature.

#### Parameters

serializer | serializer object |
feature | URI of feature |
value | value to set |

#### Returns

non 0 on failure (negative if no such feature)

### librdf_serializer_set_namespace ()

    int
    librdf_serializer_set_namespace (librdf_serializer *serializer,
                                     librdf_uri *uri,
                                     const char *prefix);

Set a namespace URI/prefix mapping.

#### Parameters

serializer | serializer object |
uri | URI of namespace or NULL |
prefix | prefix to use or NULL |

#### Returns

non 0 on failure

## Types and Values

### librdf_serializer

    typedef struct librdf_serializer_s librdf_serializer;

Redland serializer class.

### librdf_serializer_factory

    typedef struct librdf_serializer_factory_s librdf_serializer_factory;

Redland serializer factory class.