Features

Features — Parser and Serializer features

Synopsis

enum                raptor_feature;
unsigned int        raptor_get_feature_count            (void);
int                 raptor_features_enumerate           (const raptor_feature feature,
                                                         const char **name,
                                                         raptor_uri **uri,
                                                         const char **label);
raptor_feature      raptor_feature_from_uri             (raptor_uri *uri);
int                 raptor_feature_value_type           (const raptor_feature feature);

Description

Optional parameters for raptor_parser and raptor_serializer objects that can be get and set. Utility functions also exist to enumerate them, their description and the parameter type taken.

Details

enum raptor_feature

typedef enum {
  RAPTOR_FEATURE_SCANNING,
  RAPTOR_FEATURE_ASSUME_IS_RDF,
  RAPTOR_FEATURE_ALLOW_NON_NS_ATTRIBUTES,
  RAPTOR_FEATURE_ALLOW_OTHER_PARSETYPES,
  RAPTOR_FEATURE_ALLOW_BAGID,
  RAPTOR_FEATURE_ALLOW_RDF_TYPE_RDF_LIST,
  RAPTOR_FEATURE_NORMALIZE_LANGUAGE,
  RAPTOR_FEATURE_NON_NFC_FATAL,
  RAPTOR_FEATURE_WARN_OTHER_PARSETYPES,
  RAPTOR_FEATURE_CHECK_RDF_ID,
  RAPTOR_FEATURE_RELATIVE_URIS,
  RAPTOR_FEATURE_START_URI,
  RAPTOR_FEATURE_WRITER_AUTO_INDENT,
  RAPTOR_FEATURE_WRITER_AUTO_EMPTY,
  RAPTOR_FEATURE_WRITER_INDENT_WIDTH,
  RAPTOR_FEATURE_WRITER_XML_VERSION,
  RAPTOR_FEATURE_WRITER_XML_DECLARATION,
  RAPTOR_FEATURE_NO_NET,
  RAPTOR_FEATURE_RESOURCE_BORDER,
  RAPTOR_FEATURE_LITERAL_BORDER,
  RAPTOR_FEATURE_BNODE_BORDER,
  RAPTOR_FEATURE_RESOURCE_FILL,
  RAPTOR_FEATURE_LITERAL_FILL,
  RAPTOR_FEATURE_BNODE_FILL,
  RAPTOR_FEATURE_HTML_TAG_SOUP,
  RAPTOR_FEATURE_MICROFORMATS,
  RAPTOR_FEATURE_HTML_LINK,
  RAPTOR_FEATURE_WWW_TIMEOUT,
  RAPTOR_FEATURE_WRITE_BASE_URI,
  RAPTOR_FEATURE_WWW_HTTP_CACHE_CONTROL,
  RAPTOR_FEATURE_WWW_HTTP_USER_AGENT,
  RAPTOR_FEATURE_JSON_CALLBACK,
  RAPTOR_FEATURE_JSON_EXTRA_DATA,
  RAPTOR_FEATURE_RSS_TRIPLES,
  RAPTOR_FEATURE_ATOM_ENTRY_URI,
  RAPTOR_FEATURE_PREFIX_ELEMENTS,
  RAPTOR_FEATURE_LAST = RAPTOR_FEATURE_PREFIX_ELEMENTS
} raptor_feature;

Raptor parser, serializer or XML writer features.

RAPTOR_FEATURE_SCANNING

If true (default false), the RDF/XML parser will look for embedded rdf:RDF elements inside the XML content, and not require that the XML start with an rdf:RDF root element.

RAPTOR_FEATURE_ASSUME_IS_RDF

If true (default false) then the RDF/XML parser will assume the content is RDF/XML, not require that rdf:RDF root element, and immediately interpret the content as RDF/XML.

RAPTOR_FEATURE_ALLOW_NON_NS_ATTRIBUTES

If true (default true) then the RDF/XML parser will allow non-XML namespaced attributes to be accepted as well as rdf: namespaced ones. For example, 'about' and 'ID' will be interpreted as if they were rdf:about and rdf:ID respectively.

RAPTOR_FEATURE_ALLOW_OTHER_PARSETYPES

If true (default true) then the RDF/XML parser will allow unknown parsetypes to be present and will pass them on to the user. Unimplemented at present.

RAPTOR_FEATURE_ALLOW_BAGID

If true (default true) then the RDF/XML parser will support the rdf:bagID attribute that was removed from the RDF/XML language when it was revised. This support may be removed in future.

RAPTOR_FEATURE_ALLOW_RDF_TYPE_RDF_LIST

If true (default false) then the RDF/XML parser will generate the idList rdf:type rdf:List triple in the handling of rdf:parseType="Collection". This triple was removed during the revising of RDF/XML after collections were initially added.

RAPTOR_FEATURE_NORMALIZE_LANGUAGE

If true (default true) then XML language values such as from xml:lang will be normalized to lowercase.

RAPTOR_FEATURE_NON_NFC_FATAL

If true (default false) then illegal Unicode Normal Form C in literals will give a fatal error, otherwise just a warning.

RAPTOR_FEATURE_WARN_OTHER_PARSETYPES

If true (default true) then the RDF/XML parser will warn about unknown rdf:parseType values.

RAPTOR_FEATURE_CHECK_RDF_ID

If true (default true) then the RDF/XML will check rdf:ID attribute values for duplicates and cause an error if any are found.

RAPTOR_FEATURE_RELATIVE_URIS

If true (default true) then relative URIs will be used wherever possible when serializing.

RAPTOR_FEATURE_START_URI

Set the start URI for serlalizing to use.

RAPTOR_FEATURE_WRITER_AUTO_INDENT

Automatically indent elements when seriailizing.

RAPTOR_FEATURE_WRITER_AUTO_EMPTY

Automatically detect and abbreviate empty elements when serializing.

RAPTOR_FEATURE_WRITER_INDENT_WIDTH

Integer number of spaces to use for each indent level when serializing with auto indent.

RAPTOR_FEATURE_WRITER_XML_VERSION

Integer XML version XML 1.0 (10) or XML 1.1 (11)

RAPTOR_FEATURE_WRITER_XML_DECLARATION

Write XML 1.0 or 1.1 declaration.

RAPTOR_FEATURE_NO_NET

Deny network requests.

RAPTOR_FEATURE_RESOURCE_BORDER

Border color of resource nodes for GraphViz DOT serializer.

RAPTOR_FEATURE_LITERAL_BORDER

Border color of literal nodes for GraphViz DOT serializer.

RAPTOR_FEATURE_BNODE_BORDER

Border color of blank nodes for GraphViz DOT serializer.

RAPTOR_FEATURE_RESOURCE_FILL

Fill color of resource nodes for GraphViz DOT serializer.

RAPTOR_FEATURE_LITERAL_FILL

Fill color of literal nodes for GraphViz DOT serializer.

RAPTOR_FEATURE_BNODE_FILL

Fill color of blank nodes for GraphViz DOT serializer.

RAPTOR_FEATURE_HTML_TAG_SOUP

Use a lax HTML parser if an XML parser fails when read HTML for GRDDL parser.

RAPTOR_FEATURE_MICROFORMATS

Look for microformats for GRDDL parser.

RAPTOR_FEATURE_HTML_LINK

Look for head <link> to type rdf/xml for GRDDL parser.

RAPTOR_FEATURE_WWW_TIMEOUT

Set timeout for internal WWW URI requests for GRDDL parser.

RAPTOR_FEATURE_WRITE_BASE_URI

Write base directive for Turtle/N3.

RAPTOR_FEATURE_WWW_HTTP_CACHE_CONTROL

HTTP Cache-Control: header

RAPTOR_FEATURE_WWW_HTTP_USER_AGENT

HTTP User-Agent: header

RAPTOR_FEATURE_JSON_CALLBACK

JSON serializer callback function.

RAPTOR_FEATURE_JSON_EXTRA_DATA

JSON serializer extra top-level data

RAPTOR_FEATURE_RSS_TRIPLES

Atom/RSS serializer writes extra RDF triples it finds (none, rdf-xml, atom-triples)

RAPTOR_FEATURE_ATOM_ENTRY_URI

Atom entry URI. If given, generate an Atom Entry Document with the item having the given URI, otherwise generate an Atom Feed Document with any items found.

RAPTOR_FEATURE_PREFIX_ELEMENTS

Integer. If set, generate Atom/RSS1.0 documents with prefixed elements, otherwise unprefixed.

RAPTOR_FEATURE_LAST

Internal

raptor_get_feature_count ()

unsigned int        raptor_get_feature_count            (void);

Get the count of features defined.

This is prefered to the compile time-only symbol RAPTOR_FEATURE_LAST and returns a count of the number of features which is RAPTOR_FEATURE_LAST+1.

Returns :

count of features in the raptor_feature enumeration

raptor_features_enumerate ()

int                 raptor_features_enumerate           (const raptor_feature feature,
                                                         const char **name,
                                                         raptor_uri **uri,
                                                         const char **label);

Get list of syntax features.

If uri is not NULL, a pointer to a new raptor_uri is returned that must be freed by the caller with raptor_free_uri().

raptor_init() MUST have been called before calling this function. Use raptor_features_enumerate_v2() if using raptor_world APIs.

feature :

feature enumeration (0+)

name :

pointer to store feature short name (or NULL)

uri :

pointer to store feature URI (or NULL)

label :

pointer to feature label (or NULL)

Returns :

0 on success, <0 on failure, >0 if feature is unknown

raptor_feature_from_uri ()

raptor_feature      raptor_feature_from_uri             (raptor_uri *uri);

Turn a feature URI into an feature enum.

The allowed feature URIs are available via raptor_features_enumerate().

raptor_init() MUST have been called before calling this function. Use raptor_feature_from_uri_v2() if using raptor_world APIs.

uri :

feature URI

Returns :

< 0 if the feature is unknown

raptor_feature_value_type ()

int                 raptor_feature_value_type           (const raptor_feature feature);

Get the type of a features.

The type of the feature is 0=integer , 1=string. Other values are undefined. Most features are integer values and use raptor_set_feature and raptor_get_feature() ( raptor_serializer_set_feature raptor_serializer_get_feature() )

String value features use raptor_parser_set_feature_string() and raptor_parser_get_feature_string() ( raptor_serializer_set_feature_string() and raptor_serializer_get_feature_string() )

feature :

raptor serializer or parser feature

Returns :

the type of the feature or <0 if feature is unknown