Fetching contributors…
Cannot retrieve contributors at this time
2425 lines (1664 sloc) 80.4 KB
2004-12-31 Dave Beckett <>
* raptor_rss.c (raptor_rss10_serialize_terminate):
Free all namespaces, now they are
not stacked explicitly. Free namespace stack.
(raptor_rss10_build_xml_names): Use raptor_new_namespace and don't
start the rdf namespace.
(raptor_rss10_build_xml_names): Use raptor_new_namespace and don't
start the namespaces
((raptor_rss10_serialize_end): Make a namespace stack here, with
only xml: defined.
* raptor_xml_writer.c (raptor_xml_writer_start_namespace_full):
(main): Declare the foo namespace but don't start it, so that the xml
writer will do that.
* raptor_xml_writer.c: Optionally declare a namespace stack internally.
(raptor_new_xml_writer): Add optional raptor_namespace_stack
parameter, if NULL declare one internally.
* turtle_lexer.l, turtle_parser.y: Delete unused WS token
* raptor_xml_writer.c, raptor_sax2.c, raptor_rss.c,
raptor_rdfxml.c, raptor_internal.h, raptor.h, libraptor.3:
Rename raptor_sax2_element to raptor_xml_element throughout.
* raptor_internal.h: Added feature_start_uri to raptor_serializer
* raptor_serialize.c (raptor_free_serializer):
Tidy up any feature_start_uri set.
(raptor_serializer_set_feature_string): Added, handling
feature_start_uri created from a passed in string.
(raptor_serializer_get_feature_string): Added, handling
feature_start_uri as a returned shared string.
* raptor_parse.c (raptor_parser_set_feature_string):
Added, always failing.
(raptor_parser_get_feature_string): Added, always failing.
* raptor.h: Added feature RAPTOR_FEATURE_START_URI
Added prototypes for raptor_parser_set_feature_string,
raptor_serializer_get_feature_string and
* raptor_feature.c: Added flag bits for string valued features.
Added startUri (RAPTOR_FEATURE_START_URI) with a string value.
(raptor_feature_value_type): Added, to return value of a feature.
2004-12-30 Dave Beckett <>
* libraptor.3: Added SAX2 XML Element and XML Writer classes.
* raptor_internal.h, raptor.h:
Moved raptor_sax2_element and raptor_xml_writer to public API.
* libraptor.3: Added rss-1.0 to raptor_new_serializer description.
* libraptor.3: More updates for 1.4.3
2004-12-25 Dave Beckett <>
* raptor_rss.c (raptor_rss_parser_processNode):
Turn <guid isPermaLink="true">val</guid>
into <guid rdf:resource="val"/>
(raptor_rss10_emit_item): Always serialize rss:items at the end of
an rss channel.
* raptor_xml_writer.c, raptor_xml.c, raptor_utf8.c, raptor_sax2.c,
raptor_rss.c, raptor_general.c: Casts for c++. Rename variables
namespace to nspace.
2004-12-24 Dave Beckett <>
* raptor_www_test.c (main): Cast for size_t
2004-12-23 Dave Beckett <>
* raptor_rss.c (raptor_rss10_serialize_statement): Fix item URI
check to use correct URI. In debugging unknown typed node, print
type URI.
* raptor_rss.c (raptor_rss10_serialize_statement): Do not look in
items with no URI.
(raptor_rss10_build_xml_names): Do not make qnames for types with
no namespace.
* raptor_rss.c (raptor_rss10_build_items): Do nothing if there is
no seq_uri
* raptor_rss.c (raptor_init_serializer_rss10): Give rss 1.0 a URI
* raptor_serialize.c (raptor_iostream_write_string_ntriples):
Renamed from raptor_serialize_ntriples_print_string and made public.
Handle delimiters that aren't ' or " such as >, and if found
\uHHHH escape it.
(raptor_iostream_write_statement_part_ntriples): Renamed from
raptor_serialize_ntriples_print_statement_part and made public.
(raptor_iostream_write_statement_ntriples): Added and made public.
(raptor_ntriples_serialize_statement): Moved most code to
* raptor.h: Add and export raptor_iostream_write_ntriples_string
and raptor_iostream_write_statement_ntriples
* tests/turtle/test-13.ttl, tests/turtle/test-13.out: Use a
namespace URI that gives a predicate which could be serialized to
* raptor_rss.c (raptor_rss_insert_identifiers): For channel type,
check both the link field and the atom:id field.
* raptor_rss.c (raptor_rss10_emit_item): Emit the
<rss:items><rdf:Seq><rdf:li /> .... </rdf:Seq></rss:items> here.
(raptor_rss10_serialize_end): Moved items code above.
* raptor_parse.c (raptor_guess_parser_name): Don't emit debug
messages about scores unless very debuggy.
* n3_lexer.l, turtle_lexer.l: In <PREF> state, accept remaining
characters so -s is true.
* raptor.h: Export raptor_xml_name_check
* raptor_xml.c (raptor_valid_xml_ID): Use raptor_xml_name_check
with appropriate XML version.
(raptor_xml_name_check): Added to check for a legal XML name.
* raptor_utf8.c (raptor_utf8_check): Added, to just check a string
is good UTF-8 and all the Unicode characters are 0 <= char <=
* raptor.h: Export raptor_utf8_check
* raptor_nfc_test.c (main): Use raptor_utf8_check
* raptor_xml_writer.c (main): Update tests for changed xml_writer api
* raptor.h: Export raptor_unicode_is_xml11_namestartchar,
raptor_unicode_is_xml11_namechar and
* raptor_utf8.c: (raptor_unicode_is_xml10_namestartchar,
raptor_unicode_is_xml11_namechar, raptor_unicode_is_xml10_namechar):
Added, as public functions called by raptor_unicode_is_namestartchar
and raptor_unicode_is_namechar respectively.
* raptor_rss.c (raptor_clear_rss_items): Renamed from
raptor_free_rss_items. Use raptor_free_rss_item.
(raptor_rss_context_terminate): Rename call to raptor_clear_rss_items
* raptor_rss.c (raptor_clear_rss_item): Renamed from
raptor_free_rss_item to empty a static raptor_rss_item.
(raptor_free_rss_item): Same as above but deallocates the item too.
(raptor_free_rss_items, raptor_rss_context_terminate): Use
* raptor_rss.c (raptor_rss10_move_statements): Add item arg.
Remove auto-fail with type RAPTOR_RSS_ITEM, and now look in the
sequence of items for instances of this type.
Count and report moved statements counts when debugging.
(raptor_rss10_store_statement): Only print out individal statement
moves when debugging.
(raptor_rss10_serialize_statement): When typed node is an item, get
the URI from the entry in the sequence if it exists, maybe move the
statements then.
(raptor_rss10_build_items): Move any item statements once the item
URIs have been made.
(raptor_rss10_serialize_end): Report triples remaining when
Remove last raw use of raptor_iostream*
2004-12-22 Dave Beckett <>
* raptor_rss.c: Fix 'enc' prefix.
Add rdf_RDF_element and xml_writer to raptor_rss10_serializer_context.
(raptor_rss10_serialize_init): No need for nstack here.
(raptor_rss10_serialize_terminate): Delete nstack tidy.
Tidy up xml_writer and type qnames.
(raptor_rss10_move_statements): Note don't do rss items.
(raptor_rss10_build_items): Build list of raptor_rss_item* in
(raptor_rss10_build_xml_names): Added to make namespaces and qnames
for fields and types; pulled out of raptor_rss10_build_items.
(raptor_rss10_emit_item): Delete xml-writer, iostr args.
Replace more raptor_iostream* functions with raptor_xml_writer*
(raptor_rss10_serialize_end): Extra nl at end
* raptor_rss.c: Fix 'enc' prefix.
Add rdf_RDF_element and xml_writer to raptor_rss10_serializer_context.
(raptor_rss10_serialize_init): No need for nstack here.
(raptor_rss10_serialize_terminate): Delete nstack tidy.
Tidy up xml_writer and type qnames.
(raptor_rss10_move_statements): Note don't do rss items.
(raptor_rss10_build_items): Build list of raptor_rss_item* in
(raptor_rss10_build_xml_names): Added to make namespaces and qnames
for fields and types; pulled out of raptor_rss10_build_items.
(raptor_rss10_emit_item): Delete xml-writer, iostr args.
Replace more raptor_iostream* functions with raptor_xml_writer*
(raptor_rss10_serialize_end): Move rdf_RDF qname stuff to new
Move bits around so that rdf:RDF is declared with all namespaces
known and using raptor_xml_writer_start_element.
Emit rdf:Seq and rdf:li elements using_xml_writer_start_element with
attributes as needed.
Attempt to emit channel items.
* raptor_internal.h: Remove
* raptor_xml_writer.c: Renamed content_cdata_namespaces to nstack,
content_cdata_namespaces_depth to nstack_depth.
(raptor_xml_writer_start_namespace_full): Added, to start a new
namespace in the xml_writer at the current element.
(raptor_xml_writer_cdata_counted, raptor_xml_writer_raw_counted,
raptor_xml_writer_comment_counted): Added.counted string versions.
* raptor_sax2.c (raptor_new_sax2_element, raptor_free_sax2_element):
Init/tidy declared_namespaces.
(raptor_sax2_declare_namespace): Added to declare the given namespace
on the element.
(raptor_iostream_write_sax2_element): Handle declared_namespaces;
boost the nspace_declarations by size of the sequence.
Declare all the namespaces in the declared_nspaces sequence.
* raptor_rdfxml.c (raptor_xml_comment_handler):
Use raptor_xml_writer_comment (uncounted).
(raptor_cdata_grammar): Use raptor_xml_writer_cdata_counted
* raptor_internal.h: raptor_sax2_element added declared_nspaces field
Added prototype for raptor_sax2_declare_namespace.
Added prototypes for raptor_xml_writer_start_namespace_full and
Split raptor_xml_writer_cdata / raptor_xml_writer_raw /
raptor_xml_writer_comment into uncounted and
raptor_xml_writer_cdata_counted / raw_counted / comment_counted
2004-12-21 Dave Beckett <>
* raptor_rss.c: Made rss1.0 the default namespace for writing;
added prefixes for others.
(raptor_rss10_serialize_end): Removed unused commented code.
* raptor_qname.c (raptor_qname_copy): Added.
* raptor.h: Added raptor_qname_copy.
* raptor_rss.c: raptor_rss_item field node_type is now a pointer to the
raptor_rss_info* for that node type.
(raptor_rss_insert_identifiers, raptor_rss_emit_item): Update for new
node_type definition.
raptor_rss10_serializer_context now has rdf_nspace
(raptor_rss10_build_items): Declare rdf namespace and store in
rss_serializer->rdf_nspace - freed when namespace stack is destroyed.
Declare all raptor_namespace* for the
Declare all raptor_qname* for the raptor_rss_fields_info[].qname
Declare all raptor_qname* raptor_rss_types_info[].qname
Insert node_type pointers for all items.
(raptor_rss10_emit_item): Add xml_writer argument.
Use more of xml_writer to emit main type element and predicate names.
(raptor_rss10_serialize_end): Declare and use mxl_writer and qname,
element for rdf:RDF.
* raptor_rss.c: Do not init all NULL fields for
* raptor_rss.c: Added raptor_rss_namespace_info typedef and
raptor_rss_namespaces_info merging uri_strings and prefixes for
namespaces. Made all rss info static.
(raptor_rss_common_init, raptor_rss_parser_processNode,
raptor_rss10_serialize_end): Update for namespace URIs struct
* raptor_rss.c: Added rss_namespace_prefix_strings to list
namespaces to declare. raptor_rss10_serializer_context gains
raptor_namespace_stack nstack field.
(raptor_rss10_serialize_init): Init the namespace stack.
(raptor_rss10_serialize_terminate): Clean namespace stack and any
defined qnames.
(raptor_rss10_emit_item): Padding.
(raptor_rss10_serialize_end): Write namespace decls using stack.
* raptor_rss.c: Rename some destructors more normally:
(raptor_free_rss_item): Renamed from raptor_item_free.
(raptor_free_rss_items): Renamed from raptor_rss_items_free.
(raptor_rss10_move_statements, raptor_rss10_store_statement): Record
field counts per item.
(raptor_rss10_build_items): Find the rdf:_<n> items and put them
into a raptor sequence.
(raptor_rss10_emit_item): Skeleton rss item writer.
(raptor_rss10_serialize_end): Make the final structures and do the
serializing in skeleton form.
2004-12-20 Dave Beckett <>
* raptor_rss.c: Added seq_uri to raptor_rss10_serializer_context
(raptor_rss10_serialize_terminate): Tidy seq_uri
(raptor_rss10_move_statements, raptor_rss10_store_statement): Ignore
checking fields with no URI.
(raptor_rss10_serialize_statement): For rdf:Seq node, store the URI
or blank node - as fake URI.
Make fake object node correctly for general statements.
* raptor_rss.c (raptor_rss_common_init): Prevent 2x initialising.
(raptor_item_free): Free type URI
(raptor_rss10_serialize_terminate): Call raptor_rss_common_terminate.
(raptor_rss10_move_statements): Use RAPTOR_IDENTIFIER_TYPE_PREDICATE
set raptor_sequence_set_at destroy overwritten object.
(raptor_rss10_store_statement): Use RAPTOR_IDENTIFIER_TYPE_PREDICATE
Make fake URIs from blank node strings and free them.
* raptor_general.c (raptor_free_statement):
Handle more statement part types.
* raptor_rss.c:
RAPTOR_RSS_FIELDS_SIZE now stops before UNKNOWN for real field names.
(raptor_rss10_move_statements): Added, to move statements from
the sequence of triples to below a typed node once a new typed node
of the given type appears.
(raptor_rss10_store_statement): Added, to store a given statement
either below an existing typed node or in a sequence of triples if
it can't be found one.
* raptor_rss.c (raptor_rss10_serialize_statement):
iostream write turned into debug.
2004-12-19 Dave Beckett <>
* raptor_uri.c (raptor_uri_print): Cast for gcc
* raptor_rss.c: Use raptor_uri in raptor_rss_item.
(raptor_rss_context_init, raptor_rss_context_terminate): Added and
used in parser and serializer init and terminate.
(raptor_rss10_serialize_init): Initialise list of triples, items.
(raptor_rss10_serialize_terminate): Tidy up triples, items.
(raptor_rss10_serialize_statement): Look for known typed nodes,
identify ones matching rss 1.0 model and also look for the
rdf:Seq. Store other triples for later.
(raptor_rss10_serialize_end): Added skeleton.
2004-12-18 Dave Beckett <>
* raptor_uri.c (raptor_uri_print): Added.
* raptor.h: Added raptor_uri_print
* raptor_general.c (raptor_statement_copy):
Added statement copy constructor
(raptor_free_statement): Added statement destructor.
* raptor_internal.h:
Added raptor_statement_copy and raptor_free_statement
* raptor_rss.c:
Moved parser namespace URIs to common code rss_namespace_uris.
(raptor_rss_common_init, raptor_rss_common_terminate): Added to
initialise and free up common rss items - namespace URIs, URIs for
types and uris for properties.
Added skeleton RSS 1.0 serializer
(raptor_rss10_serialize_init, raptor_rss10_serialize_terminate,
raptor_init_serializer_rss10): Added skeleton RSS 1.0 serializer
factory and methods.
* raptor_general.c (raptor_init):
Added call to raptor_init_serializer_rss10
* raptor_internal.h: Added raptor_init_serializer_rss10
* raptor_rss.c (raptor_rss_parse_recognise_syntax): Add atom checks.
2004-12-17 Dave Beckett <>
* tests/ Added
check-mayfail-xml-rdf to run checks that may fail due to XML
parser bugs.
* raptor_sax2.c, raptor_serialize.c, raptor_iostream.c,
raptor_nfc.c, raptor_rdfxml.c: Initialise possibly used but
uninitialised vars to remove gcc warning with -O.
* raptor_namespace.c, raptor_rdfxml.c, raptor_serialize.c,
raptor_xml_writer.c, rdfdump.c, raptor.h, raptor_internal.h,
raptor_iostream.c: Casts for c++
* raptor_rdfxml.c: Fix using wrong element name in warnings.
* raptor_rdfxml.c (raptor_xml_start_element_handler):
Use raptor_sax2_element_set_attributes.
* raptor_xml_writer.c (raptor_xml_writer_empty_element): Added.
(raptor_xml_writer_start_element, raptor_xml_writer_end_element):
Updated raptor_iostream_write_sax2_element calls
(main): Add attributes and test writing empty element.
* raptor_internal.h: Added raptor_sax2_element_set_attributes
Added is_empty arg to raptor_iostream_write_sax2_element
Added raptor_xml_writer_empty_element
* raptor_sax2.c (raptor_sax2_element_set_attributes): Added.
(raptor_print_sax2_element): tidy
(raptor_iostream_write_sax2_element): Added is_empty arg
and use it for <foo... /> form.
2004-12-14 Dave Beckett <>
* libraptor.3: Actaully updated for 1.4.3 so far
* libraptor.3: Updated for 1.4.2 so far.
* tests/turtle/README.txt, tests/turtle/rdfq-results.out,
tests/turtle/test-00.out, tests/turtle/ Switch to base
* tests/turtle/test-13.out, tests/turtle/test-13.ttl,
tests/turtle/manifest.ttl, tests/turtle/bad-12.ttl,
tests/turtle/bad-13.ttl, tests/turtle/manifest-bad.ttl,
tests/turtle/bad-10.ttl, tests/turtle/bad-11.ttl,
tests/turtle/bad-08.ttl, tests/turtle/bad-09.ttl,
tests/turtle/bad-04.ttl, tests/turtle/bad-05.ttl,
tests/turtle/bad-06.ttl, tests/turtle/bad-07.ttl,
tests/turtle/ Import more bad turtle tests, initial
manifest files
* raptor_namespace.c (raptor_iostream_write_namespace): Handle
ns->uri is NULL and no prefix, i.e. emitting xmlns=""
* raptor_namespace.c (raptor_namespaces_format):
Handle ns->uri is NULL and no prefix, i.e. emitting xmlns=""
2004-12-08 Dave Beckett <>
* raptor_uri.c (raptor_default_new_uri_relative_to_base): Ask for
1 more char for new URI to allow inserting of a missing "/" path.
* raptor_rfc2396.c (raptor_uri_resolve_uri_reference): Add debug
message. When adding a missing path "/", set the path_len and the
uri_len to match.
(main): Added test when a missing abs / path is added.
* raptor_sequence.c (raptor_sequence_set_at,
raptor_sequence_get_at): Check for non-negative idx
* raptor_sequence.c (raptor_sequence_get_at): Fix index offset check
2004-12-02 Dave Beckett <>
* rdfdump.c: Make a raptor_sequence of namespace declarations
declared by '-f xmlns:foo="bar"' and then add them to the
serializer when initialised.
(rdfdump_free_namespace_decl): Added, to provide a helper to
* raptor_serialize.c (raptor_serialize_set_namespace): Call
factory method declare_namespace.
(raptor_rdfxml_serialize_declare_namespace): Copy the passed in
namespace prefix, URI before storing the namespace.
(raptor_rdfxml_serialize_start): Delete the namespace sequence
contents as the namespaces are declared on the namespace stack,
which is the new owner of the namespaces.
* raptor_namespace.c (raptor_new_namespace_parts_from_string):
Added, to decode things like "xmlns:foo='bar'" into prefix, uri
* raptor.h: Added prototype for raptor_new_namespace_parts_from_string.
raptor_sequence_free_handler prototype changed to return void
2004-11-30 Dave Beckett <>
* raptor_serialize.c (raptor_rdfxml_serialize_init):
Add a sequence of user-declared namespaces.
(raptor_rdfxml_serialize_terminate): Tidy sequence.
(raptor_rdfxml_serialize_declare_namespace): Use sequence to store
declared namespaces.
(raptor_rdfxml_serialize_start): Declare used-defined namespaces
and start them in the namespace stack.
* raptor_namespace.c (raptor_new_namespace_from_uri):
Added with raptor_new_namespace code.
(raptor_new_namespace): Now a wrapper around
(raptor_namespace_copy): Use raptor_new_namespace_from_uri.
* raptor_qname.c (raptor_iostream_write_qname):
Added to write a qname to an iostream.
* raptor.h: Add prototypes for raptor_iostream_write_qname,
* raptor_rdfxml.c (raptor_xml_start_element_handler,
raptor_xml_end_element_handler, raptor_xml_comment_handler,
raptor_start_element_grammar, raptor_end_element_grammar,
raptor_cdata_grammar): Update the use of xml_writer for building
parseType="Literal" content to use an iostream. Use more sax2
methods rather than direct access to internals - still some left.
(raptor_xml_parse_init, raptor_xml_parse_start,
raptor_xml_parse_terminate, raptor_inscope_xml_language,
raptor_inscope_base_uri): Move expat/libxml details to
raptor_new_sax2, raptor_sax2_parse_start, raptor_free_sax2,
raptor_sax2_inscope_xml_language, raptor_sax2_inscope_base_uri
(raptor_xml_parse_chunk_): Deleted, moved to raptor_sax2_parse_chunk
* raptor_xml_writer.c: Change to output to an iostream not build
up a stringbuffer.
(raptor_new_xml_writer): Add iostream arg, delete never-used
(raptor_free_xml_writer): Remove stringbuffer.
(raptor_xml_writer_start_element, raptor_xml_writer_end_element):
Delete stringbuffer and use raptor_iostream_write_sax2_element.
(raptor_xml_writer_cdata): Delete stringbuffer and use
(raptor_xml_writer_raw): Added to write just the bytes.
(raptor_xml_writer_comment): Fixed to emit <!-- and -->
(raptor_xml_writer_as_string): Deleted.
(main): Added with test case.
* raptor_sax2.c (raptor_new_sax2, raptor_free_sax2,
raptor_sax2_inscope_xml_language, raptor_sax2_inscope_base_uri,
raptor_sax2_get_depth, raptor_sax2_inc_depth,
raptor_sax2_dec_depth, raptor_sax2_parse_start,
raptor_sax2_parse_chunk, raptor_sax2_element_get_element): Added.
(raptor_iostream_write_sax2_element): Renamed from
raptor_format_sax2_element and now writing to a raptor_iostream
with no allocing/freeing buffers.
* raptor_xml.c (raptor_iostream_write_xml_escaped_string): Added,
to write an XML-escaped version of a string to an iostream
2004-11-29 Dave Beckett <>
* raptor_namespace.c (raptor_iostream_write_namespace): Added to
write a namespace to a raptor_iostream
* raptor.h: Added raptor_iostream_write_namespace
* Added raptor_xml_writer_test
* raptor_expat.c (raptor_expat_init): Take void* user data
* raptor_internal.h: raptor_exp_init takes void*
Add user_data to raptor_sax2
Added prototypes or raptor_new_sax2, raptor_free_sax2,
raptor_sax2_parse_start, raptor_sax2_parse_chunk,
raptor_sax2_parse_handle_errors, raptor_sax2_get_depth,
raptor_sax2_inc_depth, raptor_sax2_dec_depth,
raptor_sax2_inscope_xml_language, raptor_sax2_inscope_base_uri,
raptor_sax2_element_get_element, raptor_iostream_write_sax2_element
Deleted raptor_format_sax2_element, raptor_xml_writer_as_string and
Changed raptor_new_xml_writer to write to a raptor_iostream
* raptor.h: Added raptor_iostream_write_xml_escaped_string and
2004-11-26 Dave Beckett <>
* raptor_internal.h: Added prototype for
* raptor_xml_writer.c (raptor_xml_writer_write_to_iostream): Added
* raptor.h: Added prototype for raptor_iostream_write_stringbuffer
* raptor_iostream.c: (raptor_iostream_write_stringbuffer) Added
* --with-dmalloc default is now no
2004-11-25 Dave Beckett <>
If expat_source is empty, set it to auto so no path-to-source is
added to libs, includes
2004-11-23 Dave Beckett <>
* tests/ex-55.out, tests/ex-55.rdf: ex-55
* tests/ Added ex-55
2004-11-17 Dave Beckett <>
* examples/grapper.c:
Extensively updated to use GTK 2.4, 2.5 features when available.
Triples/Errors windows have a scalable pane between them
Triple columns can be sorted by clicking, width resized.
All known parser features are available on the preferences menu.
Added parser guessing button.
Moved syntax menu to top of display.
Updated about box fields to include more info when possible to
2004-11-12 Dave Beckett <>
* rapper.1: Updated -f for serializer features
2004-11-10 Dave Beckett <>
* raptor_sequence.c (raptor_sequence_join): Copy pointers correctly
* raptor_sequence.c (raptor_sequence_join): Added, to move all
items between two sequences leaving one empty.
* raptor.h: Added raptor_sequence_join
* raptor.h: Added raptor_serialize_set_namespace
* raptor_serialize.c (raptor_serialize_set_namespace):
Added, not implemented.
* raptor_rss.c (raptor_rss_parse_recognise_syntax):
Boost in recognising xml rss
2004-11-08 Dave Beckett <>
* rdfdump.c: allow -f to set serializer features
* raptor_feature.c (raptor_features_enumerate_common): return -1
2004-11-07 Dave Beckett <>
* raptor_uri.c: C style, indenting. const unsigned char.
(raptor_uri_path_make_relative_path): Remove a small memcpy.
(raptor_uri_to_relative_counted_uri_string) Docs edit.
Remove a large if {} block. Rename 'reference' var since libxml2
defines it (SEP). Use buildresult to make empty string result.
* raptor_serialize.c (raptor_rdfxml_serialize_statement): Use
feature feature_relative_uris to decide when to emit an absolute
or relative URI, the latter using raptor_uri_to_relative_uri_string.
* raptor_uri.c: Added raptor relative URI generating code patch
from René Puls
(raptor_uri_path_common_base_length): Added. Helper to return the
common base length of two paths
(raptor_uri_path_make_relative_path): Added. Helper to build the
result relative URI string from already analysed parts.
(raptor_uri_to_relative_counted_uri_string): Added. Get the
relative URI string between a base and reference URI.
(raptor_uri_to_relative_uri_string): Added. Wrapper about the above.
(assert_uri_to_relative): Added. Helper for tests for above.
(main): Added relative URI string generation tests.
* raptor.h: Added prototypes for
raptor_uri_to_relative_counted_uri_string and
* raptor_rss.c (raptor_rss_parser_processNode): Add cast for name
when returned from xmlTextReaderConstLocalName.
* raptor_rss.c (raptor_rss_parser_processNode): Always declare
name as xmlChar*
2004-11-06 Dave Beckett <>
* rdfdump.c: Tidy help messages about features, other words.
* raptor_parse.c (raptor_feature_from_uri): Moved to raptor_feature.c
* raptor.h: Moved raptor_feature_from_uri to separate section, not
just parsers
* raptor_internal.h: Deleted raptor_feature_from_uri_common
* raptor_feature.c (raptor_feature_from_uri): Defined here, no need for
* rdfdump.c: In feature help code, list parser and serializer features
separately, using new raptor_features_enumerate.
* raptor_serialize.c (raptor_serializer_features_enumerate):
Added, a wrapper around raptor_features_enumerate_common.
(raptor_serializer_set_feature): Added.
(raptor_serializer_get_feature): Added.
* raptor_parse.c: Moved raptor_features_list to raptor_feature.c
(raptor_features_enumerate): Changed to be a wrapper around
raptor_features_enumerate_common now containing the body of the code.
(raptor_feature_from_uri): Changed to be a wraper around
raptor_feature_from_uri_common now containing the body of the code.
* raptor_internal.h: Added feature_relative_uris for raptor_serializer.
Added prototypes for raptor_features_enumerate_common and
* raptor.h: Added RAPTOR_FEATURE_RELATIVE_URIS for serializing.
Added prototypes for raptor_serializer_features_enumerate,
raptor_serializer_set_feature and raptor_serializer_get_feature
* Added raptor_feature.c
* raptor_feature.c:
Moved common raptor_feature code from raptor_parse.c
* raptor_rss.c:
Added <none> entry to raptor_rss_fields_info so that when indexed
with RAPTOR_RSS_FIELDS_NONE, does not access invalid data.
Fixes for xmlReader API for older libxml2s:
Added node type defines for <2.5.9
Use xmlTextReaderLocalName, xmlTextReaderNamespaceUri instead of the
Const versions with additional corresponding xmlFree()s for <2.6.0
2004-11-01 Dave Beckett <>
* Snapshotted raptor_1_4_2 for 1.4.2 release
* win32_raptor_config.h,
Bumped version to 1.4.2
* raptor_xml_writer.c (raptor_xml_writer_cdata):
Return when raptor_xml_escape_string fails.
* raptor_xml.c (raptor_xml_escape_string):
Return -1 on UTF-8 encoding failure
* raptor_xml.c: docs
2004-10-28 Dave Beckett <>
* Snapshotted raptor_1_4_1 for 1.4.1 release
* raptor_xml.c (raptor_xml_escape_string): Ensure an empty string
is copied out; write a NUL.
2004-10-28 Dave Beckett <>
* libraptor.3: 1.4.1 raptor_xml_escape_string return value now
int, <0 on failure.
* raptor_xml_writer.c (raptor_xml_writer_cdata): Use int for
raptor_xml_escape_string return variables and use error return <0
* raptor_serialize.c: (raptor_rdfxml_serialize_write_xml_attribute,
raptor_rdfxml_serialize_statement) Use int for
raptor_xml_escape_string return variables. Handle empty string
attribute when len=0.
* raptor_sax2.c (raptor_format_sax2_element):
Use int for raptor_xml_escape_string return.
* raptor.h: raptor_xml_escape_string changed return value to int
* raptor_xml.c (raptor_xml_escape_string): Return value now int,
<0 on failure to allow escaping an empty string to return 0 bytes
(main): Add empty string escaping test. Check for failure of
first raptor_xml_escape_string call.
* raptor_rss.c (raptor_rss_parser_processNode): Fix url attribute
failing for non-enclosure.
2004-10-27 Dave Beckett <>
* raptor_rfc2396.c (raptor_new_uri_detail): Do not add schema_len
twice to dest pointer; stop buffer overrun
2004-10-26 Dave Beckett <>
* raptor_locator.c (raptor_format_locator): Only print line if > 0
* raptor-config.1: Fix --libtool-libs desc
2004-10-24 Dave Beckett <>
* win32_raptor_config.h,, NEWS.html:
Bumped version to 1.4.1
* Snapshotted raptor_1_4_0 for 1.4.0 release
* raptor_rss.c: Added generation of triples for RSS enclosures
based on a patch from Suzan Foster. Changes made include
correcting the enclosures namespace, tidying some memory leaks and
printing some debug information.
* raptor_serialize.c (raptor_rdfxml_serialize_statement):
Make rdf:_<n> 'ordinal' properties serialize correctly.
* raptor_www_test.c (main): Use raptor_www_fetch_to_string for testing.
* raptor_iostream.c (raptor_string_iostream_finish): Code tidy.
* libraptor.3, raptor.h: Added raptor_www_fetch_to_string
* raptor_www.c (raptor_www_fetch_to_string_write_bytes):
Added handler for the following function.
(raptor_www_fetch_to_string): Added, to get content back as a string.
2004-10-23 Dave Beckett <>
* libraptor.3: Updates for 1.4.0
* raptor.h, raptor_iostream.c: s/fh/handle/ for clarity.
* Add Raptor to the desc
Update descriptions to include serializers
2004-10-21 Dave Beckett <>
* raptor_namespace.c: less namespace debugs
* raptor_xml_writer.c: less cdata debugs
* raptor_namespace.c: Make most namespace debug messages appear
* raptor_rdfxml.c: Make most rdf/xml parsing debug messages appear
* raptor_serialize.c:
(raptor_serialize_start, raptor_serialize_start_to_filename,
raptor_serialize_statement, raptor_serialize_end):
Fail if no iostream is made or available.
* raptor_iostream.c (raptor_new_iostream_to_string):
Docs, zap string and length before starting.
* raptor_serialize.c (raptor_rdfxml_serialize_statement):
Print datatype URIs correctly.
2004-10-20 Dave Beckett <>
*, win32_raptor_config.h: 1.4.0
* raptor_internal.h:
Added warning_user_data, warning_handler to serializer
Added prototypes for raptor_serializer_warning and
* raptor_serialize.c (raptor_serializer_warning,
raptor_serializer_warning_varargs): Added
(raptor_serializer_set_warning_handler): Added
* raptor.h: Added raptor_serializer_set_warning_handler
* autoconf mode
* rdfdump.c: default serializer simple
* raptor_serialize.c (raptor_rdfxml_serialize_statement): Handle
URI subject, object right.
* raptor_serialize.c (raptor_serialize_start_to_filename,
raptor_serialize_start_to_file_handle): Don't enforce base URI is
2004-10-19 Dave Beckett <>
* raptor.h:
Updated raptor_new_iostream_to_string with malloc_handler argument
* raptor_serialize.c (raptor_serialize_start_to_string): Update
raptor_new_iostream_to_string for malloc_handler argument
* raptor_iostream.c (raptor_string_iostream_finish):
Use passed-in malloc_handler to
make string, raptor_stringbuffer_copy_to_string to copy directly in.
(raptor_new_iostream_to_string): Add optional malloc_handler argument
so caller can control allocation.
(main): Update tests for above.
* raptor.h: Added raptor_stringbuffer_copy_to_string
* raptor_stringbuffer.c (raptor_stringbuffer_copy_to_string):
Added to allow exporting to
externally alloced buffers - handy for cross-library/heap work.
(main): Added test for above.
* raptor_general.c (raptor_init): Don't register 'simple' type.
* raptor_iostream.c, raptor_namespace.c, raptor_serialize.c,
raptor_iostream.c: Casts for C++
* tests/, tests/turtle/
Replace direct dependency on $(top_builddir)/rapper with build-rapper
so re-compile check is forced before testing.
* raptor.h, raptor_namespace.c, raptor_serialize.c:
Fix a bunch of constitency typos in namespace URIs
* raptor_internal.h:
Add locator, error_user_data and error_handler to raptor_serializer.
Add raptor_init_serializer_rdfxml, raptor_serializer_error,
raptor_serializer_simple_error and raptor_serializer_error_varargs.
* raptor_namespace.c:
Export raptor_xml_namespace_uri, raptor_rdf_namespace_ms_uri,
raptor_xmlschema_datatypes_namespace_uri, raptor_owl_namespace_uri,
* raptor_general.c (raptor_init): Call raptor_init_serializer_rdfxml
* raptor.h:
Export raptor_xml_namespace_uri, raptor_rdf_namespace_ms_uri,
raptor_xmlschema_datatypes_namespace_uri, raptor_owl_namespace_uri,
Add raptor_serializer_set_error_handler,
* raptor_serialize.c: Added RDF/XML serializer.
Added locator to serializer.
(raptor_serializer_error, raptor_serializer_simple_error,
raptor_serializer_error_varargs): Added internal support for errors.
(raptor_serializer_set_error_handler, raptor_serializer_get_locator):
Added public methods
2004-10-18 Dave Beckett <>
* raptor_iostream.c: (main) casts for fprintf
* rdfdump.c: Remove ad-hoc serializing code and use raptor_serializer.
Update help and usage messages to use raptor_serializers_enumerate
* raptor_internal.h:
Added raptor_serializer_factory and declarations for factories
raptor_init_serializer_ntriples, raptor_init_serializer_simple and
* raptor_general.c (raptor_init):
Call raptor_init_serializer_ntriples and
* raptor.h: Added raptor_serializer class and methods:
raptor_serializers_enumerate, raptor_serializer_syntax_name_check,
raptor_new_serializer, raptor_free_serializer,
raptor_serialize_start, raptor_serialize_start_to_filename,
raptor_serialize_start_to_file_handle, raptor_serialize_statement,
raptor_serialize_end, raptor_serializer_get_iostream. Added new
raptor_iostream class constructor raptor_new_iostream_to_sink and
methods: raptor_iostream_write_end, raptor_iostream_write_string,
raptor_iostream_write_decimal, raptor_iostream_format_hexadecimal
* Added raptor_serialize.c
Added $(LIBS) to rfc2396 tests for -ldmalloc when present
* raptor_serialize.c: Serializers
* raptor_iostream.c (raptor_iostream_write_counted_string):
Added as a wrapper.
* raptor_iostream.c (raptor_iostream_format_hexadecimal):
Added for writing field-formatted hex.
* raptor_iostream.c (raptor_iostream_get_bytes_written_count):
Renamed from raptor_get_bytes_written_count
(raptor_iostream_write_decimal): Added to print a decimal to the
* raptor_iostream.c (raptor_new_iostream_to_file_handle):
Do not fclose at end.
(raptor_string_iostream_finish): Free malloced context.
(raptor_iostream_write_string): Helper to write C string.
* raptor_iostream.c: Added sink iostream
(raptor_sink_iostream_write_byte, raptor_sink_iostream_write_bytes):
(raptor_new_iostream_to_sink): Added to create a throwaway data
(raptor_free_iostream): Ensure write_end is always called once only.
(main): Test sink.
* raptor_iostream.c:
Added ended flag, once write_end is done, all further calls fail.
(raptor_filename_iostream_finish): Removed; write_end does this.
(raptor_filename_iostream_write_end): Added to fclose() on end
(raptor_string_iostream_finish): More checks when stringbuffer is
(raptor_new_iostream_to_string): Handle error tidy up better.
(raptor_iostream_write_end): Added.
(main): Code tidy.
* raptor_iostream.c: casts for c++
* raptor.h: Added raptor_iostream class and methods.
* Added raptor_iostream.c and raptor_iostream_test
* raptor_iostream.c: Raptor I/O stream class
* turtle_parser.y, turtle_lexer.l, n3_parser.y, n3_lexer.l:
Rename rather generic define ERROR to ERROR_TOKEN to help win32.
2004-10-16 Dave Beckett <>
* rapper.1: die .UE
2004-10-15 Dave Beckett <>
* raptor_xml.c (raptor_xml_escape_string):
Call error_handler correctly.
2004-09-24 Dave Beckett <>
* raptor-config.1: Restore deleted content
2004-09-20 Dave Beckett <>
* win32_raptor_config.h,, NEWS.html:
Bumped version to 1.3.4
* Snapshotted raptor_1_3_3 for 1.3.3 release
* Switched to LGPL / Apache 2.0 license in the sources
CVS tags before: raptor_license_lgpl_mpl,
and after: raptor_license_lgpl_apache2
2004-09-20 Dave Beckett <>
* Check for libxml 2.5.10+ for RSS tag soup parser
requirements, not features.
2004-09-10 Dave Beckett <>
* raptor_namespace.c (raptor_new_namespace):
Debug message only when level >1
2004-09-09 Dave Beckett <>
Just link raptor_uri_test, raptor_uri_win32_test with raptor_rfc2396.lo
* raptor_uri.c: (main) Don't use raptor_basename
* raptor_uri.c:
Revert wrapping so that -DWIN32 raptor_uri_win32_test can be
compiled. OSX 'make check' will have to live with the moans.
* raptor_uri.c: Wrap functions with #ifndef STANDALONE ... #endif to
prevent multiple link warnings on OSX with tests.
* raptor_uri.c (main): Use program and raptor_basename in messages
* raptor_xml.c, raptor_stringbuffer.c, raptor_sequence.c,
raptor_rfc2396.c, raptor_uri.c: Wrap functions with
#ifndef STANDALONE ... #endif
to prevent multiple link warnings on OSX with tests.
*,, NOTICE: Added NOTICE for Apache
License 2.0
* Mention atom 0.3
* Update for LGPL/Apache 2.0
* raptor_rfc2396.c: Header
2004-09-08 Dave Beckett <>
* raptor_rfc2396.c (raptor_new_uri_detail):
Handle NULL string - failure.
Increase alloced size to compensate for possibly 5 extra \0s
for each URI component.
(main): Check "" URI parses and NULL doesn't crash it.
* raptor_internal.h: Added raptor_uri_detail.
Added internal raptor_basename.
* raptor.h: docs
* Added raptor_rfc2396.c and raptor_rfc2396_test
Link all tests with $(LIBS)
* raptor_rfc2396.c: RFC2396 URI detail
* raptor_uri.c: Remove old URI resolving code.
* raptor_xml.c, raptor_parse.c, raptor_sequence.c, raptor_set.c,
raptor_stringbuffer.c, raptor_nfc_test.c: Use raptor_basename in
test code main()
* raptor_general.c (raptor_basename): Added
* raptor_rdfxml.c: correct comment
* Run tests raptor_set_test and raptor_xml_test
only if rdf/xml is enabled.
* raptor_parse.c (raptor_stats_print):
Print rdfxml stats only if rdf/xml is enabled.
* Change test to be raptor_parse_test
Use raptor_rdfxml.c only if rdf/xml enabled.
* raptor.h: Export raptor_xml_literal_datatype_uri_string_len
* raptor_internal.h: Declare raptor_delete_parser_factories.
* raptor_parse.c, raptor_general.c:
Moved the following parser related functions and methods to
raptor_delete_parser_factories, raptor_feature_from_uri,
raptor_features_enumerate, raptor_free_parser, raptor_generate_id,
raptor_get_feature, raptor_get_label, raptor_get_locator,
raptor_get_mime_type, raptor_get_name, raptor_get_parser_factory ,
raptor_guess_parser_name, raptor_new_parser,
raptor_new_parser_for_content, raptor_parse_abort,
raptor_parse_chunk, raptor_parse_file, raptor_parse_file_stream,
raptor_parse_uri, raptor_parse_uri_with_connection,
raptor_parse_uri_write_bytes, raptor_parser_error,
raptor_parser_error_varargs, raptor_parser_fatal_error,
raptor_parser_fatal_error_varargs, raptor_parser_register_factory,
raptor_parser_simple_error, raptor_parser_warning,
raptor_parser_warning_varargs, raptor_parsers_enumerate,
raptor_set_default_generate_id_parameters, raptor_set_error_handler,
raptor_set_fatal_error_handler, raptor_set_feature,
raptor_set_generate_id_handler, raptor_set_parser_strict,
raptor_set_statement_handler, raptor_set_warning_handler,
raptor_start_parse, raptor_stats_print, raptor_syntax_name_check,
* raptor_rdfxml.c: Added as copy of raptor_parse.c
* -MPL.html (MPL 1.1), +LICENSE-2.0.txt (Apache 2.0)
* README.html, LICENSE.html: -MPL1.1, +Apache2.0
* LICENSE-2.0.txt: Added.
* MPL.html: Deleted.
2004-09-07 Dave Beckett <>
* tests/turtle/test-16.ttl, tests/turtle/test-16.out:
10000 triples exactly now
* raptor_sequence.c: docs
* turtle_parser.y (blank): Revert mis-edited triple sequence change.
* turtle_parser.y (propertyList):
Switch to left-recursion to prevent stack problems with bison.
(raptor_turtle_parse_terminate): Call turtle_lexer_lex_destroy
* tests/turtle/test-14.ttl, tests/turtle/test-14.out:
Use exactly 10000 all different triples.
* tests/turtle/test-15.ttl, tests/turtle/test-15.out:
Use different objects and no collections so there are exactly 10000
triples, all different.
* tests/turtle/test-16.ttl, tests/turtle/test-16.out:
Use different objects so all 10000 triples are different
* turtle_lexer.l (turtle_token_print):
Add INTEGER_LITERAL for debugging.
* Make turtle_parser.c appear as C source name
* turtle_parser.y (statementList, objectList): Switch to using
left recursion to prevent stack overflow in bison with 10000
statements (possible) or objects (rarer).
* tests/turtle/, tests/turtle/test-16.ttl,
tests/turtle/test-15.out, tests/turtle/test-15.ttl,
tests/turtle/test-16.out, tests/turtle/test-14.out,
tests/turtle/test-14.ttl: Added large turtle tests test-14,15,16
* turtle_parser.y (raptor_turtle_parse_chunk):
Use RAPTOR_REALLOC for massive speed
improvements on some systems.
* raptor_internal.h: Added RAPTOR_REALLOC
2004-09-06 Dave Beckett <>
* raptor_set.c (raptor_free_id_set):
Free the set after freeing the list.
2004-09-02 Dave Beckett <>
* tests/turtle/test-13.out, tests/turtle/test-13.ttl:
Make serializable as rdf/xml
2004-09-01 Dave Beckett <>
* tests/turtle/, tests/turtle/README.txt:
Turtle tests readme
2004-08-27 Dave Beckett <>
* raptor_rss.c: compare namespace URIs the cheaper way
* raptor_rss.c: Added atom:copyright
Rewrite atom fields earlier.
Compare namespaces too, if they have them.
* raptor_rss.c: Handle atom 0.3 somewhat.
- Add atom author type.
- Add atom 0.3 NS and atom 0.3 properties
- Add DC Ns and all DC element properties.
- Always rewrites atom:content into rss:description which is not
correct for all situations.
- Cannot handle multiple <link> with different attributes; just uses
rel=alternate ones.
General changes:
Use XML_READER type enums.
Fix copying properties to use RAPTOR_RSS_FIELDS_SIZE.
Allow item field x to have a URI value in item->uri_fields[x] as well
as literal in item->fields[x].
2004-08-27 Dave Beckett <>
* raptor_rss.c: compare namespace URIs the cheaper way
* raptor_rss.c: Added atom:copyright
Rewrite atom fields earlier.
Compare namespaces too, if they have them.
* raptor_rss.c: Handle atom 0.3 somewhat.
- Add atom author type.
- Add atom 0.3 NS and atom 0.3 properties
- Add DC Ns and all DC element properties.
- Always rewrites atom:content into rss:description which is not
correct for all situations.
- Cannot handle multiple <link> with different attributes; just uses
rel=alternate ones.
General changes:
Use XML_READER type enums.
Fix copying properties to use RAPTOR_RSS_FIELDS_SIZE.
Allow item field x to have a URI value in item->uri_fields[x] as well
as literal in item->fields[x].
2004-08-23 Dave Beckett <>
* turtle_parser.y (blank rule): Do not free a generated id here
2004-08-22 Dave Beckett <>
* Remove old reference to g_utf8_normalize
2004-08-19 Dave Beckett <>
* Add libraptor_la_SOURCES += for NFC.
2004-08-18 Dave Beckett <>
* raptor_set.c: Wrap main code with #ifndef STANDALONE
* raptor_general.c (raptor_init, raptor_finish):
Use new static raptor_initialised to
protect these from being run twice.
2004-08-17 Dave Beckett <>
* nfc_needed default
Added conditional makefile support for XML parsers (expat, libxml),
selecting RDF parsers (RDF/XML, Turtle, N-Triples, RSS tag soup),
NFC checking.
Added new configure argument --enable-parsers to control this.
* raptor_utf8.c (raptor_utf8_is_nfc):
Protect NFC check with define RAPTOR_NFC_CHECK
* raptor_locator.c (raptor_update_document_locator):
Protect RDF/XML bits with define
* raptor_general.c (raptor_stats_print):
Protect RDF/XML bits with define RAPTOR_PARSER_RDFXML
* raptor.h: Added prototype for raptor_calloc_memory
* raptor_set.c, raptor_nfc.c: Casts for C++
* LICENSE.html: More LGPL v2.1 fixes
* win32_raptor_config.h: 1.3.3
2004-08-13 Dave Beckett <>
* turtle_lexer.l, n3_lexer.l: grammar
* turtle_lexer.l, n3_lexer.l, fix-flex:
fix-flex now inserts the raptor and win32 config includes block
at the top of the lexer C.
* n3_parser.y, n3_lexer.l: win32
* Several fixes for building on win32 from Chris Pointon
* win32/raptor.dsw, win32/raptor.dsp: win32 updates from Chris Pointon
* win32_raptor_config.h:
No need for #define YY_NO_UNISTD_H here, it's done in the turtle
lexer and parser C source.
* turtle_parser.y, turtle_lexer.l: Use turtle_parser.h
* raptor_xml_writer.c, raptor_sax2.c, raptor_qname.c,
raptor_parse.c, raptor_namespace.c, raptor_libxml.c: calloc() fixes.
Do not generate *.tab.[ch] for turtle parser but process and rename
to make .c, .h.
Apply fix-flex to the generated flex header file, to catch another
unprotected include of unistd.h.
* libraptor.3: Document raptor_calloc_memory.
* raptor_general.c: Added raptor_calloc_memory
* raptor_www_libwww.c:
Add #ifdef RAPTOR_WWW_LIBWWW ... #endif block around content
* raptor_www_libfetch.c:
Add #ifdef RAPTOR_WWW_LIBFETCH ... #endif block around content
Use #ifdef HAVE_SYS_PARAM_H for sys/param.h
* raptor_www_curl.c:
Add #ifdef RAPTOR_WWW_LIBCURL ... #endif block around content
* win32_raptor_config.h: win32 updates from Chris Pointon
* raptor_www.c: Calloc fix.
(raptor_www_get_connection): Return NULL if no WWW library available.
* raptor_internal.h: Correct RAPTOR_CALLOC macro param names.
* raptor.h: Export raptor_xml_literal_datatype_uri_string
* win32/, win32/README.txt, win32/README:
README renamed to README.txt
2004-08-12 Dave Beckett <>
* raptor_nfc.c: Tidy debug messages.
Reset prev_class explicitly.
2004-08-11 Dave Beckett <>
* raptor_parse.c (raptor_record_ID): c99
* raptor_nfc.c: Return 0 from raptor_nfc_check on failure
* raptor_nfc_test.c: Raptor NFC test
* Added raptor_nfc_test.c, raptor_nfc_data.c,
raptor_nfc.c and raptor_nfc.h
Added raptor_nfc_test
* raptor_utf8.c (raptor_utf8_is_nfc): Use raptor_nfc_check.
* raptor_nfc.c, raptor_nfc.h: Unicode NFC
* raptor_internal.h: Added prototype for raptor_nfc_check
Check for lengths of u8, u16, u32, char, short, int, long
* raptor_nfc_data.c: Unicode NFC data tables
* raptor_parse.c: Updated for raptor_set to raptor_id_set renaming.
(raptor_record_ID): Pass in the base_uri to the raptor_id_set_add, do
not malloc / free a larger string.
* raptor_internal.h:
Rename the raptor_set* typedef and functions to be raptor_id_set
* raptor_set.c:
Change the implementation to a list of (set of IDs)-per base URI.
Each time a base URI is checked it is swapped with the first in
the list. The set of IDs (raptor_base_id_set) takes a lot less
memory since it isn't storing the string concat(base URI,ID) but just
ID. The capacity and size parts are part of the raptor_base_id_set.
Rename the structures and functions to be raptor_id_set not raptor_set.
* raptor_parse.c (raptor_end_element_grammar):
Add check for a non-empty property
element with both a node element <rdf:Description/> child and
property attributes. For bad test bad-23.rdf
* tests/bad-23.rdf:
bad-23.rdf - property attributes and node element content check
* tests/ Added bad-23.rdf
2004-08-10 Dave Beckett <>
* libraptor.3: Document check_rdf_id feature
2004-08-02 Dave Beckett <>
* raptor_general.c (raptor_set_parser_strict):
Set feature_check_rdf_id default true.
* raptor_parse.c (raptor_record_ID):
Use feature_check_rdf_id to always return
no rdf:ID check failure when feature is disabled.
* raptor_general.c (raptor_set_feature, raptor_get_feature):
(raptor_set_parser_strict): Set feature_check_rdf_id default true.
* raptor_internal.h: Added feature_check_rdf_id
* ntriples_parse.c (raptor_ntriples_parse_chunk):
Move "junk at end of input" test
to the end of the function, giving the error only if the current
offset isn't at the end of the current line.
2004-07-30 Dave Beckett <>
* raptor_internal.h:
Switch to WWW read buffer size of 4096 (from 256 bytes!)
* raptor_general.c: Switch to read buffer size of 4096
2004-07-28 Dave Beckett <>
* move 'rm's inside loop
* Ensure subdirs get config.guess, config.sub
* win32/raptortest.cpp: Added raptor_init, raptor_finish (untested).
2004-07-27 Dave Beckett <>
* raptor_locator.c: cast for c++
2004-07-26 Dave Beckett <>
* raptor_general.c: Add #ifndef STANDALONE ... #endif around body.
2004-07-21 Dave Beckett <>
* Bumped version to 1.3.3
* Snapshotted raptor_1_3_2 for 1.3.2 release
Removed configuration for gnome glib, pkgconfig and glib-config
to get g_utf8_normalize for Unicode NFC checking.
* raptor_utf8.c (raptor_utf8_is_nfc):
Removed use of g_utf8_normalize for Unicode NFC
checking, it seems to give false negatives, is also rather slow since
it does normalization rather than just checking for NFC.
* libraptor.3: Updates for 1.3.2
2004-07-16 Dave Beckett <>
* tests/, tests/ex-54.out, tests/ex-54.rdf,
tests/warn-03.out, tests/warn-03.rdf: Renamed warn-03 to ex-54 -
it is not an error or a warning, the data is good
2004-07-14 Dave Beckett <>
* tests/, tests/bad-22.rdf:
bad-22.rdf testing rdf:li forbidden as a
property attribute (Graham Klyne)
2004-07-09 Edd Dumbill <>
* raptor_locator.c: add accessors for parts of the raptor_locator
* raptor.h: add prototypes for the accessors
2004-07-09 Dave Beckett <>
* ChangeLog: ChangeLog in CVS now
2004-07-08 Dave Beckett <>
* raptor_general.c (raptor_parse_uri_with_connection):
Pass up WWW errors to the parser error handler.
2004-06-30 Dave Beckett <>
and RAPTOR_PARSER_RDFXML all set to 1
* raptor_general.c (raptor_init):
* win32_raptor_config.h: 1.3.2
* turtle_parser.y, turtle_lexer.l, strcasecmp.c, rdfdump.c,
raptor_xml_writer.c, raptor_xml.c, raptor_www_test.c,
raptor_www_libxml.c, raptor_www_libwww.c, raptor_www_libfetch.c,
raptor_www_curl.c, raptor_www.c, raptor_win32.c, raptor_utf8.c,
raptor_uri.c, raptor_stringbuffer.c, raptor_set.c,
raptor_sequence.c, raptor_sax2.c, raptor_rss.c, raptor_qname.c,
raptor_parse.c, raptor_namespace.c, raptor_locator.c,
raptor_libxml.c, raptor_identifier.c, raptor_general.c,
raptor_expat.c, ntriples_parse.c,,
win32_raptor_config.h, win32_config.h: Renamed win32_config.h to
2004-06-25 Dave Beckett <>
* ntriples_parse.c (raptor_ntriples_parse_line):
Make language on a datatyped literal a warning.
2004-06-24 Dave Beckett <>
* libraptor.3: Added raptor_alloc_memory. Note where and why it and
raptor_free_memory may need to be used in the descriptiona
and next to the methods that it applies to.
* raptor_general.c, raptor.h: Added raptor_alloc_memory. Docs.
2004-06-22 Dave Beckett <>
Added --with-expat-source option to build against an external
expat source.
Handle old and new style expat source areas.
Report expat source dir in summary.
Tidy up default messages.
Only use expat subdir if it exists.
* tests/
AM_LDFLAGS does not need LIBS, includes it all.
2004-06-17 Dave Beckett <>
* Zap extra $@ on rule line
2004-06-13 Dave Beckett <>
* pkg-config is too noisy on errors
Only muck about with removing -O2 from flags in maintainer mode.
2004-06-12 Dave Beckett <>
Added local distclean-compile rule to override the insane
one automake uses by default: rm -f *.tab.c
* Bumped version to 1.3.2
* Snapshotted raptor_1_3_1 for 1.3.1 release
* tests/ add CLEANFILES
* tests/
Added TESTS with raptor_empty_test the only one right now.
Added C include, linking lines
* tests/empty.c: Test of empty C file, just using raptor.h work
* raptor_uri.c (raptor_uri_filename_to_uri_string,
raptor_uri_uri_string_to_filename_fragment): Casts and
char/unsigned char fixes for C++
2004-06-08 Dave Beckett <>
* raptor_uri.c (raptor_default_new_uri): Avoid free(NULL) for filename.
* raptor_general.c (raptor_parse_file): Check before fopen that it
is not a directory attempting to be fopen()ed - unix only, with
* raptor_www.c (raptor_www_file_fetch): Check before fopen that it
is not a directory attempting to be fopen()ed - unix only, with
* rdfdump.c: Add error for failure of raptor_uri_filename_to_uri_string
* raptor_uri.c (raptor_uri_filename_to_uri_string):
Unix malloc too large by 2.
* raptor_uri.c (raptor_default_new_uri): Zero fragment pointer.
* raptor_uri.c (raptor_default_new_uri): Do not use a NULL filename.
* raptor_uri.c (raptor_uri_uri_string_to_filename_fragment):
Fail if the URI has no path or was going to return an empty string.
(assert_filename_to_uri): Test code allow checks for NULL.
(main): Test code for silly URIs that should work or fail.
2004-06-06 Dave Beckett <>
* raptor_internal.h: Added RAPTOR_FATAL3
* raptor_uri.c: Fix win32 file/URI encoding to use file:///name
and escape things better.
(raptor_uri_filename_to_uri_string): Calculate new length correctly,
with %-escaping.
(raptor_uri_uri_string_to_filename_fragment): Calculate new format.
Also do less strlen, strcpy.
(main): Change tests to match new win32 file URI, test %-escaping
and %-unescaping correctly.
2004-06-04 Dave Beckett <>
* raptor_uri.c:
NOTE: Not all below is fully working - 3 tests fail at this point.
(raptor_uri_filename_to_uri_string): %-escape ' ' and '%' at least
as a minimum. Document this. On Windows, generate file:///c:/ ...
not c|
(raptor_uri_uri_string_to_filename_fragment): Add %-unescaping.
(main): Added test cases for %-escaping, %-expanding
* Added raptor_uri_win32_test
2004-06-03 Dave Beckett <>
* tests/turtle/rdfq-results.ttl:
Updated to
CVS $Id: recording-query-results.html,v 1.9 2004/06/03 12:41:37 aseaborne Exp $
2004-05-31 Dave Beckett <>
* raptor_general.c (raptor_parser_error_varargs,
raptor_parser_warning_varargs): Chop off trailing \n from messages.
* raptor_libxml.c (raptor_libxml_error):
Chop off trailing \n correctly.
2004-05-30 Dave Beckett <>
* turtle_lexer.l: Set the uri union field for ':' qname.
* turtle_parser.y (raptor_turtle_parse_start):
Delete any existing buffer content before
* raptor_general.c:
Added feature warn_other_parseTypes, default true in lax mode.
* raptor_parse.c:
Added feature warn_other_parseTypes and used to warn when a parseType
Literal is assumed.
* raptor_internal.h: Added feature warn_other_parsetypes
* raptor.h: Aded feature warn_other_parsetypes
* tests/warn-07.out, tests/warn-07.rdf: Replaced by warn-07
* tests/ Remove ex-50, warn-07 covers it
* tests/ex-50.out, tests/ex-50.rdf: Replaced by warn-07
* tests/ Add warn-07
Check for right values for warning tests, not just presence of a
2004-05-29 Dave Beckett <>
* Add --enable-maintainer-mode
Add check for glib-2.0 presence rather than an error barf.
2004-05-28 Dave Beckett <>
* tests/
Add set +e, set -e around multiple tests so they only fail at the end.
* Only check flex version in maintainer mode
* Re-order directives and tidy up.
Make lex and yacc rules be maintainer only.
* Use automakefile conditionals STRCASECMP and GETOPT
for conditional sources.
* Use automakefile conditionals STRCASECMP and GETOPT
2004-05-27 Dave Beckett <>
* check for perl
* Add fix-flex and use it
* fix-flex: Fix flex output
* raptor_internal.h: Added raptor_libxml_free
* raptor_parse.c (raptor_xml_parse_start, raptor_xml_parse_terminate):
raptor_libxml_free to tidy up.
* raptor_libxml.c (raptor_libxml_free):
Added to tidy up after a parsing.
* raptor_parse.c (raptor_xml_parse_terminate):
Clean up sax2_element stack after
2004-05-26 Dave Beckett <>
* turtle_lexer.l: Allow _ after : in qnames.
Make bare ':' work.
* tests/turtle/rdf-schema.out, tests/turtle/rdf-schema.ttl:
RDF namespace document
* tests/turtle/rdfs-namespace.out, tests/turtle/rdfs-namespace.ttl:
RDFS namespace
* tests/turtle/ Added test-13, rdf-schema, rdfs-namespace
* tests/turtle/test-13.out, tests/turtle/test-13.ttl: test bare :
* turtle_parser.y: Fix RAPTOR_DEBUG args in old format.
* tests/turtle/ Added test-12
* tests/turtle/test-12.out, tests/turtle/test-12.ttl:
test for _ after : in qnames
* libraptor.3:
Describe use of UTF-8 for literals and strings
* libraptor.3: 1.3.1 changes
2004-05-25 Dave Beckett <>
* raptor.h: Added RAPTOR_STATIC for WIN32 when statically linking
Fix raptor_print_statement arg s/const//
2004-05-24 Dave Beckett <>
* raptor_general.c (raptor_free_memory, raptor_system_free):
Do not return, no return value.
2004-05-21 Dave Beckett <>
* tests/turtle/rdfq-results.ttl, tests/turtle/rdfq-results.out:
Replace XML Schema namespace with 2001 versi
2004-05-19 Dave Beckett <>
* rdfdump.c: Includes re-order, doc
* rdfdump.c: don't do stdarg.h here - it should be in raptor.h
* raptor.h:
Add include for stdarg.h to get va_list for raptor_vsnprintf
* raptor_xml.c (raptor_xml_escape_string):
q should be an unsigned char*
* raptor_utf8.c (raptor_unicode_char_to_utf8):
Cast for unsigned long to unsigned char
* raptor_parse.c (raptor_xml_start_element_handler): Cast for memcpy.
* win32_config.h: patch from Jose for VC6
2004-05-18 Dave Beckett <>
* ntriples_parse.c (raptor_ntriples_generate_statement):
Remove use of ntriples_parser,
not used.
2004-05-15 Dave Beckett <>
2004-05-12 Dave Beckett <>
* turtle_parser.y, turtle_common.h, ntriples_parse.c:
Do not allow any language with datatype literals.
* tests/turtle/ add zip, targets
2004-05-11 Dave Beckett <>
* Bumped version to 1.3.1
* Snapshotted raptor_1_3_0 for 1.3.0 release
* turtle_lexer.l: Allow - in qnames, prefix qnames.
* tests/turtle/ Added test-11
* tests/turtle/test-11.out, tests/turtle/test-11.ttl:
- and _ in qnames, prefixes
2004-05-07 Dave Beckett <>
* raptor_sequence.c, raptor_internal.h: Add assert macros
2004-05-04 Dave Beckett <>
* raptor_general.c, raptor.h:
Export raptor_xml_literal_datatype_uri_string
* raptor_internal.h:
raptor_xml_literal_datatype_uri_string now exported.
* libraptor.3: Added 1.3.0 items
* raptor_general.c (raptor_parse_uri_with_connection): Document
the Accept: header malarky. Only send it if connection is NULL.
Use Accept: MIME-TYPE,*/*;q=0.1
* raptor_www_curl.c (raptor_www_curl_fetch): append to slist right
* raptor_general.c (raptor_parse_uri_with_connection): Send
"Accept: MIME-TYPE ;*/*" to prefer the specified one rather than
accept only that.
* raptor.h: Added raptor_get_mime_type
* raptor_general.c (raptor_parse_uri_with_connection):
Set Accept header with mime type of this syntax if there is one
* raptor_www.c (raptor_www_set_http_accept):
Make accept value overwrite \0 from Accept:
* make raptor.rdf
* turtle_parser.y, raptor_www_libxml.c, raptor_parse.c,
ntriples_parse.c: Fixes for c++
* added
2004-05-02 Dave Beckett <>
* turtle_parser.y: Add xml_literal_datatype_uri to parser context.
(raptor_turtle_parse_init,raptor_turtle_parse_terminate): use above
(raptor_turtle_generate_statement): Use above to remove language
from all literals except xml literals.
* turtle_common.h: Add xml_literal_datatype_uri to parser context.
* ntriples_parse.c: Add xml_literal_datatype_uri to parser context.
(raptor_ntriples_parse_init,raptor_ntriples_parse_terminate): use
(raptor_ntriples_generate_statement): Use above to remove language
from all literals except xml literals.
* raptor_identifier.c (raptor_identifier_print):
Use raptor_xml_literal_datatype_uri_string
and save a string.
2004-04-29 Dave Beckett <>
* rdfdump.c (main):
Use raptor_free_memory to free memory allocated in libraptor.
* raptor_www_libxml.c (raptor_www_libxml_fetch):
Free content type using libxml's xmlFree
since it was allocated there.
* raptor_www_libxml.c, raptor_www_curl.c (raptor_www_libxml_fetch):
Make headers for User-Agent: and/or
Accept: if they were set in the raptor_www.
* raptor_www.c (raptor_www_set_http_accept): Added.
* raptor_internal.h: Added http_accept to raptor_www
* raptor.h: Added raptor_www_set_http_accept
2004-04-15 Dave Beckett <>
* raptor_general.c (raptor_guess_parser_name):
use strrchr to find *last* .
2004-04-14 Dave Beckett <>
* raptor_sequence.c (raptor_new_sequence): Zap sequence field.
* raptor_xml_writer.c (raptor_xml_writer_cdata):
Do not copy more bytes than allowed.
* Added raptor_expat.c
* raptor_parse.c: Export some expat-only handlers:
(raptor_xml_parse_init): Do not call expat init code here.
(raptor_xml_parse_start): Call new raptor_expat_init to initialise
parser state.
* raptor_internal.h: Added RAPTOR_XML_EXPAT only exports including
raptor_expat_init prototype.
* raptor_expat.c: raptor expat parser
2004-04-13 Dave Beckett <>
* raptor.h: Added xsd and owl namespace URIs
* raptor_namespace.c (raptor_namespaces_init):
Define xsd, owl when defaults is 2+
2004-04-11 Dave Beckett <>
* raptor_parse.c:
(raptor_xml_parse_start) Free expat/libxml contexts from an earlier parsing to ensure resetting of state
* raptor_stringbuffer.c (raptor_stringbuffer_prepend_string_common):
raptor_stringbuffer_prepend_string): Added, implemented by above
internal function.
(main): Added tests for prepending.
* raptor.h: Add RAPTOR_API for newly exported functions. Add
* raptor_stringbuffer.c: (main) printf arg
* raptor_internal.h, raptor.h: Moved raptor_stringbuffer to public API
* raptor_stringbuffer.c (raptor_stringbuffer_append_stringbuffer):
(main): Updated test code for raptor_stringbuffer_append_stringbuffer
2004-04-10 Dave Beckett <>
* raptor_general.c, raptor.h (raptor_guess_parser_name):
Added new public class method.
(raptor_new_parser_for_content): Now uses above.
* raptor_internal.h, raptor.h:
Move raptor_unicode_char_to_utf8, raptor_utf8_to_unicode_char to
public API.
* INSTALL.html: consistency with librdf instructions.
update libxml versions.
update automake, autoconf minimums.
* tests/ fix result codes for split off NFC warnings
* tests/
Split off NFC warnings so they can fail noisily when glib isn't
present to do the check.
* rapper.1:
Document -g/--guess flag to guess the parser to use from the
identifier (URI or file name).
* rdfdump.c:
Added -g/--guess flag to use raptor_new_parser_for_content guessing
the parser to use from the identifier (URI or file name).
* turtle_parser.y, raptor_rss.c, raptor_parse.c, ntriples_parse.c:
Added scoring factory method recognise_syntax for rdfxml, ntriples,
rss, turtle parsers.
* raptor_internal.h:
Added parser scoring factory method recognise_syntax.
* raptor_general.c (raptor_new_parser_for_content):
Added, guessing which parser to
instance using scoring factory method recognise_syntax.
* raptor.h: Added raptor_new_parser_for_content
2004-04-10 Dave Beckett <>
* raptor_sequence.c: cast for c++
2004-04-09 Dave Beckett <>
* raptor_parse.c: Removed use of raptor_print_statement_detailed
* raptor_internal.h:
Removed raptor_print_statement_part_as_ntriples, made static
* raptor.h: Deprecate raptor_print_statement_detailed
* raptor_general.c (raptor_print_statement_detailed):
Restored, was in raptor.h but useless.
* raptor_general.c: dates, docucomments
(raptor_print_statement_detailed): Deleted - never publically
documented or used.
2004-04-08 Dave Beckett <>
* raptor_sequence_test needs to link with
* turtle_parser.y:
rename raptor_free_handler,raptor_print_handler -> as raptor_sequence...
* raptor.h, raptor_internal.h: Move sequence class to public api.
* raptor_sequence.c:
rename raptor_free_handler,raptor_print_handler -> as raptor_sequence...
(raptor_sequence_print_uri): Added.
(raptor_sequence_set_print_handler): Added.
* raptor_internal.h, raptor.h: Export raptor_vsnprintf public.
2004-04-06 Dave Beckett <>
* turtle_parser.y (turtle_parse): Remove un-necessary cast.
* turtle_parser.y (turtle_parse): Free lexer
2004-04-05 Dave Beckett <>
* rdfdump.c:
Added HELP_PAD to format long help description over multiple lines.
2004-03-30 Dave Beckett <>
* tests/turtle/test-00.out: Updated base uri
* tests/turtle/ Added rdfq-results
* tests/turtle/rdfq-results.out, tests/turtle/rdfq-results.ttl:
RDF Query result set example from
2004-03-27 Dave Beckett <>
* raptor_general.c, turtle_parser.y, rdfdump.c: casts for C++
* NEWS.html: skeleton 1.3.0 news
*, Use some AM_INIT_AUTOMAKE options.
Require automake1.7, which requires autoconf 2.54
* examples/
Drop $(shell .. ) which is not portable between makes
*, emit --help usage to
stdout, Support --help and exit 0.
2004-03-26 Dave Beckett <>
* libraptor.3: words
* rapper.1: Document -f
* TODO.html: bug was libxml2 not me
* tests/ Add bad-21
* tests/bad-21.rdf:
Check non-namespaced attributes on a property are reported
* raptor_parse.c (raptor_xml_start_element_handler):
Check element, attributes for
non-namespaces once we know we are in rdf processing.
Check all named attributes for lack of namespace, error and zap
if found.
(raptor_process_property_attributes): Skip any deleted attributes.
2004-03-25 Dave Beckett <>
* tests/ Added warn-05, warn-06
* tests/warn-05.out, tests/warn-06.out, tests/warn-05.rdf,
tests/warn-06.rdf: Check for warning for unknown rdf namespaced
property element, attributes
* raptor_parse.c (raptor_process_property_attributes):
Generate an error for forbidden
rdf names, warning for unknown rdf names.
* raptor_parse.c: Merged rdf_attr_info into rdf_syntax_terms_info.
Now we can check for unknown rdf: names
raptor_forbidden_propertyAttribute_name): Return -1 on unknown name.
(raptor_start_element_grammar): Generate an error for forbidden
rdf names, warning for unknown rdf names.
* tests/ Added warn-04
* tests/warn-04.out, tests/warn-04.rdf:
Check for warning for unknown rdf namespaced node element
* tests/turtle/, tests/
fix grep for Warning output
* raptor_general.c, raptor.h:
Added raptor_free_memory to dealloc memory returned by raptor
functions - some systems need this due to having multiple heaps.
* raptor_general.c (raptor_default_generate_id_handler): doh
* raptor_general.c (raptor_default_generate_id_handler):
Rework not to use tmpid before
initialising it.
* raptor_general.c (main): Free returned uri
* raptor.h: Added raptor_feature_from_uri
* Added raptor_general_test
* raptor_general.c (raptor_feature_from_uri):
Turn a feature URI into a feature number.
(main): Added, testing feature enumerations.
* rdfdump.c: note feature values in -f help
* rdfdump.c: More help message tidying.
* rdfdump.c: Alter HELP_TEXT macro so short arg isn't auto-quoted.
Use this to add short option options arg to help.
2004-03-24 Dave Beckett <>
* raptor_general.c (raptor_default_generate_id_handler):
Don't bump default genid
counter when a user_bnodeid is present.
* rdfdump.c:
Allow setting feature optional values -f NAME=VALUE (integer).
* raptor_general.c, raptor.h:
Use raptor_feature type for enumeration calls.
* raptor_general.c: Tidy feature labels
* rdfdump.c: Tidy -f help message.
* rdfdump.c: Re-ordered long_options to be alphabetical by option char.
Added -f/--feature FEATURE to set a parser feature.
With the value 'help', lists them all using raptor_features_enumerate.
* raptor.h: Added raptor_get_feature, raptor_features_enumerate.
raptor_set_feature gets a return value.
* raptor_general.c (raptor_set_feature):
Delete docs, now has an API. Return a failure value.
raptor_features_list - static added.
(raptor_features_enumerate): Added, to allow returning
of parser feature name, URI and/or label.
(raptor_get_feature): Added.
2004-03-23 Dave Beckett <>
* TODO.html: Add turtle use of raptor_generate_id
* turtle_parser.y (blank):
Use raptor_generate_id when a blank identifier name is
given, to allow application to change it.
2004-03-21 Dave Beckett <>
* tests/turtle/test-10.out, tests/turtle/test-09.out, turtle_parser.y:
Make Turtle integers emit xsd:integer
2004-03-19 Dave Beckett <>
* raptor_parse.c: Twice.
* raptor_parse.c: Remove FIXME for other rdf:parseType values -
just fall through to Literal
* raptor_parse.c: FIXME not relevant.
* ntriples_parse.c (raptor_ntriples_generate_statement):
Kill a FIXME, fail with an
error on bad rdf:_n property.
* tests/ Added bad-06.nt
* tests/bad-06.nt: bad rdf:_n in ntriples
2004-03-18 Dave Beckett <>
* turtle_parser.y: Added INTEGER_LITERAL.
Turn it into a xsd:nonNegativeInteger
* turtle_lexer.l: Added INTEGER_LITERAL.
* tests/turtle/ Added test-09 test-10
* tests/turtle/test-09.out, tests/turtle/test-09.ttl,
tests/turtle/test-10.out, tests/turtle/test-10.ttl: Integer
literal tests
* tests/,
Ensure rapper is up-to-date and built before tests are run.
2004-03-15 Dave Beckett <>
* tests/warn-03.out, tests/warn-03.rdf:
Added warn-03 warning not dieing on NFC in XML literals
* tests/ Added warn-03
* raptor_parse.c (raptor_end_element_grammar):
For NFC problems in an XML literal,
take notice of feature_non_nfc_fatal which defaults to warning,
rather than given an error.
2004-02-26 Dave Beckett <>
* tests/turtle/ Added bad-04.ttl
* tests/turtle/bad-04.ttl: Check , in collection items fails
* tests/turtle/test-07.ttl: Remove , between items - forbidden.
* turtle_parser.y (objectList):
Remove optional commas for triple objects.
(itemList): Added with no commas.
(collection): Use itemList not objectList.
* tests/turtle/ remove test-09.ttl
* tests/turtle/test-09.out, tests/turtle/test-09.ttl:
Comma is required or not in collections, not optional
2004-02-24 Dave Beckett <>
* Export library la files
* turtle_parser.y (objectList):
Allow optional commas in lists of objects - such as in
all triple objects and collections.
* tests/turtle/test-09.out, tests/turtle/test-09.ttl:
Added test for optional comms in a collection
* tests/turtle/ Added test-09.ttl
2004-02-23 Dave Beckett <>
* raptor.h: Add stdio.h
2004-02-19 Dave Beckett <>
* n3_lexer.l, turtle_lexer.l (main):
Don't re-reset the scanner to its address.
* n3_lexer.l, turtle_lexer.l: Remove RAPTOR_IN_REDLAND
* turtle_parser.y (main): Use lineno.
* turtle_parser.y: comment
2004-01-30 Dave Beckett <>
* deps
* rapper.1: fix changelog
* Make rapper.html
* rapper.1: urls
2004-01-25 Dave Beckett <>
* raptor_general.c (raptor_delete_parser_factories):
Free alias if it was set.
2004-01-24 Dave Beckett <>
* rdfdump.c: Don't print (default) when listing valid args for -i
* rdfdump.c: Use raptor_syntax_name_check to check name; don't
make/destroy a parser.
* raptor_general.c (raptor_syntax_name_check): Added, to check names.
* raptor.h: Added raptor_syntax_name_check
* rdfdump.c: Make -i try to make a parser, don't hardcode names.
* rdfdump.c: Use raptor_syntaxes_enumerate in -i error
* rdfdump.c: Use raptor_syntaxes_enumerate in usage -i help
* rapper.1: Updated to mention Turtle.
* Bumped version to 1.3.0
* README.html: turtle
* Snapshotted raptor_1_2_0 for 1.2.0 release
* libraptor.3, README.html, NEWS.html: Updated for 1.2.0
* TODO.html: N-Triples Plus to Turtle
2004-01-22 Dave Beckett <>
* Use AC_PROG_LEX and handle when there is no lex or
flex gracefully. AM_PROG_LEX set LEX to a value that caused odd
configure output.
2004-01-20 Dave Beckett <>
* Updated output files check from n3/ntriples plus
to turtle
* turtle_parser.y, raptor_rss.c, raptor_parse.c, ntriples_parse.c:
Update to use raptor_parser_register_factory alias argument
to register any old or alternate names.
* raptor_internal.h: Add alias field to raptor_parser_factory_s.
Add alias argument to raptor_parser_register_factory prototype.
* raptor_general.c (raptor_parser_register_factory,
raptor_get_parser_factory): Added an alias argument, used to
register a alternate name which is never used or returned in
parser enumerations.
* examples/grapper.c:
Added a tooltip for the errors/warnings output box.
* examples/grapper.c: Use G_TYPE_INT for column 1 of errors
* examples/grapper.c:
Added errors/warnings box, updated with results of parsing.
* Added ChangeLog.1
2004-01-19 Dave Beckett <>
* raptor_general.c: Define raptor_system_malloc, raptor_system_free
* raptor_internal.h: RAPTOR_... not LIBRDF_
* raptor_utf8.c (raptor_utf8_is_nfc): Use SYSTEM_FREE
* raptor_internal.h: Define SYSTEM_MALLOC, SYSTEM_FREE
2004-01-18 Dave Beckett <>
* turtle_parser.y: fix double free of first_identifier
* turtle_parser.y: Collections generating triples.
* turtle_common.h: Add nil/first/rest_uri fields
* tests/turtle/test-07.out: Updated as a collection test result.
* tests/turtle/ Added test-08
* tests/turtle/test-08.out, tests/turtle/test-08.ttl,
tests/turtle/test-07.ttl: collection test
* turtle_lexer.l: Added '(' and ')' for collections.
* turtle_parser.y:
Added collection grammar parts, triples not right yet.
* raptor_identifier.c (raptor_copy_identifier):
Copy literal languages correctly.
* tests/turtle/test-00.out, tests/turtle/,
tests/, turtle_parser.y, turtle_lexer.l,
turtle_common.h, raptor_internal.h, raptor_general.c,,
N-Triples Plus to Turtle
n3_ in filenames to turtle_
.ntp to .ttl
* rdfdump.c: indenting
* rdfdump.c: Allow turtle, don't document ntriples-plus
* n3_parser.y, turtle_parser.y: Register under the name turtle
2004-01-14 Dave Beckett <>
* raptor_xml_writer.c, raptor_uri.c, raptor_rss.c, raptor_qname.c,
raptor_parse.c, raptor_namespace.c, raptor_internal.h,
raptor_general.c, ntriples_parse.c: RAPTOR_ERROR* and
RAPTOR_FATAL* lose their function arg, using __func__
* raptor_general.c (raptor_finish):
Remove direct call of raptor_terminate_parser_rdfxml
* raptor_parse.c (raptor_xml_parse_finish_factory): Renamed from
raptor_terminate_parser_rdfxml and now static.
* raptor_internal.h: finish_factory returns void
* raptor_internal.h: Added finish_factory factory cleanup method.
Removed raptor_terminate_parser_rdfxml.
* raptor_general.c (raptor_delete_parser_factories):
Free mime type, URI string. Call
new finish_factory factory method.
2004-01-07 Dave Beckett <>
* raptor_general.c: year
2004-01-01 Dave Beckett <>
* raptor_general.c: casts for string ops
* raptor_www.c, raptor_internal.h,
Added WWW access with BSD libfetch.
* raptor_www_libfetch.c: WWW access with BSD libfetch