2003-09-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Snapshotted raptor_1_0_0 for 1.0.0 release

	* libraptor.3: new date

	* NEWS.html: Note functions were removed, soname was increased

	* ntriples.h, Makefile.am: Removed old header ntriples.h

	* raptor_general.c, raptor.h, ntriples_parse.c:
	Removed deprecated functions as promised. Changes are described in
	the libraptor.3 man page.

	* configure.ac: Updated for Raptor 1.0.0
	Shared library soname major now 1

	* NEWS.html, libraptor.3: Updated for Raptor 1.0.0

	* win32_config.h: Added R_OK define for access()

	* tests/Makefile.am: test wording for failures

2003-09-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added bad-05.nt

	* tests/bad-05.nt: Bad Unicode character #x110000

	* tests/test.out, tests/test.nt: fixes

	* tests/test.nt:
	Removed resource18-20 - illegal Unicode chars.  Added \U0010FFFF

	* ntriples_parse.c (raptor_ntriples_term):
	Forbid Unicode characters outside #x0-#x10FFFF

2003-09-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* libraptor.3: Updated for 0.9.13
	Added raptor_parse_file_stream.
	Added new feature normalize_language.
	Added list of all static variables exported.

	* configure.ac:
	Define RAPTOR_VERSION_DECIMAL here and make it an AC_SUBST.

	* raptor_general.c: Use RAPTOR_VERSION_DECIMAL define.

	* raptor-config.1: Document --version-decimal and --libtool-libs

	* raptor-config.in: Added --version-decimal.

	* manifest.pl: Handle multiline comments.

	* rdfdump.c: Allow filename "-" to be used as standard input.
	When a filename is given, use raptor_parse_file.
	Adjust the error messages to mention file names when using
	raptor_parse_file.

	* raptor.h: Added raptor_parse_file_stream

	* raptor_general.c (raptor_parse_file_stream):
	Added, allowing passing in of an existing
	FILE* stream (with optional filename) and parsing rather than
	raptor doing the fopen/fclose.
	(raptor_parse_file): A NULL uri argument now means stdin.

	* raptor_internal.h, raptor_parse.c: Remove rdf_parser->fh

	* rdfdump.c: Use raptor_short_copyright_string in usage/help messages

	* raptor_general.c, raptor.h: Added raptor_short_copyright_string

2003-09-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_general.c (raptor_set_feature):
	Add new feature normalize_language
	(raptor_set_parser_strict): Set default for feature
	normalize_language to true.

	* raptor.h, raptor_internal.h: Add new feature normalize_language

	* raptor_parse.c (raptor_xml_start_element_handler):
	Normalize language to lowercase.
	After http://www.w3.org/TR/rdf-concepts/#dfn-language-identifier
	Controlled by a new parser feature 'normalize_language'.

	* ntriples_parse.c (raptor_ntriples_parse_line):
	Normalize language to lowercase.
	After http://www.w3.org/TR/rdf-concepts/#dfn-language-identifier

2003-09-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor-config.in: Oops, -lraptor with --libs

	* configure.ac:
	Added RAPTOR_LIBTOOL_LIBS for compiling with raptor using libtool.

	* raptor-config.in:
	Added exec_prefix to make --libs generate the right -L
	Added --libtool-libs for compiling with raptor using libtool.

2003-08-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac: dmalloc enabled only if dmalloc.h is present

	* tests/Makefile.am: Removed warn-01 re-added accidently.

	* tests/warn-00.out, tests/warn-00.rdf: Added rdf:bagID warning check

	* tests/Makefile.am:
	Added scanning tests and ex-52.svg/out for inside SVG

	* tests/ex-52.out, tests/ex-52.svg: Check scanning for rdf/xml in SVG

	* raptor_general.c (raptor_set_parser_strict):
	Scanning and assuming are never default
	on, must be enabled

	* TODO.html: The scanning for rdf:RDF works (--scan argument to rapper)

	* raptor_parse.c (raptor_xml_start_element_handler):
	Fix scanning for rdf:RDF.  Do
	parent->child processing if the grammar has a state set up,
	in this case it is expecting a list of node elements.

	* rdfdump.c: Set strict before setting other features

	* rdfdump.c: Use strict_mode

	* tests/warn-00.out, tests/warn-00.rdf, tests/warn-01.out,
	tests/warn-01.rdf, tests/warn-03.rdf: These are now errors not
	warnings

	* raptor_parse.c (raptor_xml_start_element_handler):
	 Non-namespaced elements are now
	an error.
	(raptor_process_property_attributes): Tidy non-namespaced element name.
	(raptor_start_element_grammar): Give errors if an attempt is made
	to proceed dealing with elements with no namespace for property or
	node elements - attributes are caught above.

	* tests/Makefile.am:
	Add bad-18.rdf, bad-19.rdf for non-namespaced elements

	* tests/bad-18.rdf, tests/bad-19.rdf:
	Test node/property elements without namespaces fail

	* raptor_internal.h:
	Add raptor_parser field 'magic' for libxml2 error/warning callback
	validation.  and declare RAPTOR_LIBXML_MAGIC to set use there

	* raptor_general.c (raptor_new_parser):
	Set RAPTOR_LIBXML_MAGIC field in structure for
	libxml2 error/warning callback validation.

	* ntriples_parse.c (raptor_ntriples_term):
	Check that the string/URI term was terminated
	before the end of the string.

	* tests/Makefile.am: Added bad-04.nt

	* tests/bad-04.nt: Test for non-terminated URI

	* raptor_libxml.c (raptor_libxml_warning,raptor_libxml_error):
	Validate the ctx pointer
	returned since sometimes it is a ctx, sometimes ctx->userData.  The
	latter is what is expected.

	* tests/Makefile.am: Oops, run bad ntriples tests in N-Triples mode

	* rapper.1: Added --version/-v

	* rdfdump.c: Tidied up option error handling, messages.
	Added --version/-v

2003-08-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac:
	Added --with-dmalloc option default auto for maintainer, no otherwise.

2003-08-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac: Bumped version to 0.9.13

	* Snapshotted raptor_0_9_12 for 0.9.12 release

	* NEWS.html: Updated for 0.9.12

	* raptor_parse.c (raptor_start_element_grammar):
	With rdf:datatype, do not lose the
	URI string pointer.  For rdf:ID, do not allocate the URI twice.

	* raptor_parse.c (raptor_generate_statement):
	Do not set language when a datatype is given.

	* raptor_xml_writer.c (raptor_new_xml_writer):
	Initialise writer buffer to an empty string
	to start (i.e. just \0).
	(raptor_xml_writer_start_element): Now assume buffer is always
	present, remove empty buffer case.
	(raptor_xml_writer_end_element,raptor_xml_writer_cdata): Handle 0
	length case, no strncpy.

	* tests/Makefile.am: Added ex-51.
	Fix daml+oil test.

	* tests/ex-51.out, tests/ex-51.rdf: Check empty XML literal works

	* tests/ex-41.out: No language for datatyped literals.

	* tests/daml-oil.rdf, tests/daml-oil.out, tests/Makefile.am:
	Updated to DAML+OIL schema 2001-03 as defined in
	http://www.daml.org/2001/03/daml+oil-index.html

	* tests/daml-oil.out, tests/daml-oil.rdf: Added 2000-11-30
	http://www.cs.man.ac.uk/%7Ehorrocks/DAML-OIL/daml-oil.rdf

	* tests/owl-schema.rdf, tests/owl-schema.out:
	Updated OWL schema http://www.w3.org/2002/07/owl to match
	that given in OWL Reference 2003-08-18 CR
	at http://www.w3.org/TR/2003/CR-owl-ref-20030818/#appB

	* libraptor.3: Updated for 0.9.12

2003-08-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* NEWS.html: Updates for 0.9.12

	* TODO.html: URI#frag used as URI in retrievals now

	* Makefile.am: Remove -static from test links

	* raptor_uri.c (main): Test xmlbase and retrievable URI tranforms.

	* raptor_uri.c (raptor_uri_resolve_uri_reference): Handle #s
	relative to a uri-reference with a #fragment.

	* raptor_www.c:
	(raptor_www_fetch) Use raptor_new_uri_for_retrieval to ensure
	that the URI-reference fragments are removed, and the URI path
	exists.

	* raptor.h: Added raptor_new_uri_for_retrieval

	* raptor_uri.c (raptor_new_uri_for_retrieval): Added, strips
	fragments and ensures / path is present.

	* INSTALL.html: Builds on Alpha Linux 2.2

	* raptor_xml_writer.c
	(raptor_xml_writer_start_element,raptor_xml_writer_end_element):
	Use size_t for lengths.

	* raptor_xml_writer.c (raptor_xml_writer_start_element):
	Set content_element_seen in parent only if there is a parent.
	(raptor_xml_writer_end_element): Change current_element to parent
	only if there is a current element.

	* TODO.html: NFC checks

	* tests/Makefile.am:
	Pull out may-fail NFC checks into a separate set and don't exit 1
	if they do fail.  Failure is possible since it requires GNOME glib2
	which isn't always available.

2003-08-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_general.c (raptor_check_ordinal): parentheses just for gcc

2003-08-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_xml_writer.c:
	(raptor_xml_writer_end_element) Reset the current_element pointer
	on finishing.  Makes any succeeding cdata do the right thing.

	* rdfdump.c: Inside redland, don't call raptor_init/finish, it's
	done by redland's world.

2003-08-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_rss.c (raptor_rss_parse_chunk):
	Stop working after a user abort of the parser.

	* raptor_general.c (raptor_check_ordinal): c is not const

	* rdfdump.c, raptor_xml_writer.c, raptor_xml.c,
	raptor_www_libwww.c, raptor_utf8.c, raptor_uri.c, raptor_set.c,
	raptor_sax2.c, raptor_qname.c, raptor_parse.c, raptor_namespace.c,
	raptor_locator.c, raptor_libxml.c, raptor_identifier.c,
	raptor_general.c, ntriples_parse.c: Move dmalloc includes into
	raptor_internal.h and use everywhere.

	* raptor_internal.h:
	Add raptor dmalloc includes here to ensure all raptor code uses it
	or not consistently.

	* TODO.html: +URI retrieval

2003-08-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added warn-03

	* tests/warn-03.rdf: Handle deleting of default namespaces

	* raptor_parse.c (raptor_xml_start_element_handler): Handle when a
	name has a namespace but that namespace has no URI such as
	xmlns="".  In that case, the element has non-namespaced parts too,
	so skip.

	* ntriples_parse.c (raptor_ntriples_parse_line):
	Casts so isspace calls get int args.

	* raptor_uri.c (raptor_uri_is_absolute):
	Cast so isalpha and isalnum get int args.

	* tests/Makefile.am: Added ex-50

	* tests/ex-50.out, tests/ex-50.rdf: Check parseType with unknown value

	* raptor_parse.c (raptor_start_element_grammar):
	Handle parseType="Literal"
	without duplicating code.

	* raptor_parse.c (raptor_start_element_grammar):
	Handle parseType="...." which
	isn't any of the other known types identically to
	parseType="Literal".

	* raptor_general.c (raptor_check_ordinal):
	Return <0 on failure such as no legal
	characters at all.

	* raptor_internal.h: Added raptor_check_ordinal.

	* ntriples_parse.c (raptor_ntriples_generate_statement): Make
	RAPTOR_IDENTIFIER_TYPE_ORDINAL predicates for property URI strings
	that match the rdf:_<n> pattern with n a decimal integer>0.

	* raptor_parse.c: Use raptor_check_ordinal for checking <n> in rdf:_<n>

	* raptor_general.c (raptor_check_ordinal): Check the <n> in rdf:_<n>

	* raptor_general.c (raptor_vsnprintf):
	Non-portable use of va_list fixed by copying the
	arguments with va_copy before passing to vsnprintf calls.  The
	symptom was crashes on some architectures where this mattered, such
	as powerpc.

2003-08-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_general.c (raptor_parse_uri_with_connection):
	Return failure status.

2003-08-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added bad N-Triples tests bad-0[0-3].nt and checks

	* tests/bad-00.nt, tests/bad-01.nt, tests/bad-02.nt, tests/bad-03.nt:
	Bad N-Triples

	* ntriples_parse.c: raptor_ntriples_term_class Added for:
	(raptor_ntriples_term_valid): Checking validity of a ntriples term -
	this could be inlined.
	(raptor_ntriples_string) Renamed to:
	(raptor_ntriples_term) Use raptor_ntriples_term_valid.
	(raptor_ntriples_parse_line): Add more checks that whitespec exists
	between ntriples terms.
	Error to have typed literals with languages.

	* tests/test.out, tests/test.nt:
	Updated to remove language from typed literals

	* raptor_general.c (raptor_print_statement_detailed):
	Fix datatype uri output <uri> not <uri<

2003-07-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html:
	'make check' shouldn't fail on NFC checks that will never work.

	* raptor_general.c (raptor_parser_simple_error):
	Call raptor_parser_error_varargs, don't
	lose the arguments.

2003-07-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac: Bumped version to 0.9.12

	* Snapshotted raptor_0_9_11 for 0.9.11 release

	* NEWS.html, README.html: words

	* raptor_sax2.c: struct nsd: use size_t for length.

	* configure.ac:
	Ensure the libxml2 xmlReader API is new enough (2.5.0+) such as
	having xmlParserSeverities.

	* NEWS.html: More updates for 0.9.11

2003-07-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h: Update raptor_generate_id_handler to take user_bnodeid arg.

	* raptor_rss.c:
	Update calls of raptor_generate_id with user_bnodeid (NULL for
	existing calls)

	* raptor_parse.c:
	Update calls of raptor_generate_id with user_bnodeid (NULL for
	existing calls)
	Use it to wrap the rdf:nodeID values for subject and object cases.

	* raptor_internal.h: raptor_generate_id updated to add user_bnodeid

	* raptor_general.c (raptor_set_generate_id_handler):
	Document final argument
	user_bnodeid from the rdf:nodeID attribute value.
	(raptor_default_generate_id_handler): Add user_bnodeid, return it if
	present.
	(raptor_generate_id): Add user_bnodeid and pass on.

	* NEWS.html, README.html: words

	* README.html: Style.
	RSS tag soup rewording

	* README.html, INSTALL.html: Updated for 0.9.11 release

	* raptor_internal.h: Added raptor_xml_writer_comment

	* TODO.html: NFC checking done.
	Exclusive XML C14N done.

	* raptor_namespace.c (raptor_namespace_copy):
	Don't copy uri and then lose it.

	* raptor_xml_writer.c:
	Added current_element for tracking empty/not empty elements.
	(raptor_xml_writer_comment): Added, just concatenating the content
	via raptor_xml_writer_cdata.

	* raptor_parse.c (raptor_xml_comment_handler):
	Call raptor_xml_writer_comment inside
	parseType="Literal"

	* raptor_xml_writer.c: raptor_xml_writer gains stack depth.
	(raptor_free_xml_writer): Clear any content_cdata before finishing.
	(raptor_xml_writer_start_element)
	Add depth to raptor_format_sax2_element calls.  Increase it
	(raptor_xml_writer_start_element,raptor_xml_writer_end_element):
	Add depth to raptor_format_sax2_element calls.  Decrease it
	and raptor_namespaces_end_for_depth each time.

	* raptor_namespace.c:
	Moved  error_handler and error_data arguments around.
	(raptor_namespaces_start_namespace) Gets those as arguments
	(raptor_namespaces_start_namespace) Added, simpler version of _full
	(raptor_namespaces_start_namespace_full) Added, was the old interface
	but less error arguments.
	(raptor_namespaces_namespace_in_scope): Fix namespace URI comparison.
	(raptor_namespace_new) Looses error arguments.
	(raptor_namespace_copy) Added, copy to a new stack with a new depth.

	* raptor_sax2.c (raptor_format_sax2_element):
	Gain stack depth argument.
	Only use namespace declarations when there is a namespace stack
	present.
	copy namespaces to new stack when new ones are needed.

	* raptor_internal.h:
	Add error_handler and error_data to namespace_stack.
	raptor_namespaces_start_namespace gets those as arguments
	raptor_namespace_new looses them
	raptor_namespaces_start_namespace takes less args
	raptor_namespaces_start_namespace_full added
	raptor_namespace_copy added
	content_cdata_seen and content_element_seen back into sax2_element

	* raptor_parse.c:
	Moved content_cdata_seen and content_element_seen back into sax2_element
	Update for new raptor_namespaces_start_namespace calling convention.

	* raptor_xml_writer.c: Debug

	* raptor_namespace.c (raptor_namespaces_format):
	Fix missing counting : when present

	* tests/ex-11.rdf, tests/ex-11.out:
	Updated to declare the html namespace as default, expect it in the
	N-Triples output.

	* raptor_namespace.c (raptor_namespaces_namespace_in_scope):
	Added, checking if a given
	namespace is declared in scope.
	(raptor_namespaces_format): Added, returning a string to declare
	the given namespace.

	* raptor_xml_writer.c:
	(raptor_xml_writer_start_element,raptor_xml_writer_end_element):
	Updated for raptor_format_sax2_element new arguments

	* raptor_sax2.c (raptor_format_sax2_element):
	Add raptor_namespace_stack argument.
	Create xmlns declarations for elements not declared in the current
	stack state, using raptor_namespaces_format to create the string.

	* raptor_internal.h:
	Added prototypes for raptor_namespaces_namespace_in_scope,
	raptor_namespaces_format
	raptor_format_sax2_element now takes a raptor_namespace_stack

2003-07-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_internal.h: raptor_xml_writer prototypes take unsigned char*

	* raptor_parse.c: Move the code building parseType="Literal" strings to
	raptor_xml_writer class.
	(raptor_cdata_grammar): Added, just for symmetry mostly, with most
	code taken from raptor_xml_cdata_handler.

	* raptor_xml_writer.c:
	Move the code building parseType="Literal" strings to
	raptor_xml_writer class.

	* Makefile.am: Added raptor_xml_writer.c

	* raptor_xml_writer.c: Initial version

	* raptor_parse.c:
	Split content_cdata fields between sax2_element & (RDF/XML
	specific) element.
	raptor_element: Add xml_writer field.
	Various calls changed to use the new raptor_simple_message_handler
	for error handling implemented as raptor_parser_simple_error here.
	(raptor_xml_parser_simple_error_handler): Added, matching the
	raptor_simple_message_handler API and calling raptor_parser_error.
	(raptor_start_element_grammar): When parseType="Literal" appears,
	create a new raptor_xml_writer.
	(raptor_end_element_grammar): When parseType="Literal" ends, delete
	the raptor_xml_writer.

	* raptor_sax2.c (raptor_format_sax2_element):
	Use raptor_simple_message_handler.

	* raptor_general.c (raptor_start_parse):
	Use raptor_parser_simple_error with
	raptor_namespaces_init.
	(raptor_parser_simple_error): Added, matching the
	raptor_simple_message_handler API but same as raptor_parser_error.

	* raptor_xml.c (raptor_xml_escape_string):
	Use raptor_simple_message_handler.

	* raptor_qname.c (raptor_new_qname): Use raptor_simple_message_handler.

	* raptor.h: raptor_sax2_element moved here, semi-public.
	Re-ordered URI functions earlier.
	Various methods changed to use (public) raptor_simple_message_handler
	for error handling.

	* raptor_internal.h: Delete raptor_internal_message_handler.
	Added prototype raptor_parser_simple_error, implementing
	raptor_simple_error_handler API.
	Various methods changed to use (public) raptor_simple_message_handler
	for error handling.
	raptor_sax2_element moved to semi-public raptor.h
	rdf/xml-specific cdata parts moved from raptor_sax2_element to
	raptor_element.
	Added raptor_xml_writer functions.

	* raptor_namespace.c:
	Use (public) raptor_simple_message_handler for error handling.

2003-07-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_process_property_attributes):
	NFC error message tidy.
	(raptor_end_element_grammar): Fix NFC error reporting and recovery.
	Report NFC validation failures for XML Literals

	* tests/Makefile.am: Added bad-15 bad-17 for bad NFC checking

	* tests/bad-16.rdf, tests/bad-17.rdf, tests/bad-15.rdf:
	Bad NFC tests for property attribute, element, element ptl

	* configure.ac:
	Added check for g_utf8_normalize in glib 2.0 using pkgconfig.
	Defines HAVE_G_UTF8_NORMALIZE if present.

	* raptor_internal.h: Added raptor_utf8_is_nfc

	* raptor_parse.c (raptor_process_property_attributes):
	Check for valid NFC on property
	attribute values.
	(raptor_end_element_grammar): Check for valid NFC on plain literal
	property element values.

	* raptor_utf8.c (raptor_utf8_is_nfc):
	Added Normal Form C checking, using GNOME glib
	2.0 g_utf8_normalize initially.

	* raptor_parse.c (raptor_start_element_grammar):
	Forbid property attributes and all
	rdf:* attributes (except rdf:ID) with rdf:parseType

	* raptor_general.c:
	(raptor_statement_part_as_counted_string, raptor_print_statement_part_as_ntriples):
	Do not emit language for datatyped literals.

	* raptor_parse.c (raptor_process_property_attributes):
	rdf:li is forbidden as a
	property attribute

	* raptor_parse.c:
	rdf_syntax_terms_info table: rdf:li is forbidden as a property
	attribute

	* libraptor.3: Updated raptor_set_feature for
	RAPTOR_FEATURE_ALLOW_BAGID and
	RAPTOR_FEATURE_ALLOW_RDF_TYPE_RDF_LIST

	* tests/owl-schema.out, tests/ex-39.out:
	Updated to remove the <idList> rdf:type rdf:List triples

	* raptor_general.c (raptor_set_feature, raptor_set_parser_strict):
	 Added a new feature
	RAPTOR_FEATURE_ALLOW_RDF_TYPE_RDF_LIST (user argument) and
	feature_allow_rdf_type_rdf_List (internal) to generate the rdf:type
	rdf:List triple from rdf:parseType="Collection".  The default is no
	after latest RDF/XML revisions.  Not relevant for daml:Collection
	which get the daml:List always.

	* raptor.h:
	Added a new feature RAPTOR_FEATURE_ALLOW_RDF_TYPE_RDF_LIST
	to control rdf:type rdf:List triple generation from
	rdf:parseType="Collection" (default no)

	* raptor_internal.h:
	Added a new feature feature_allow_rdf_type_rdf_List
	to control rdf:type rdf:List triple generation from
	rdf:parseType="Collection" (default no)

	* raptor_parse.c (raptor_start_element_grammar):
	Remove rdf:type rdf:List triple
	generation from rdf:parseType="Collection" by default.  Not
	for daml:Collection.  Add a new feature
	feature_allow_rdf_type_rdf_List to control this.

2003-07-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_xml.c (raptor_valid_xml_ID, raptor_xml_escape_string):
	unsigned long for all unichars.

	* raptor_internal.h:
	Update raptor_utf8_to_unicode_char to use unsigned long output.

	* raptor_utf8.c (raptor_utf8_to_unicode_char):
	Take and use unsigned long for unichars.

	* raptor_rss.c:
	namespace->nspace since might be a C/C++ keyword sometime

	* raptor_www_curl.c (raptor_www_curl_header_callback):
	Turn void* into char*

	* raptor_set.c: Casts

	* rdfdump.c (rdfdump_error_handler): Cast data into raptor_parser*

	* raptor_www_curl.c:
	(raptor_www_curl_write_callback,raptor_www_curl_header_callback):
	Return unsigned int 0 on failure, cannot return -1 :)

	* raptor_www.c: Some casts near mallocs

	* tests/owl-schema.out: Updated to match 2003-03-18 version.

	* tests/owl-schema.rdf:
	Updated to 2003-03-18 version (just changed DOS line endings)

	* ntriples_parse.c (raptor_ntriples_parse_chunk):
	Handle just the end marker being given
	i.e. len=0 (and possibly s=NULL)

	* raptor_parse.c (raptor_xml_end_element_handler):
	When parsing has been aborted (rdf_parser->failed), clean up used
	memory rather than just return.
	element_name is not used except when debugging, so #ifdef it.

2003-07-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h:
	Export global statics raptor_copyright_string, raptor_version_string,
	raptor_version_major, raptor_version_minor, raptor_version_release
	and raptor_version_decimal

	* raptor_general.c:
	Added statics raptor_copyright_string, raptor_version_string,
	raptor_version_major, raptor_version_minor, raptor_version_release
	and raptor_version_decimal

	* Makefile.am:
	Removed raptor_cc code since ISO may charge a commercial use fee for
	this list.

	* raptor_cc.gperf:
	ISO 3166-1 'The use of ISO 3166-1 in commercial products may be
	subject to a licence fee.' says the maintenance agency.  Goodbye
	code.  See
	http://www.iso.ch/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/index.html

	* raptor_parse.c:
	Free former rdf:about, rdf:resource attribute string values before
	they are zapped.

	* raptor_parse.c (raptor_xml_parse_terminate):
	Delete the sax2 object when cleaning
	up.

	* rdfdump.c: Free new uri_string when it's allocated for a filename

	* rdfdump.c: Tidied usage and help information.

	* rapper.1: Updated to match current rapper arguments.

	* Makefile.am: Added raptor_identifier.c

	* raptor_general.c, raptor_identifier.c:
	Moved raptor_identifer classes to raptor_identifier.c

2003-07-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c:
	If first argument is a filename, make it into a file:/// uri.

	* raptor_uri.c (raptor_default_new_uri):
	Turn probably-bad file:filename 'URIs' into
	proper file:///... etc. ones.

	* raptor_parse.c:
	Make use of forbidden rdf-namespaced property attributes into errors,
	as they should be.
	(raptor_forbidden_propertyAttribute_name): Now used.
	Reword some error messages.

	* tests/Makefile.am (check-bad-rdf):
	Note when bad test succeeds instead of failing

	* tests/Makefile.am: Added bad-13, bad-14

	* tests/bad-14.rdf: rdf:Description is not a legal property attribute

	* tests/bad-13.rdf: A property element cannot take rdf:about

	* raptor_uri.c (raptor_new_uri_for_xmlbase): Docs

2003-07-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* libraptor.3: formatting

	* libraptor.3:
	Added raptor_set_default_generate_id_parameters,
	raptor_set_generate_id_handler

	* raptor_general.c (raptor_set_default_generate_id_parameters):
	Fix it right this time.

	* raptor_general.c (raptor_set_default_generate_id_parameters):
	Fix base so the next
	generated ID uses the integer given, not integer+1

	* raptor_general.c (raptor_free_parser):
	Free any user-set genid prefix.

2003-07-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h:
	raptor_genid_type enum added - for RAPTOR_GENID_TYPE_BNODEID, BAGID
	Added prototypes for raptor_set_generate_id_handler,
	raptor_set_default_generate_id_parameters.

	* raptor_general.c (raptor_set_generate_id_handler):
	Added, to sent the generate ID
	handler implementation.
	(raptor_set_default_generate_id_parameters): Added, to sent the
	generate ID handler parameters for the default implementation
	("gen"+integer).
	(raptor_default_generate_id_handler): Added, moved default code from
	raptor_generate_id
	(raptor_generate_id): Use handler if it exists, otherwise the default
	implementation.

	* raptor_internal.h:
	Added generate_id_handler data parts to raptor_parser internals.

2003-06-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: use top_builddir not ..

	* Makefile.am: add libraptor.la to rapper dependencies

2003-06-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c:
	Added -e/--ignore-errors otherwise rapper stops parsing after 1st
	error using raptor_parse_abort.

2003-06-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_rss.c (raptor_rss_insert_identifiers):
	Back to being legal C99.

	* libraptor.3: Fix changes for 0.9.11

	* libraptor.3: Updated for stuff since 0.9.10

	* raptor_rss.c (raptor_rss_insert_identifiers):
	Init identifier after item

	* rdfdump.c, configure.ac: Tweak RSS Tag Soup parser words

2003-06-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_xml_start_element_handler):
	Emit an error for namespace
	declarations that are RDF namespace URI plus some chars.  Emit
	a warning if a namespace is declared same as RDF one but 1 char
	short.

	* tests/Makefile.am: Added bad-12, warn-02

	* tests/bad-12.rdf, tests/warn-02.out, tests/warn-02.rdf:
	Check for bad rdf namespace URI declarations and warn if last char
	of RDF namespace URI omitted

2003-06-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac:
	Fix the check for RSS parser requirements and report it more
	verbosely.

	* configure.ac: RSS parser only if libxml/reader.h present (for now).

	* configure.ac: libcurl reporting

	* raptor_parse.c (raptor_xml_parse_chunk_): Use sax2->first_read

	* raptor_parse.c (raptor_xml_parse_start,raptor_xml_parse_chunk_):
	Don't use
	first_read on newer libxml2.

2003-06-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_internal.h:
	raptor_sax2_s: Add first_read #if LIBXML_VERSION < 20425

	* raptor_rss.c (raptor_rss_insert_identifiers):
	Fix GCC-ism, declare variable at
	start of block.

	* raptor_parse.c (raptor_xml_parse_init):
	Move declaration of expat xp to start of
	function.

	* examples/raptor_abort.c, examples/grapper.c, strcasecmp.c,
	rdfdump.c, raptor_xml.c, raptor_www_test.c, raptor_www_libxml.c,
	raptor_www_libwww.c, raptor_www_curl.c, raptor_www.c,
	raptor_win32.c, raptor_utf8.c, raptor_uri.c, raptor_set.c,
	raptor_sax2.c, raptor_rss.c, raptor_qname.c, raptor_parse.c,
	raptor_namespace.c, raptor_locator.c, raptor_libxml.c,
	raptor_general.c, ntriples_parse.c, configure.ac:
	Merged patch from Jose Kahan to switch to use raptor_config.h
	(helps people compiling from source with multiple config.h)

2003-06-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* examples/grapper.c (fs_ok_button_callback):
	Use raptor_uri_filename_to_uri_string
	to make the file URI.
	(main): If the argument is a filename, make a URI string out of it
	via raptor_uri_filename_to_uri_string and use it instead of
	assuming it is a URI.

2003-05-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_xml.c (raptor_xml_escape_string):
	Changed API - does not require a parser arg.

	* raptor_internal.h: Moved SAX2 parts and prototypes here.

	* raptor_general.c: Use RAPTOR_PARSER_RSS to wrap init of RSS parser

	* raptor.h:
	Changed prototype of raptor_xml_escape_string - does not require a
	parser arg.

	* raptor_parse.c:
	Split raptor_element/raptor_rdf_xml_parser into SAX2/RDF bits.
	Lots of function and structure renaming.

	* configure.ac: Define RAPTOR_PARSER_RSS only when libxml is around

	* raptor_sax2.c: SAX2 API

	* Makefile.am: Added raptor_sax2.c

2003-04-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_rss.c (raptor_rss_emit): Use raptor_free_identifier

	* raptor_rss.c (raptor_rss_emit):
	Properly init the raptor_identifier items

2003-04-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_rss.c, raptor_parse.c, ntriples_parse.c:
	Use raptor_parser_register_factory with label param.

	* raptor.h: Added raptor_get_name, raptor_get_label

	* raptor_general.c: Added parser label to factory
	(raptor_parser_register_factory): Add label param, copy it.
	(raptor_get_name): Added, return name of parser.
	(raptor_get_label): Added, return label of parser.

	* raptor_internal.h: Added parser label to factory

	* examples/grapper.c: Remove some g_printfs
	Remove use of display qnames - not impl.

	* raptor_general.c (raptor_statement_part_as_counted_string):
	Init len for literals with
	the literal len included

	* examples/grapper.c: Don't use triples_list for now.
	(grapper_model_set_syntax): Fix output.
	(grapper_model_statements_handler): Remove newlines from literals.

	* raptor_general.c (raptor_statement_part_as_counted_string):
	Init len for literals.

2003-04-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_set.c: fix doccumment

2003-04-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* examples/grapper.c:
	Replace N-Triples / RDF/XML with dropdown menu and add RSS tag soup.

2003-04-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c: Added -i/--input for rdfxml, ntriples, rss

	* raptor_internal.h: More RAPTOR_DEBUG macros

	* raptor_general.c:
	(raptor_init) Added rss parser via raptor_init_parser_rss when
	HAVE_LIBXML_XMLREADER_H

	* Makefile.am: Added raptor_rss.c

	* raptor_rss.c: Raptor RSS parser

2003-04-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* INSTALL.html: Added some links

	* configure.ac: Bumped version to 0.9.11

	* Snapshotted raptor_0_9_10 for 0.9.10 release

	* TODO.html, NEWS.html: Updated for 0.9.10 release

	* INSTALL.html: Updated to reflect recent tests.
	Added examples section, link to libraptor.html
	Added more configure options docs.

	* libraptor.3: Added raptor_set_parser_strict
	Added raptor_www_no_www_library_init_finish

	* raptor.spec.in: Require curl
	Added raptor-config, raptor.pc

2003-04-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.spec.in: Require curl
	Added raptor-config, raptor.pc

	* tests/Makefile.am:
	Move rdf:bagID tests to list of tests with warnings for now (while
	testing in lax mode)

2003-04-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c (print_statements):
	Print the program name not "rdfdump" hardcoded.

2003-04-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac: Check for libxml/xmlreader.h

2003-04-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* examples/grapper.c: Added about box, triples count.
	Free some allocated memory.  Rest seems lost in gtk.

	* examples/Makefile.am: Add AM_CFLAGS, LIBS for debugging

	* raptor_parse.c (raptor_xml_start_element_handler):
	Don't copy an empty attributes array.

	* configure.ac: Added raptor.pc

	* Makefile.am:
	Added raptor.pc pkgconfig file installing to $(libdir)/pkgconfig

	* raptor.pc.in: pkgconfig for raptor

2003-04-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: words

2003-04-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h: void arg

	* examples/raptor_abort.c: Zap curl cleanup.

	* rdfdump.c: Added -c flag to getopts - oops, missed in last release.
	Added -m/--mode flag to set strict/lax.  Check the values and die
	with usage.
	Check the legal values of -o/--output and die with usage.
	Zap curl cleanup.

	* raptor_www.c (raptor_www_no_www_library_init_finish):
	To control global WWW
	library init/finish

	* raptor_parse.c:
	Make bagID optional - removed from language and gives errors
	(strict), allowed with warnings (lax).
	lax/strict controlled by feature_allow_bagID

	* raptor_internal.h: Added feature_allow_bagID

	* raptor_general.c: Several more docucomments for functions.
	(raptor_new_parser): Use raptor_set_parser_strict
	(raptor_set_feature): Added RAPTOR_FEATURE_ALLOW_BAGID
	(raptor_set_parser_strict): Added to set strict/lax mode flags.

	* raptor.h: Added RAPTOR_FEATURE_ALLOW_BAGID
	Added raptor_set_parser_strict
	Added raptor_www_no_www_library_init_finish

2003-04-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added warn-01

	* tests/warn-01.out, tests/warn-01.rdf:
	Check warning on non-prefixed property elements

2003-04-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c, tests/Makefile.am (raptor_xml_start_element_handler):
	Error recovery - try to hide that a bad element was found from a
	parent element, it thinks the element is empty.  See
	tests/warn-00.rdf

	* tests/warn-00.out, tests/warn-00.rdf: Check warnings

2003-04-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac, Makefile.am: debian dir elsewhere

2003-04-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: docs updated

	* TODO.html: www tidy by default on raptor_finish

	* raptor_uri.c (raptor_uri_uri_string_to_filename):
	Use raptor_strcasecmp
	(raptor_uri_is_file_uri): Use raptor_strncasecmp

2003-03-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* README.html: added libraptor.html

	* Makefile.am: Added libraptor.html, fix-groff-xhtml

	* libraptor.3: deleted repeated URI METHODS

	* libraptor.3: Updated for 0.9.6->present

2003-03-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* examples/grapper.c: Use N-triples output style.
	Pass in URL command line argument

	* TODO.html: words

	* TODO.html: XML attribute bugs

	* Makefile.am: Added raptor_xml.c

	* raptor_parse.c (raptor_xml_start_element_handler):
	do XML attribute value
	normalization for libxml2.  Cannot be done properly since the type of
	the attribute is lost.  expat gets it right.
	(raptor_xml_parse_init): Cast for expat XML_SetExternalEntityRefHandler

	* raptor_xml.c:
	Updated for C14N text/attribute node encoding rules.  Don't de-UTF8
	at the same time.

	* tests/ex-49.out: > in attribute appears raw

	* raptor_general.c:
	(main) Moved raptor_validate_xml_ID, raptor_xml_escape_string test
	code to raptor_xml.c

	* raptor_xml.c: Raptor XML routines

	* raptor_general.c:
	Moved raptor_validate_xml_ID, raptor_xml_escape_string to raptor_xml.c

	* tests/Makefile.am: Added ex-49

	* tests/ex-49.out, tests/ex-49.rdf:
	Checking escaping in parseType Literal values with XML attributes

	* raptor_parse.c (raptor_format_element):
	Pass in parser for UTF-8 error handling.
	Use raptor_xml_escape_string for attribute values but
	only malloc/free if lengths changed.
	(raptor_xml_end_element_handler): Update to new
	raptor_xml_escape_string API and only malloc/free it if lengths
	changed.

	* raptor_parse.c (raptor_xml_cdata_handler):
	Use updated raptor_xml_escape_string API

	* raptor.h: Added raptor_statement_part_as_counted_string,
	raptor_statement_part_as_string
	Changed raptor_xml_escape_string API

	* raptor_general.c (raptor_statement_part_as_counted_string,
	raptor_statement_part_as_string): Added, making N-triples style
	output from parts of raptor_statement.
	(raptor_xml_escape_string): Change API to take an existing
	buffer/calculate length
	(main): Update for raptor_xml_escape_string.

	* examples/Makefile.am: Also clean grapper binary

2003-03-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* examples/grapper.c: Added N-Triples parsing

	* examples/Makefile.am: Don't build grapper usually

	* examples/grapper.c: Raptor GTK GUI example code

	* examples/Makefile.am: Added grapper.c

	* examples/Makefile.am: more deps

	* raptor_internal.h:
	Added raptor_print_statement_part_as_ntriples prototype

	* raptor_general.c:
	raptor_print_ntriples_string moved to raptor_general.c
	(raptor_print_statement_part_as_ntriples): Added, internal.
	(raptor_print_statement_as_ntriples): Now uses above.

	* ntriples_parse.c:
	raptor_print_ntriples_string moved to raptor_general.c

2003-03-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* examples/Makefile.am: another deps attempt

	* examples/Makefile.am: typo

	* examples/Makefile.am: Use LDADD and hunt for @REDLAND_LIBS@
	Added $(top_builddir)/../librdf/librdf.la

	* configure.ac: Hunt for librdf.la in abs dir

	* rapper.1: added -c/--count

	* examples/Makefile.am: Fixes to make cross-dir building work.

	* TODO.html: docs

	* configure.ac, Makefile.am: Added examples dir

	* raptor_general.c (raptor_parse_uri_with_connection): Added.
	(raptor_parse_abort): Added.

	* raptor.h: Added raptor_parse_uri_with_connection.
	Added raptor_parse_abort.

	* examples/raptor_abort.c, examples/Makefile.am: examples

	* rdfdump.c:
	Call curl_global_cleanup if using curl to free it's resources.

	* raptor_www.c (raptor_www_init,raptor_www_finish):
	Don't init/cleanup curl, we
	can't guarantee doing this at most once if a handle is passed in.

	* raptor_www_curl.c (raptor_www_curl_free): Tidy

	* raptor_www_curl.c (raptor_www_curl_init,raptor_www_curl_free):
	Use/mark field
	curl_init_here to note when to cleanup a handle - don't destroy one
	that was provided.

	* raptor_internal.h:
	for curl, record when curl_easy_init was done in raptor

	* raptor_general.c (raptor_init): Call raptor_www_init
	(raptor_finsh): Call raptor_www_finish
	(raptor_parse_uri): Delete www object on failure.

	* configure.ac: Bumped version to 0.9.10

	* Snapshotted raptor_0_9_9 for 0.9.9 release

	* NEWS.html, README.html: Updated for 0.9.9 release

2003-03-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: fixed crashing when rdf/xml parser has no base URI

2003-03-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_set.c: Only use raptor_set_stats_print with RAPTOR_DEBUG

	* raptor_general.c: Some comment tidying.
	(raptor_start_parse): Docucomment.  Copy the uri into the parser
	structure (base_uri, locator uri), don't just keep the pointer.
	(raptor_free_parser): Free the base URI in the structure, if
	present.

	* raptor_parse.c (raptor_xml_parse_start):
	Remove uri arg.   Fail if no base URI is
	given - stored in the parser object

	* ntriples_parse.c (raptor_ntriples_parse_start): Remove uri arg.

	* raptor_internal.h:
	raptor_parser_factory start method: Remove (base) uri arg, it's in
	the object data.

	* raptor_www.c: Use RAPTOR_FREE,MALLOC,CALLOC
	(raptor_www_free): Free the www object.  Doh.

	* TODO.html:
	raptor_start_parse crash with NULL base URI for rdfxml parser

	* libraptor.3: raptor_parse_chunk: Takes unsigned char buffer.

	* libraptor.3: raptor_start_parse: Note NULL base URI ok for ntriples

	* libraptor.3: Typo: raptor_start_parse not raptor_parse_start

	* raptor_general.c (raptor_xml_escape_string):
	Make it work with 10ffff again

	* raptor_parse.c (raptor_xml_cdata_handler):
	Cast around raptor_xml_escape_string

	* raptor_general.c (raptor_xml_escape_string):
	Null terminate new string

	* raptor_www_libxml.c, raptor_www.c:
	Use RAPTOR_WWW_BUFFER_SIZE for I/O buffers

	* raptor_internal.h: Define RAPTOR_WWW_BUFFER_SIZE for I/O buffers

	* rdfdump.c: Declare raptor_stats_print when RAPTOR_DEBUG

	* raptor_general.c: (raptor_stats_print) C99

2003-03-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c: Call raptor_stats_print with RAPTOR_DEBUG

	* raptor_set.c: Record set hits/misses with RAPTOR_DEBUG
	(raptor_set_stats_print): Defined with RAPTOR_DEBUG

	* raptor_internal.h:
	Move raptor_xml_parser typedef here (still internal).
	raptor_xml_parser_stats_print, raptor_set_stats_print: Defined with
	RAPTOR_DEBUG

	* raptor_parse.c (raptor_xml_parser_stats_print):
	Defined with RAPTOR_DEBUG

	* raptor_general.c (raptor_stats_print): Defined with RAPTOR_DEBUG

	* TODO.html: Fixed escaping rdf:parseType="Literal" content

	* raptor_parse.c (raptor_xml_cdata_handler):
	Use raptor_xml_escape_string when content
	type is an XML literal

	* raptor_general.c (raptor_xml_escape_string):
	Now takes and returns lengths
	Fix assumption of '\0' terminated strings.
	(main): Update for counted strings

	* raptor.h: raptor_xml_escape_string now takes and returns lengths

	* raptor.h: Added raptor_xml_escape_string

	* Makefile.am: Added raptor_general_test

	* raptor_general.c (raptor_xml_escape_string):
	Added, XML-escapes UTF-8 strings.
	(main): Added set of tests for raptor_xml_escape_string

2003-03-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-48.out, tests/ex-48.rdf:
	ex-48 parse type literal with entity encoding

	* tests/Makefile.am: Added ex-48

	* raptor_www_libxml.c (raptor_www_libxml_fetch): Make this work again

	* raptor_parse.c (raptor_record_ID): Dealloc item after adding

	* raptor_parse.c: typo

	* raptor_parse.c:
	Remove raptor_id_list implementation for ID checking to use raptor_set.
	(raptor_xml_parse_init): Init raptor_set for ids.
	(raptor_xml_parse_terminate): Use raptor_free_set.
	(raptor_record_ID): Use raptor_set_add to check for unique
	"ID base-URI"
	(raptor_free_ID_list): Gone

	* raptor_uri.c (raptor_default_uri_as_counted_string,
	raptor_uri_as_counted_string):
	Added and used in default factory.

	* raptor.h: Added raptor_uri_as_counted_string.

	* raptor_internal.h:
	Added raptor_set and raptor_new_set constructor, raptor_free_set
	destructor and raptor_set_add only method

	* Makefile.am: Added raptor_set.c, raptor_set_test

	* raptor_set.c: Raptor sets for ID checking

2003-03-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added OWL namespace document / rdf schema
	owl-schema.rdf, owl-schema.out

	* raptor_www.c: init w3c libwww

	* tests/owl-schema.out, tests/owl-schema.rdf: OWL namespace schema

	* TODO.html: Bug: encoding & < and > in XML literals.

	* raptor_www_libwww.c: add fatal does-not-work error

2003-03-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_www_libwww.c: Raptor WWW with W3C libwww

	* rdfdump.c:
	Added -c/--count option to just count triples, don't print anything.

	* raptor_www_test.c: Use raptor_www_init/finish

	* raptor_www_libxml.c: Handle www->failed and aborting transfer.

	* raptor_www_curl.c: Handle www->failed and aborting transfer.
	(raptor_www_curl_init): Use passed-in connection if available.

	* raptor_www.c (raptor_www_init): Added, for once-only init.
	(raptor_www_finish): Added, for once-only tidy.
	(raptor_www_new): Now uses new constructor
	(raptor_www_new_with_connection): Added, allows re-use of existing
	www library connection - just curl at present.
	(raptor_www_get_connection): Added, returns current libwww library
	connection.
	(raptor_www_abort): Added to stop a www transaction.
	(raptor_www_file_fetch): Tidying of errors; handle abort.
	(raptor_www_fetch): Uses raptor_www_file_fetch for all files.

	* raptor_internal.h: Added W3C libwww prototypes.

	* raptor_parse.c:
	Throughout all SAX event handlers - if rdf_parser->failed set, return
	immediately, doing no work.

	* raptor_general.c (raptor_parse_uri_write_bytes):
	Use raptor_www_abort if parsing
	fails.
	(raptor_parse_uri): Return error status.  Pass on is_end empty chunk.
	(raptor_parser_abort): Added, setting failed flag.
	(raptor_print_statement_detailed): Typo

	* raptor.h: Added raptor_www_abort

	* raptor.h: Add raptor_www_init, raptor_www_finish.
	Add raptor_www_new_with_connection
	Add raptor_www_get_connection

	* configure.ac: Added w3c libwww configuring

2003-03-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c: Use raptor_parse_uri

	* raptor_general.c (raptor_parse_uri_write_bytes): Added, to support:
	(raptor_parse_uri): Added, using raptor_www to get and deal with all
	the data in one go.

	* raptor.h: raptor_parse_uri takes optional base_uri

	* raptor_www_test.c: Use URI from context.
	Take www arg on handlers
	Use raptor_uri

	* raptor_www_libxml.c, raptor_www_curl.c:
	Use URI from context.
	Take www arg on handlers

	* raptor_www.c (raptor_www_set_userdata): Gone
	(raptor_www_free): Free request uri
	(raptor_www_set_write_bytes_handler,
	raptor_www_set_content_type_handler): Added
	(raptor_www_file_fetch): pass www to write_bytes
	(raptor_www_fetch): Don't pass URI on.

	* raptor_internal.h: Store raptor_uri of request
	Use new declared write_bytes, content_type handlers
	*fetch methods don't take URI string

	* raptor.h: Declare handlers for raptor www write bytes, content type
	raptor_www_fetch now takes a raptor_uri

	* raptor_parse.c: Fix broken-fix for broken-expat UTF8 BOM crash.
	tokens_count is on the rdf_xml_parser not rdf_parser

	* configure.ac: tweak

	* configure.ac: tidy libcurl version

	* raptor_internal.h, configure.ac: No more gnome-xml/libxml.h

	* configure.ac: Min libxml2 now 2.4.0

	* configure.ac: Don't look for xml-config

	* raptor_general.c (raptor_parse_file):
	Tidy up if raptor_start_parse fails

	* raptor_general.c:
	Removed raptor_start_parse_file - merged into raptor_parse_file

	* raptor_www.c (raptor_www_file_fetch): Used for RAPTOR_WWW_NONE
	Report file open errors, correct file read eof handling.
	(raptor_www_fetch) Use only raptor_www_file_fetch for RAPTOR_WWW_NONE

	* raptor_general.c (raptor_start_parse_file):
	Improve file open error message

	* configure.ac:
	Added --with-www=none option and RAPTOR_WWW_NONE to indicate it

2003-03-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_www.c (raptor_www_error): Use RAPTOR_FREE

	* raptor_www_test.c: Call raptor_uri_init

	* raptor_www_curl.c (raptor_www_curl_fetch): call raptor_www_error

	* raptor_internal.h: Use raptor_message_handler again

	* raptor.h:
	Use raptor_message_handler again in raptor_www_set_error_handler,
	raptor_www_error

	* raptor_www.c (raptor_www_free): Tidy locator URI
	(raptor_www_set_error_handler, raptor_www_error): Use
	raptor_message_handler again.
	(raptor_www_error): Use raptor_locator in output, error handler.
	(raptor_www_fetch): Store the URI string of request in the locator

	* raptor.h: Declare raptor_www_message_handler (no locator)

	* raptor_general.c: raptor_vsnprintf now internally visible.

	* raptor_internal.h: Use different error handler, no parser context.
	raptor_vsnprintf now internally visible.
	Added raptor_www_error prototype

	* raptor_www.c: Only enable raptor_www_file_fetch with libxml,
	(raptor_www_set_error_handler): Use different error handler, no
	parser context.

	* configure.ac, Makefile.am: Added raptor WWW enabling, configuring

	* raptor_internal.h:
	Added raptor WWW retrieval internal includes, structs, prototypes

	* raptor.h: Added raptor WWW retrieval prototypes

 	* raptor_www.c, raptor_www_curl.c, raptor_www_libxml.c,
	raptor_www_test.c: Raptor WWW retrieval

2003-03-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h: Export raptor_free_parser with RAPTOR_API

	* win32_config.h: add trailing #endif

	* win32_config.h: s/WIN32_LEAD_AND_MEAN/WIN32_LEAN_AND_MEAN/

	* raptor_parse.c (raptor_xml_comment_handler): Added - nop at present.
	(raptor_xml_parse_init): For expat, use raptor_xml_comment_handler

	* raptor_libxml.c: (raptor_libxml_init) Use raptor_xml_comment_handler

	* raptor_internal.h: Add raptor_xml_comment_handler prototype

	* configure.ac:
	Try to make maintainer mode flags match redland's defaults.

2003-03-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac, Makefile.am: Fix cflags/cppflags when in redland

2003-03-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-46.out, tests/ex-46.rdf:
	make rdf:li and rdf_2 property elements generate different triples

2003-02-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-46.out: fix

	* tests/Makefile.am: Added ex-47

	* tests/ex-47.out, tests/ex-47.rdf: Exercise all rdfs vocab

	* tests/Makefile.am: Added ex-46

	* tests/ex-46.out, tests/ex-46.rdf: Exercise all rdf vocab

2003-02-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* win32/raptor.plg, win32/Makefile.am: deleted raptor.plg

	* win32/raptor.dsp, win32/README:
	Updated win32 config - from contributed patches

2003-02-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c: Correct :'s turning into |'s in win32 file URIs

2003-02-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* autogen.sh: run libtoolize in each configure.ac dir

	* win32_config.h: win32 has C99 compatible vsnprintf called _vsnprintf

	* configure.ac:
	Check for vsnprintf and check for C99 compatible return value.

	* raptor_general.c (raptor_vsnprintf):
	Added for handling compatibilty with vsnprintf
	that doesn't match C99.

2003-02-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Use $(ECHO) which may be different from sh's echo

	* Makefile.am:
	Changing, moved raptor_getopt.h to rapper_SOURCES after automake
	manual recommendation.

	* Makefile.am: Put raptor_getopt.h in noinst_HEADERS

	* Makefile.am: No need for EXTRA_libraptor_la_SOURCES

	* Makefile.am: Use LTLIBOBJS for extra libraptor objs

	* raptor.h: again

	* raptor.h: don't do deprecated on broken OSX gcc

	* raptor_getopt.h, getopt.c: No need for prefix

	* getopt.c: Duh - use raptor getopt header

	* Makefile.am:
	Use RAPPER_EXTRA_OBJS to optionally add getopt to rapper only

	* configure.ac: Add getopt object to RAPPER_EXTRA_OBJS

	* rdfdump.c: Add raptor_getopt.h for local version

	* raptor_getopt.h: Define rest of getopt externs

	* getopt.c: More prefixes

	* raptor_getopt.h, getopt.c: Public domain getopt

	* configure.ac: Check for getopt and add getopt.o if it missing.

	* autogen.sh:
	try asking the progs for their version - slower, but right

	* autogen.sh: tidying

	* acconfig.h: acconfig.h obsoleted

	* Makefile.am: Use AM_CPPFLAGS

	* autogen.sh:
	Min versions are bumpled - 2.52 for autoconf, 1.6 for automake
	Now hunts for newest, shinyest autoconf and automake/aclocal and uses
	them whatever is available.

2003-02-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac: autoconf 2.5x configure.ac

	* configure.in: Replaced with autoconf 2.5x configure.ac

2003-02-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h: Move stuff around, consolidate deprecated bits

	* ntriples_parse.c, rdfdump.c: No need for ntriples.h

	* raptor.h: Moved all ntriples.h defines here.
	Defined RAPTOR_DEPRECATED (with gcc 3.1+) and used on old api calls.

	* ntriples.h:
	Moved all definitions to raptor.h - this file is now deprecated.

2003-02-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor-config.in: No exec-prefix

	* raptor-config.1: Manual page for raptor-config

	* Makefile.am: Added raptor-config.1

	* rapper.1: EXAMPLE

2003-02-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: $name=>$$name

	* configure.in: Bumped version to 0.9.9

	* Snapshotted raptor_0_9_8 for 0.9.8 release

	* raptor.spec.in: release is 1

	* NEWS.html: Updated for 0.9.8 release

2003-02-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Restore LICENSE.txt

	* Makefile.am: No LICENSE.txt in dist

	* README.html: Updated for 0.9.8 release.

	* TODO.html: Note some missing conformance bits.

	* raptor_uri.c (main):
	Use lstat, reading a selection of dirs to try harder to test
	relative file URIs.

	* configure.in: check for sys/stat.h (for raptor_uri_test main)

	* TODO.html: Note PNG parser

	* tests/Makefile.am: There is no portable test == operator

	* TODO.html: Fixed xmlns:foo="" being erroneously allowed.

	* raptor_parse.c (raptor_xml_start_element_handler): Updated call to
	raptor_namespaces_start_namespace to use error_handler, error_data
	parameters

	* raptor_general.c (raptor_start_parse):
	Updated call to raptor_namespaces_init to use
	error_handler, error_data parameters

	* raptor_internal.h:
	Updated raptor_namespaces_init, raptor_namespaces_start_namespace,
	raptor_namespace_new with error_handler, error_data parameters

	* raptor_namespace.c: (raptor_namespaces_init,
	raptor_namespaces_start_namespace, raptor_namespace_new):
	Add error handler and data parameters and use to explain how
	xmlns:foo="" isn't allowed

2003-02-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	multiple objects of a property element (statement) is an error

	* tests/Makefile.am:
	Report warnings when they occur.  Print the warning text

	* tests/bad-11.rdf: now xml

	* tests/Makefile.am: typo - restult

	* tests/bad-11.rdf: Check xmlns with no namespace name (URI) fails

	* tests/Makefile.am: Added bad-11

	* TODO.html: diagnosed crash on empty xml namespace name (URI)

	* TODO.html: Fixed empty docs now give error, not crash.

	* raptor_libxml.c (raptor_libxml_update_document_locator):
	Handle empty parser context.

	* tests/Makefile.am: ex-46 now bad-10

	* tests/bad-10.rdf, tests/ex-46.rdf, tests/ex-46.out: Now bad-10

	* raptor_parse.c (raptor_xml_parse_chunk_):
	Make an empty rdf/xml bytestream an
	illegal doc (like expat) and return an error.

	* TODO.html: Clarified empty files bug

	* raptor_libxml.c (raptor_libxml_update_document_locator):
	Don't use loc if it is NULL
	such as errors before start of XML document.

	* raptor_libxml.c:
	Check for xmlSAXHandler externalSubset field, not present in old
	libxml v1.  Whether raptor works after this is unlikely and untested.

	* configure.in: Add old libxml V1 warning and suggestion

	* acconfig.h: Added RAPTOR_LIBXML_XMLSAXHANDLER_EXTERNALSUBSET

	* configure.in: Check for xmlSAXHandler externalSubset field

	* INSTALL.html: Added libxml1 warning

	* TODO.html: note some bugs

2003-02-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_locator.c (raptor_print_locator):
	Only print non-negative line numbers

	* raptor_parse.c (raptor_xml_parse_chunk_):
	For libxml, handle first chunk being
	empty, when the XML parser context, xc, is attempted to be initialiased

	* tests/Makefile.am: Added ex-46 (Empty file should give 0 triples)

	* tests/ex-46.out, tests/ex-46.rdf: Empty file should give 0 triples

2003-01-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Remove $? and replace with $< or full dependencies

2003-01-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c:
	Fix macro IS_ASCII_DIGIT which refused to allow '0'.

2003-01-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.1: rdfdump.1 renamed to rapper.1

	* raptor.spec.in, tests/Makefile.am, TODO.html,
	README.html, NEWS.html, Makefile.am, INSTALL.html:
	rdfdump now rapper

	* rapper.1: rdfdump.1 renamed to rapper.1

2002-12-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c:
	(main) Try test again with /etc - surely that is least likely to
	be a symlink?

	* tests/Makefile.am:
	check-bad-rdf: turn off bourne shell exiting while running
	tests expected to fail.

	* tests/Makefile.am:
	Set baseuri from test file basename; ensure no dirs are in the base URI

2002-12-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.ac: Removed just for now

2002-12-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* NEWS.html: tweak

	* configure.in: Bumped version to 0.9.8

	* NEWS.html: date

	* Snapshotted raptor_0_9_7 for 0.9.7 release

	* raptor.spec.in: Updated for 0.9.7 release

2002-12-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* INSTALL.html, README.html, NEWS.html: Updated for 0.9.7 release

	* acconfig.h:
	Seems like PACKAGE and VERSION are not needed here, and later
	autoconfs generate headers that moan.

	* raptor_parse.c, raptor_general.c: castings

	* raptor.h: Indent CPP directives after column 1 # for lame C compiler

	* TODO.html: Updated after recent bug fixes

	* tests/Makefile.am: test(1) string equality is = not ==

2002-12-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* autogen.sh: Delete autom4te too

	* configure.ac: auto-configure source for newer autoconfs

2002-12-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c (main):
	Use /bin to test, seems more likely to be around on more posix
	systems such as OSX

	* raptor_parse.c (raptor_generate_statement):
	Handle NULL reified being passed.
	(raptor_process_property_attributes): Property attributes are never
	reified explicitly but may be in a bag.
	(raptor_start_element_grammar,raptor_end_element_grammar): Turn bad
	uses of bag:ID into errors not warnings.

	* tests/Makefile.am:
	Added more bag:ID checks (44-45) and errors (bad 05-09)
	Make test failures stop the 'make check'.

	* tests/bad-05.rdf, tests/bad-06.rdf, tests/bad-07.rdf,
	tests/bad-08.rdf, tests/bad-09.rdf, tests/ex-48.rdf,
	tests/ex-49.rdf, tests/ex-50.rdf, tests/ex-46.rdf,
	tests/ex-47.rdf, tests/ex-48.out, tests/ex-49.out,
	tests/ex-50.out, tests/ex-46.out, tests/ex-47.out:
	Turned rdf:bagID property element checks into errors

	* raptor_parse.c:
	Add rdf:bagID checks - only allow it in the two cases it is in the
	grammar - on a node element and an empty property element.
	Otherwise emit warnings since there is no error test case yet.

	* tests/ex-50.out, tests/ex-50.rdf, tests/ex-44.out,
	tests/ex-45.out, tests/ex-46.out, tests/ex-47.out,
	tests/ex-48.out, tests/ex-49.out, tests/ex-44.rdf,
	tests/ex-45.rdf, tests/ex-46.rdf, tests/ex-47.rdf,
	tests/ex-48.rdf, tests/ex-49.rdf:
	Checking rdf:bagID ignored on other property element cases

	* raptor_parse.c (raptor_generate_statement):
	Handles generating a reified statement
	ID for use with bagID and then reiifying the statement too.

	* tests/Makefile.am: Add ex-43

	* tests/ex-43.out, tests/ex-43.rdf:
	Test rdf:bagID when property elements need generated reified ID

	* raptor_parse.c (raptor_generate_statement):
	Gain bag_element argument, use it
	throughout to indicate the element to find the rdf:bagID if any.
	(raptor_start_element_grammar): Generate _:bagid rdf:type rdf:Bag
	when rdf:bagID appears on node element.

	* tests/ex-42.out: Correct for actual output order

2002-12-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-03.rdf, tests/ex-03.out:
	correct this now that rdf:bagID support begins to work

	* tests/Makefile.am: Added ex-42

	* tests/ex-42.out, tests/ex-42.rdf: rdf:bagID

	* tests/bad-04.rdf: Check rdf:ID and rdf:bagID with same value fails

	* tests/bad-02.rdf: Duplicate rdf:ID names

	* raptor_parse.c:
	Make debug less chatty about cdata, unless RAPTOR_DEBUG_CDATA
	defined.

	* raptor_parse.c (raptor_record_ID):
	Added, notes rdf:ID and rdf:bagID values, checks
	for duplicates (per in-scope base-URI).
	(raptor_free_ID_list): Added, frees structure above.
	(raptor_xml_start_element_handler): Handle xml:base using
	raptor_new_uri_for_xmlbase to strip/fix parts that aren't used.
	(raptor_start_element_grammar): Check for illegal rdf:ID, rdf:bagID
	and rdf:nodeID using raptor_valid_xml_ID.  Check for duplicate rdf:ID
	and rdf:bagID values using raptor_record_ID.
	Only allow parsetype "Literal", "Resource" and "Collection", not
	case-equivalents.
	Check for and forbid property attributes on a literal property
	elemnent.

	* Makefile.am: Added raptor_utf8.c

	* raptor_internal.h: Export less from raptor_utf8.c

	* raptor_general.c (raptor_valid_xml_ID):
	Use raptor_unicode_is_namestartchar
	and raptor_unicode_is_namechar.

	* raptor_utf8.c: Raptor UTF-8 and Unicode support

	* tests/bad-03.rdf: Check rdf:ID and rdf:bagID values

	* tests/Makefile.am: Added bad-02 to bad-04

	* raptor_uri.c (raptor_uri_construct):
	Internal; constructs a uri-ref string from
	the parts.
	(raptor_new_uri_for_xmlbase): Ad
	(raptor_uri_resolve_uri_reference): Copy reference path across when
	reference URI has one.
	Work for path components that are >1 letter long.
	(raptor_new_uri_for_xmlbase): Added, makes a new uri from an existing
	one, suitable for xml:base (no fragment, query; path must be
	present).
	(main): Make test cases use example.org.
	Add checks for the above bugs.

	* raptor.h: Added prototype for raptor_new_uri_for_xmlbase

	* ntriples_parse.c:
	raptor_ntriples_unicode_char_to_utf8 now raptor_unicode_char_to_utf8
	raptor_ntriples_utf8_to_unicode_char now
	raptor_unicode_utf8_to_unicode_char
	(raptor_print_ntriples_string): Allow no delimiter.

	* raptor_internal.h: Added prototypes for raptor_valid_xml_ID
	Added prototypes for raptor_unicode_is_* methods.
	The ntriples_* utf8/unicode methods are now raptor_unicode_*

	* raptor_general.c (raptor_print_statement_as_ntriples):
	N-Triples escape URIs (for IRI
	compatibility).
	(raptor_validate_xml_ID): Added, checks that the syntax of attributes
	matching xml:ID are correct matching
	http://www.w3.org/TR/REC-xml-names/#NT-NCName

	* rdfdump.c: Exit 1 on error, 2 on warnings.

	* README.html: Words

2002-12-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-41.rdf, tests/ex-41.out: Add rdf:datatype test with xml:lang

	* raptor_parse.c: Don't care state about numbers

	* raptor_parse.c (raptor_xml_end_element_handler):
	Don't check for unbalanced XML; the
	XML parsers do that

	* raptor_parse.c:
	Update parser states to match http://www.w3.org/TR/rdf-syntax-grammar/
	names.  Fix comments to also match.
	rdf_syntax_terms_info - added to describe forbidden nodeEl,
	propEl, propAttr
	(raptor_forbidden_nodeElement_name,
	raptor_forbidden_propertyElement_name): Added, using above

	* rdfdump.c: Exit with code 2 if there were warnings.

	* raptor_parse.c: Zap xml:lang attr

2002-12-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in: Added raptor-config

	* Makefile.am: Added raptor-src-config

	* raptor-src-config.in: raptor-src-config source

2002-12-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_xml_start_element_handler):
	Save away the element attributes
	in an allocated array, restore the pointers later.  This allows the
	XML parser to free them correctly.
	(raptor_xml_end_element_handler): Call raptor_free_qname again to
	tidy up.
	(raptor_init_parser_rdfxml): Initialise libxml2 explicitly
	(raptor_terminate_parser_rdfxml): Added, cleaning up libxml2.

	* raptor_libxml.c (raptor_libxml_endDocument):
	free the libxml2 Doc that is created but
	never freed by the SAX methods.

	* raptor_internal.h, raptor_general.c:
	Added raptor_terminate_parser_rdfxml() for closing rdfxml parser
	factory.

2002-12-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_libxml.c (raptor_libxml_internalSubset,
	raptor_libxml_externalSubset): No return value.

	* raptor.h: Update prototype for unsigned char arg.

	* raptor_parse.c: Yet more casts, for expat XML_Char as char*

	* raptor_uri.c (raptor_free_uri): There is no return value

	* raptor_uri.c, raptor_qname.c, raptor_parse.c,
	raptor_namespace.c, raptor_general.c, raptor.h, ntriples_parse.c:
	More unsigned char to char fixes, other castings enough to make
	g++ happy.

	* raptor_parse.c, raptor_qname.c, raptor_namespace.c,
	raptor_general.c, raptor_internal.h:
	Use unsigned char for UTF-8 strings rather than char
	(That means all XML names, content, buffers)

	* raptor_parse.c: Delete HAVE_XML_SetNamespaceDeclHandler - never used
	Don't merge expat XML_Char (char) and libxml2 xmlChar (unsigned char).
	Work with unsigned char always.

	* raptor_internal.h:
	Don't merge expat XML_Char (char) and libxml2 xmlChar (unsigned char).
	Work with unsigned char always.

	* configure.in, acconfig.h:
	Delete HAVE_XML_SetNamespaceDeclHandler - never used

	* raptor_parse.c (raptor_element_has_property_attributes):
	Unused rdf_parser arg zapped.

	* raptor_parse.c (raptor_xml_parse_chunk_):
	Don't assign a negative number to size_t len, it is probably unsigned.

	* raptor_parse.c (raptor_free_element):
	Use raptor_free_uri on datatype URI

	* raptor_parse.c, raptor.h: Removed trailing ','s in enums

2002-12-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c (raptor_ntriples_string): sscanf format lx

2002-11-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html:
	Note suggestion to trim spaces around urls in lax/default mode

2002-11-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* INSTALL.html: Now works with old libxml 2.3.5 (released 2001-03-23)

	* raptor_libxml.c (raptor_libxml_init):
	Use RAPTOR_LIBXML_XMLSAXHANDLER_INITIALIZED
	to see if libxml xmlSAXHandler has an initialized field

	* configure.in: Check libxml xmlSAXHandler has initialized field
	defining RAPTOR_LIBXML_XMLSAXHANDLER_INITIALIZED if so

	* acconfig.h: Added RAPTOR_LIBXML_XMLSAXHANDLER_INITIALIZED

	* INSTALL.html: Updated supported versions

2002-11-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* win32_config.h, configure.in, rdfdump.c, raptor_uri.c,
	raptor_parse.c, raptor_libxml.c, raptor_general.c,
	ntriples_parse.c: stdarg.h is now a required header.

	* configure.in:
	Added --with-xml2-config to set location of libxml xml2-config program.

2002-11-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_xml_start_element_handler): Don't free
	raptor_free_qname(element_name) here, raptor_free_element does it.

2002-11-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in:
	Make it use expat sources if this is part of Redland, ../expat dir
	exists
	and there is no installed expat system library

	* raptor_parse.c (raptor_xml_parse_chunk_):
	Only use the libxml2 bug workaround for small
	buffers for libxml2 versions lower than 2.4.25

	* tests/Makefile.am:
	Report error status from standard rdf/xml tests, even if the answer
	was correct.

	* tests/ex-03.rdf: Remove aboutEach* and bare bagID

2002-11-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: XML parser choice

	* tests/test.out, tests/test.nt, tests/ex-11.out, tests/ex-07.out,
	raptor_parse.c, raptor_general.c, ntriples_parse.c:
	rdfs:XMLLiteral now rdf:XMLLiteral
	Add rdf:nil to allowed rdf namespace terms

	* raptor_parse.c: More error/warnings rewordings

	* raptor_parse.c:
	Remove M&S from some comments, messages.  Use RDF namespace.

	* raptor_parse.c:
	Improve warning about multiple object nodes for a property element.

2002-11-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/test.out: typo

	* tests/test.out, tests/ex-11.out, tests/ex-07.out:
	Remove xml"" tests, replacing with "foo"<...> form.

	* raptor_general.c: Remove xml"" (stage 1).
	(raptor_print_statement_detailed): Output this as a datatyped literal.
	(raptor_print_statement_as_ntriples): Output the "foo"<..> datatype
	N-Triples form.

	* ntriples_parse.c:
	Remove xml"" (stage 1).  Parsing it works but gives an error.
	Never output.
	(raptor_ntriples_generate_statement): Output "foo"<...> for xml
	literal.  Remove is_xml argument.
	(raptor_ntriples_parse_line): For XML literal (old xml""), parse,
	give an error and emit it in the datatype form.

2002-11-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* README.html: Updated after 0.9.6 release - sigh!

	* NEWS.html: fix 0.9.6 release date

	* configure.in: Bumped version to 0.9.7

	* Snapshotted raptor_0_9_6 for 0.9.6 release

	* NEWS.html, TODO.html: Updated for 0.9.6

	* raptor_parse.c:
	rdf_attr_info gains allowed_unprefixed_on_attribute to suppress
	warning.

	* libraptor.3: Updated for 0.9.6

	* tests/test.out: minor fix

	* rdfdump.1: Add -a/--assume option.

	* raptor.h: Tweak uri factory method typedefs, prefix with raptor_

	* raptor.h: raptor_start_parse_file: Made an internal method

	* raptor_general.c (raptor_start_parse_file): Made an internal method

	* tests/test.nt: minor fix

	* tests/test.out, tests/test.nt:
	Added tests for datatyped literals with/without language

	* ntriples_parse.c (raptor_ntriples_string):
	Added N-Triples datatype (^^<uri-ref>) parsing.

2002-11-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c (raptor_ntriples_generate_Statement):
	Added datatypes argument,
	will set the URI if the string is passed in.

2002-10-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: Check for rdf:datatype on property/member elements

	* tests/Makefile.am: Added ex-41

	* tests/ex-41.out, tests/ex-41.rdf: Added rdf:datatype tests

	* raptor_parse.c (raptor_free_element): Free xml:lang values

	* raptor_parse.c:
	alternatively, don't zap the pointer and let cleanup grab it.

	* raptor_parse.c:
	free rdf:about attribute value before discarding pointer.

	* raptor_general.c (raptor_parse_file): Always free filename.

	* raptor_uri.c (raptor_uri_filename_to_uri_string):
	Fix length of buffer
	for unix when file name is recalculated from getcwd().

	* raptor_namespace.c (raptor_namespaces_free):
	Don't need non-NULL context to do freeing.

	* ntriples_parse.c:
	Update to handle xml"string"@lang format (and warn about older one)

	* ntriples_parse.c:
	Update to handle "string"@lang format (and warn about older one)

	* tests/test.out, tests/test.nt, tests/rdfs-namespace.out,
	tests/rdf-schema.out, tests/ex-29.out:
	Update to "string"@lang format.

	* raptor_general.c (raptor_print_statement_as_ntriples):
	Update to "string"@lang format.
	Add datatype URI.

	* rdfdump.c (main): Init uri_string variables

	* raptor_internal.h, ntriples_parse.c, raptor_namespace.c,
	raptor_parse.c, raptor_qname.c, raptor_uri.c, raptor_general.c,
	raptor_libxml.c: LIBRDF_ macros now RAPTOR_

	* raptor_internal.h: Remove raptor_uri_init

	* raptor.h: Added raptor_uri_init

	* raptor_namespace.c:
	(main) Updates for initialising URI class in/outside redland

	* rdfdump.c: When RAPTOR_IN_REDLAND, include <librdf.h>

	* rdfdump.c: Use raptor URI calls.
	Use raptor_init/raptor_finish - now required.

	* raptor_general.c (raptor_init): Now compulsory

	* raptor_parse.c, raptor_locator.c, raptor_namespace.c:
	macro RAPTOR_URI_AS_STRING -> raptor_uri_as_string

	* raptor_internal.h: Removed macro RAPTOR_URI_AS_STRING

	* raptor_general.c: macro RAPTOR_URI_AS_STRING -> raptor_uri_as_string

	* raptor.h: Added raptor_uri_as_string and uri class method

	* raptor_uri.c (raptor_default_uri_as_string): Added
	(raptor_uri_as_string): Added, using above for default class.
	(raptor_uri_init_default_handler): Register the above

	* raptor_general.c:
	Use RAPTOR_URI_AS_STRING for getting uri string to make a filename.

	* raptor_parse.c:
	Remove uses of IS_RDF_MS_CONCEPT with raptor_uri_equals.
	Define more concepts for rdf:RDF, rdf:Description and rdf:li

	* raptor_internal.h: remove IS_RDF_MS_CONCEPT

	* raptor_qname.c: macro RAPTOR_FREE_URI -> raptor_free_uri

	* raptor_internal.h:
	delete macros RAPTOR_FREE_URI, RAPTOR_URI_TO_FILENAME

	* raptor_general.c: macro RAPTOR_FREE_URI -> raptor_free_uri
	macro RAPTOR_URI_TO_FILENAME -> raptor_uri_uri_string_to_filename
	(only use)

	* ntriples_parse.c: macro RAPTOR_FREE_URI => raptor_free_uri

	* raptor_uri.c: Add some casts now raptor_uri is a typedef for void*

	* raptor_internal.h, raptor.h: Remove more RAPTOR_IN_REDLAND prototypes

	* ntriples.h: Remove more RAPTOR_IN_REDLAND

	* rdfdump.c: Remove more RAPTOR_IN_REDLAND and old API

	* raptor_parse.c:
	Re-add DAML Collection info to rdf_content_type_info table - just
	plain luck that this was working without it.
	Add concept URIs table to rdf_xml_parser structure.
	Change concepts macros to point to the parts of that table.
	Remove most of the RAPTOR_IN_REDLAND stuff, consequently.

	* raptor_namespace.c (raptor_namespaces_free):
	Handle being called when handler/context
	empty.

	* raptor_namespace.c:
	Use raptor_namespace struct  raptor_namespace_stack field
	to get uri handler/context

	* raptor_internal.h: raptor_namespace: add raptor_namespace_stack field

	* raptor_general.c (raptor_start_parse):
	Use changed raptor_namespaces_init call.

	* raptor_namespace.c:
	Remove RAPTOR_REDLAND code and use uri_handlre/context args
	(raptor_namespaces_init): Now takes uri handler, context args.
	Initialises rdf/rdfs namespace URIs.
	(raptor_namespaces_free): Free rdf/rdfs namespace URIs.

	* raptor_general.c: Remove RAPTOR_REDLAND code
	Call raptor_namespaces_init with raptor URI handler, context

	* raptor_internal.h:
	Remove RAPTOR_REDLAND definitions and double prototypes.
	Added uri_handler, uri_context, rdf_ms_uri, rdf_schema_uri to
	raptor_namespace_stack.

	* ntriples_parse.c: Remove RAPTOR_REDLAND code

	* raptor_uri.c (raptor_uri_get_handler): Added

	* raptor.h: Added raptor-uri_get_handler.

	* raptor_uri.c: rename raptor_current_uri_* -> raptor_uri_current_*

	* raptor_uri.c:
	Use raptor_current_uri_handler, raptor_current_uri_context
	throughout.

2002-10-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c (raptor_uri_set_handler): Added, initialising the static
	variables raptor_current_uri_handler, raptor_current_uri_context.
	raptor_init_uri_class -> raptor_uri_init

	* raptor_general.c, raptor_internal.h:
	raptor_init_uri_class -> raptor_uri_init

	* raptor.h: Added raptor_uri_set_handler

	* raptor_uri.c: raptor_copy_uri -> raptor_uri_copy
	(raptor_default_uri_copy): Added
	(raptor_init_uri_default_handler): Added to re-init the default uri
	class.
	(raptor_init_uri_class): To initialise the uri class with default
	handler

	* raptor_internal.h: Declare uri class init prototypes.

	* raptor_parse.c, raptor_general.c: raptor_copy_uri -> raptor_uri_copy

	* raptor.h: raptor_copy_uri -> raptor_uri_copy
	Added uri handler func definitions.
	Added raptor_uri_handler, using above funcs

2002-10-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_qname.c: Remove only RAPTOR_IN_REDLAND use - not required.

	* raptor_uri.c: Updated copyright

	* ntriples_parse.c:
	Removed raptor_make_uri; use raptor_new_uri_relative_to_base directly.

	* raptor.h: Removed raptor_new_uri_from_base_name prototype

	* raptor.h: Removed all raptor_make_uri prototypes.
	Added prototypes for raptor_new_uri_relative_to_base,
	raptor_new_uri_from_id, raptor_new_uri_from_base_name,
	raptor-new_uri_for_rdf_concept.

	* raptor_parse.c: RAPTOR_FREE_URI (macro) to raptor_free_uri (method)
	Removed raptor_make_uri; use raptor_new_uri_relative_to_base directly.
	Removed raptor_make_uri_from_id: use raptor_new_uri_from_id directly
	Use raptor_new_uri_for_rdf_concept

	* raptor_uri.c: Typo.
	Removed raptor_make_uri; use raptor_new_uri_relative_to_base directly.
	(raptor_default_new_uri_for_rdf_concept,
	raptor_new_uri_for_rdf_concept): Added to get URI of rdf:thing

2002-10-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c (raptor_default_new_uri_relative_to_base,
	raptor_new_uri_relative_to_base):
	Added
	(raptor_new_uri_from_id): Added, was make_uri_from_id
	(raptor_new_uri_from_base_name): Added, was make_uri_from_base_name

	* raptor.h: Added new uri methods, soon-to-be old make_uri_* ones

	* raptor_internal.h: Move uri calls to raptor.h

	* raptor_parse.c:
	Remove unused rdf_parser argument of raptor_make_uri_from_id calls.

	* raptor_uri.c (raptor_make_uri_from_id):
	Remove unused rdf_parser argument

	* raptor_uri.c:
	Start of skeleton code for URI class, along with default methods.
	(raptor_default_new_uri, raptor_new_uri): Added
	(raptor_default_new_uri_from_uri_local_name,
	raptor_new_uri_from_uri_local_name): Added
	(raptor_default_free_uri,raptor_free_uri): Added
	(raptor_default_uri_equals, raptor_uri_equals): Added
	(raptor_make_uri, raptor_make_uri_from_id,
	raptor_make_uri_from_base_name):Moved from raptor_general.c

	* raptor_general.c: Move raptor_make_uri, raptor_make_uri_from_id,
	raptor_make_uri_from_base_name to raptor_uri.c

2002-10-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_xml_parse_terminate):
	Moved all of raptor_xml_parse_clean
	here, deleted it.

	* rdfdump.c: Updated to newest calling API - no special ntriples calls.

	* raptor_general.c, raptor.h: Tweak raptor_new_parser prototype.

	* libraptor.3: Updated to describe features

	* libraptor.3: Updated for shared parser core api

	* raptor_parse.c: Add raptor_xml_parser here - private struct.

	* raptor_internal.h: Moved raptor_xml_parser to private file.

	* raptor_general.c: Tidy raptor_new old api note.

	* ntriples.h: Updated ntriples parser to new registering API.

	* ntriples_parse.c: Converted to the new factory-based API.
	raptor_ntriples_parser_context (and struct version _s) now allocated
	by main parser code.
	Use raptor_parser for most methods and calls.
	(raptor_ntriples_parse_init, raptor_ntriples_parse_terminate): Added
	(raptor_ntriples_new): Replaced with wrapper around raptor_new_parser("ntriples").
	(raptor_ntriples_free): Replaced with wrapper around raptor_free_parser
	(raptor_ntriples_set_error_handler, raptor_ntriples_set_fatal_error_handler,
	raptor_ntriples_set_statement_handler, raptor_ntriples_parser_error,
	raptor_ntriples_parser_fatal_error, raptor_ntriples_parse_file):
	Replaced with wrappers around general methods.
	(raptor_ntriples_parse_chunk): Renamed from raptor_ntriples_parse
	(raptor_ntriples_parse_start): Added from parts of old
	raptor_ntriples_parse_file.
	(raptor_ntriples_parser_register_factory): Added to register this
	with the main system.
	(raptor_init_parser_ntriples): Added to register this module.

2002-10-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_internal.h:
	Moved raptor_parser_s here, for use across the library.
	Lots of rearranging and reordering to move structs earlier.
	Added raptor_parser_factory_s and typedef.
	Added prototypes for factory registration calls.

	* raptor_parse.c: Now uses factory and parser-specific context.
	(raptor_xml_new, raptor_xml_free, raptor_xml_parse_init): Moved most
	code to raptor_new_parser, raptor_free_parser, raptor_start_parse
	(raptor_xml_parse_init_file): Gone.
	Renamed to match factory methods - raptor_xml_parse_terminate.
	(raptor_parse_file): Moved to raptor_general.c
	(raptor_xml_parser_register_factory): Added, for registering factory.
	(raptor_init_parser_rdfxml): Register parser type "rdfxml".

	* raptor_general.c:
	Added parser factory functions and use them via new API.
	(raptor_init, raptor_finish): Added to start/end raptor.
	(raptor_delete_parser_factories): Added, helper for cleanup.
	(raptor_parser_register_factory): Added, for registering parsers
	(raptor_get_parser_factory): Added, helper for finding a parser
	(raptor_new_parser): New constructor, uses factory and initialises
	only general parts of parser.
	(raptor_start_parse): New method to (re)initialise a particular
	parse.
	(raptor_start_parse_file): New method to start parsing from a
	filename.
	(raptor_parse_chunk): New method to parse content from memory.
	(raptor_free_parser): New destructor.
	(raptor_parse_file): Moved from raptor_parse.c and made general.
	(raptor_new): Old API constructor, now written over new constructor.
	(raptor_free): Old API destructor, now just calls new destructor.
	(raptor_set_world): Temporary redland support.

	* raptor_namespace.c (raptor_namespaces_free):
	Zap top of stack when done, so
	can work when called multiple times.

	* raptor.h: Added raptor_init(), raptor_finish()
	Deprecate raptor_new(), raptor_free().
	Added raptor_new_praser(), raptor_free_parser(),
	raptor_start_parser(), raptor_start_parse_file(), raptor_parse_chunk()
	Temporarily use raptor_set_redland_world.

2002-10-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Added raptor_general.c

	* raptor.h: raptor_print_statement_detailed: Now public.

	* raptor_internal.h, raptor_parse.c, raptor_general.c:
	Split general parsing routines into raptor_general.c leaving
	the rdf/xml parsing specific parts in raptor_parse.c.
	The general raptor_parser structure moved to raptor_internal.h
	leaving a new raptor_xml_parser for raptor_parse.c [rdf/xml].

2002-10-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/test.html, tests/test.svg: Embedded rdf:RDF tests

	* raptor_general.c, raptor_parse.c:
	Call dummy (length calculating) vsnprintf call with a 1-byte buffer
	rather than NULL - OSX seems unhappy with that.
	Try to get rdf:RDF scanning working by adding at_grammar_start check
	rather than apply at all state unknown points.

2002-09-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am:
	Split the checks into classes; ex-19.rdf is for when rdf is assumed
	since it ommits rdf:RDF, and hence is not really rdf/xml.

	* rdfdump.c: Added -a,--assume to set feature assume_is_rdf

	* raptor_general.c, raptor_parse.c: Added rdf:datatype built in.
	Literal datatype URI stored in containing property element.
	Added feature_assume_is_rdf to make rdf:RDF optional.
	(raptor_generate_statement): Add literal datatype URI argument.
	(raptor_xml_parse_chunk_): Return parser errors in initial XML_Parse
	correctly - check if it happens even if end of data.  Similarly for
	libxml's xmlParseChunk.
	(raptor_set_feature): Added feature assume_is_rdf
	(raptor_print_statement_detailed): Added literal datatype URI
	printing.
	(raptor_process_property_attributes): Warn about unqualified
	(property) attributes, don't try to process them.
	(raptor_start_element_grammar): Added feature assume_is_rdf
	splitting scanning for rdf:RDF (feature scanning) and ignoring it
	(feature assume)

	* raptor_qname.c (raptor_new_qname):
	Don't die on non-namespaced XML; could be used in
	skipping or other processing.

	* raptor.h: added assume_is_feature
	datatypes built in
	raptor_print_ntriples_string now returns an int

	* LICENSE.html: Tidy intro, update dates

	* ntriples_parse.c: change anon->bnodeid
	Add ASCII rather than is* locale-tests and validate bnodeIDs with
	the macros
	(parse_ntriples_string): Check for invalid ASCII chars.
	Tidy error reporting for end of line.
	(raptor_ntriples_parse_line): Add validation of bnodeIDs
	(raptor_ntriples_parse_file): Comments
	(raptor_print_ntriples_string): Handle failure, add a return code

	* ntriples.h: change anon->bnodeid

	* configure.in: datatypes built in now

	* Makefile.am: Clean the test programs

2002-09-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am:
	Restore rule to make librdf.la for when embedded in Redland

	* TODO.html: remove duplicate bagID bug

	* TODO.html: CDATA works with libxml now

	* raptor_libxml.c (raptor_libxml_init):
	Enable handling of cdata blocks -
	<![CDATA[...]> by registering callback to raptor_xml_cdata_handler

	* tests/ex-40.out: Fix node

	* tests/Makefile.am: Added ex-40

	* tests/ex-40.out, tests/ex-40.rdf: Check XML CDATA sections

	* Makefile.am:
	dist-hook added to copy pre-built README and NEWS to release

2002-09-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_namespace.c (raptor_namespace_new):
	Fix debug message to report no URI for namespace.

	* raptor_namespace.c (raptor_namespace_new):
	Make xmlns="" work when compiling inside Redland.

2002-09-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_xml_parse_chunk_):
	For libxml, don't pass in filename to
	xmlCreatePushParserCtxt, we may not always have one.
	For lbixml, return correctly from initial parsing.
	(raptor_xml_parse_chunk): Add docucomments.
	(raptor_parse_file): Terminate loop on end of file as well as error.

	* Makefile.am:
	Added REDLAND_LIBS to raptor_namespace_test to make it work inside redland

2002-09-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: daml:collection fixed

	* raptor_parse.c (raptor_parse_file): Split into:
	raptor_xml_parse_init, raptor_xml_parse_init_file,
	raptor_xml_parse_clean and raptor_xml_parse_chunk to allow more
	flexible APIs.
	(raptor_xml_parse_chunk_): Added, doing the main work of
	raptor_xml_parse_chunk but without error checking.
	(raptor_xml_parse_handle_errors): Added to process errors from an XML
	parser during parsing.

	* raptor_namespace.c: Make it work inside redland too.
	Fix standalone tests inside redland.

2002-09-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_internal.h:
	Moved namespace and qname definitions and prototypes here from
	raptor_parse.c

	* Makefile.am: Added raptor_namespace.c raptor_qname.c

	* raptor_parse.c:
	Moved namespace code to raptor_namespace.c, qname code to
	raptor_qname.c and renamed raptor_ns_map, raptor_ns_na,e
	to match.

	* raptor_qname.c: Raptor XML qname

	* raptor_namespace.c: Raptor XML namespace classes

2002-09-01  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: Use updated LIBRDF_RS URI names

	* raptor_parse.c:
	Added rdf:parseType="Collection" after daml:collection code

	* tests/Makefile.am: Added test ex-39 for parseType Collection

	* tests/ex-39.out, tests/ex-39.rdf: rdf:parseType="Collection" test

	* raptor_parse.c:
	Change daml:Collection, daml:* comments to Collection, rdf:List etc.

2002-08-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_end_element_grammar):
	Generate rdf:nodeID, store in id, not
	URI field.
	Rearrange three calls of raptor_process_property_attributes into one.

	* tests/Makefile.am:
	Use ECHO_N and ECHO_C to do portable echo without newline

	* configure.in:
	Pass on echo pre/postfix args needed for echoing without a newline

	* tests/Makefile.am:
	Instead of ignoring warnings, make make ignore exit codes from rdfdump

	* tests/Makefile.am: Ignore warnings (for now) in tests

	* tests/Makefile.am: Remove RDF_TEST_ANSWER_FILES - not used

	* raptor_parse.c (raptor_start_element_grammar):
	Don't copy URIs from daml:collection
	to the contained nodes.

	* tests/ex-34.out: Now correct.

2002-08-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added ex-38

	* tests/ex-38.rdf, tests/ex-38.out: Test daml:Collection with rdf:ID

	* tests/ex-37.out: switch order again

	* raptor_parse.c (raptor_element_has_property_attributes):
	Check for rdf: properties
	too

	* tests/ex-37.out: Correct order, nodes in result

	* tests/ex-37.out, tests/ex-37.rdf:
	rdf:type attribute on empty property

	* tests/Makefile.am: Added ex-37

2002-08-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: Fixed empty daml:Collection handling

	* raptor_uri.c: Minor strcat/strcpy optimisation

	* tests/ex-34.rdf: Renamed nodes so prop2 goes with node2 etc.

	* tests/ex-34.out: renamed genids to more match output

	* tests/ex-35.out, tests/ex-35.rdf, tests/ex-36.out, tests/ex-36.rdf:
	Added more daml:Collection checks

	* tests/ex-24.out: output order changed, same triples

	* tests/Makefile.am: Added ex-35, ex-36 for more daml:Collection checks

	* tests/ex-12.out: output order changed, same triples

2002-08-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: removed fn not used

	* raptor_parse.c: Update xml namespaces comment with NE05 errata

	* raptor_parse.c:
	Removed use of obsolete object_is_literal statement field
	Added rdf datatypes test code

	* ntriples_parse.c:
	Removed use of obsolete object_is_literal statement field

	* raptor.h: Add statement object datatype uri

	* configure.in: Add rdf datatypes test flag --enable-rdf-datatypes

	* acconfig.h: Add rdf datatypes test flag

2002-08-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: Updates: OSX compiling works (from packaged sources)
	Still works with latest expat (1.95.2), libxml (2.4.23)

2002-08-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c (raptor_uri_uri_string_to_filename):
	Freeing wrong things

	* ntriples_parse.c, raptor_parse.c, raptor_internal.h:
	Remove RAPTOR_URI_AS_FILENAME

	* raptor.h: Added raptor_uri_is_file_uri

	* configure.in: Added limits.h check

	* raptor_internal.h: Added raptor_strncasecmp

	* raptor_uri.c (raptor_uri_is_file_uri): Added.

	* Makefile.am: Added strcasecmp_test

	* strcasecmp.c (raptor_strncasecmp): Added
	(assert_strcasecmp, assert_strncasecmp): Added for testing.
	(main) Added to run tests

	* raptor_uri.c:
	(raptor_uri_filename_to_uri_string); For unix filename "foo", get dir
	and name it "/dir/foo".
	(main): Check above works using /tmp dir - warn if can't chdir(/tmp)

	* raptor_internal.h:
	Replaced raptor_file_uri_to_filename with aptor_file_uri_to_filename

	* raptor_parse.c, ntriples_parse.c: Removed raptor_file_uri_to_filename

	* raptor_uri.c (raptor_uri_filename_to_uri_string, raptor_uri_uri_string_to_filename): 
	fix unix relative file file:foo
	and bad win32 authority check.
	(main): Check unix foo/file:foo works

	* raptor.h: Added raptor_uri_filename_to_uri_string and
	raptor_uri_uri_string_to_filename

	* raptor_uri.c (raptor_uri_filename_to_uri_string):
	Added for filename to file: URI
	for win32 and unix.
	(raptor_uri_uri_string_to_filename): Added for file: URI to filename
	for win32 and unix.
	(assert_filename_to_uri,assert_uri_to_filename): Added for regression testing.
	(main): Tests for win32 / unix filename / file:URIs

2002-08-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* INSTALL.html: Added some more xml library versions

	* raptor_parse.c: Remove a lot of raptor_update_document_locator calls
	and add them to the start of several functions.
	Replace some expat-specific stuff with general calls.

	* raptor_parse.c:
	Add raptor_update_document_locator calls before every parser error
	or warning.
	(raptor_expat_update_document_locator): Added.

	* raptor_internal.h: Export raptor_libxml_update_document_locator
	Export raptor_expat_update_document_locator
	Export raptor_update_document_locator

	* raptor_libxml.c (raptor_libxml_update_document_locator):
	Now not static.
	Remove column numbers - they seem to be total fiction.

	* raptor_locator.c (raptor_update_document_locator): Added.

	* raptor_parse.c (raptor_xml_cdata_handler):
	Allow to be ignored when there is no
	element (XML very damaged)

	* rdfdump.c: Tidy output formatting

	* raptor_libxml.c:
	Delete extra '\n' at end of XML parsing messages; that's up to the
	app to add.

	* raptor_parse.c: Removed some \n-s from warning/error messages

	* raptor_locator.c (raptor_format_locator):
	Don't count \0 in buffer size.

	* Makefile.am: Added raptor_locator.c

	* raptor.h: Added raptor_format_locator

	* raptor_locator.c: Raptor parsing locator functions

	* raptor_parse.c: Moved raptor_print_locator to raptor_locator.c

	* rdfdump.c:
	Updated for raptor error handlers passed on as strings, not va_list

	* ntriples_parse.c: raptor errors passed on as strings, not va_list
	(raptor_ntriples_parser_error,
	raptor_ntriples_parser_fatal_error): Turn va_list into a string.

	* raptor_parse.c: raptor errors passed on as strings, not va_list
	(raptor_parser_fatal_error_varargs,
	raptor_parser_error_varargs,
	raptor_parser_warning_varargs): Turn va_list into a string.

	* raptor.h: raptor errors passed on as strings, not va_list

2002-08-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Add LTLIBOBJS to raptor library, not rdfdump

	* configure.in: Set LIBOBJS and LTLIBOBJS

	* configure.in:
	Check for strcasecmp, stricmp or use compatibility version

	* raptor_internal.h:
	Define raptor_strcasecmp to library routine, or leave alone for
	compatibility function.

	* Makefile.am: Added @LIBOBJS@
	and strcasecmp.c

	* strcasecmp.c: strcasecmp compatibility

	* raptor_parse.c:
	strcasecmp now raptor_strcasecmp, will be defined to right function

	* win32_config.h:
	Don't use macros for strcasecmp; now handled generally

	* Makefile.am:
	Added raptor_internal.h, win32_config.h to noinst headers
	Added raptor_win32.c

	* raptor_win32.c: Raptor WIN32 support functions

	* win32_config.h: Raptor WIN32 hard-coded config

	* rdfdump.c: Tidying up stdlib.h, dmalloc.h includes.
	Include win32_config.h #ifdef WIN32

	* raptor_parse.c, raptor_uri.c:
	Tidying up stdlib.h, dmalloc.h includes.
	Removed stuff duplicated in raptor.h/raptor_internal.h
	Include win32_config.h #ifdef WIN32

	* raptor_libxml.c: Tidying up stdlib.h, dmalloc.h includes.
	Include win32_config.h #ifdef WIN32

	* ntriples_parse.c: Tidying up stdlib.h, dmalloc.h includes.
	Removed stuff duplicated in raptor.h/raptor_internal.h
	Include win32_config.h #ifdef WIN32

	* raptor_internal.h: Moved libxml includes, defines and structs here.
	Declared extern function prototypes for libxml interface.

	* raptor_parse.c: Use errno.h, not extern int errno
	Moved most libxml code to new raptor_libxml.c
	Moved necessary includes, defines and structs to raptor_internal.h
	Some renaming of functions; raptor_libxml* for those related to libxml
	Some functions now not static.
	Added some necessary methods for accessing raptor_parser structure
	for libxml.
	(raptor_get_locator): Added; new public method.

	* raptor.h: Added raptor_get_locator

	* ntriples_parse.c: Use errno.h, not extern int errno

	* Makefile.am: Added raptor_libxml.c

	* raptor_uri.c: Use errno.h if present

	* raptor_libxml.c: Raptor libxml functions

	* raptor_parse.c:
	Added 12 wrapper functions for libxml handlers, passing on the right
	context to them, to enable handling of entities and resolving them.
	(raptor_xml_update_document_locator): Handle if in document subset
	Changed internal raptor fatal_error, error, warning functions
	to have varargs versions that libxml can use.
	(raptor_new): Initialise new libxml handler wrappers

2002-08-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c: Set ntriples error handler

	* ntriples_parse.c: Added fatal/non-fatal error handlers/functions.
	(raptor_ntriples_set_error_handler): Added.
	(raptor_ntriples_string): Documented args; now returns failure status.
	(raptor_ntriples_parser_error): Added for non-fatal errors (bad lines).
	(raptor_ntriples_parser_fatal_error): Fix passing on va_list arguments.

	* ntriples.h: Added raptor_ntriples_set_error_handler

2002-08-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in: Add check for errno.h
	Only link dmalloc if dmalloc.h is present (maintainer mode)

	* ntriples_parse.c: Add use of errno.h if present

	* raptor_parse.c: Add use of errno.h if present
	Minor comments fix
	When rdf:Description seen, go straight to state DESCRIPTION rather
	than via OBJ

2002-08-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: Added rdf:List, rdf:first, rdf:rest (not used yet)
	Added rdf:nodeID for bnodes as subject/objects like
	rdf:about/rdf:resource

	* raptor.h: Added RAPTOR_URI_SOURCE_BLANK_ID (for rdf:nodeID)

2002-07-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in: default xml parser now libxml

	* INSTALL.html: Update --with-xml-parser docs

2002-07-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* autogen.sh: Fix use of srcdir/find

	* Makefile.am: Add -I's for compiling test programs

2002-07-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: moved Redland parser todos here

2002-07-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added ex-34

	* tests/ex-34.out, tests/ex-34.rdf:
	Test daml:collection lists with blank nodes

	* configure.in: Modify cflags to use redland srcdir not builddir

	* Makefile.am: zap 'finish' stuff

2002-07-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_end_element_grammar): Get rdf:ID working
	on empty propertyElt with rdf:parseType="Resource"

	* raptor_parse.c: Added reified raptor_identifier, changed code to
	use it for rdf:ID value Store rdf:bagID in bag raptor_identifier

	* raptor_parse.c (raptor_element_has_property_attributes):
	Created, returns true iff a
	property element has property attributes
	(raptor_start_element_grammar): For property elements, move
	handing property attributes to close of element, only then can
	the resource URI be known.
	(raptor_end_element_grammar): Update after above change.
	For property elements that are empty (empty literal), create
	a new blank node and hang the property attributes off that.

	* raptor_parse.c:
	Warn and continue when element content is seen inside a
	<propElt rdf:resource="..."/>

2002-07-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: make check sh stuff not echo

	* tests/Makefile.am: Add ex-33

	* tests/ex-33.out, tests/ex-33.rdf:
	Check properties work off node generated by empty propertyElt

2002-07-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: make check sh stuff not echo

	* tests/Makefile.am: Add ex-33

	* tests/ex-33.out, tests/ex-33.rdf:
	Check properties work off node generated by empty propertyElt

2002-07-14  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Add REDLAND_LIBS to rdfdump dependencies
	Add rule to build librdf.la if needed

2002-07-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Zap -static arg for rdfdump, seems to annoy libtool
	Pass on redland libs, cflags as necessary

	* ntriples.h: Change all LIBRDF_INTERNAL to RAPTOR_IN_REDLAND

	* rdfdump.c: Change all LIBRDF_INTERNAL to RAPTOR_IN_REDLAND
	Update to newest librdf world open/close calls

	* raptor_parse.c: Tidy - 2 includes of stdlib.h
	Change all LIBRDF_INTERNAL to RAPTOR_IN_REDLAND

	* raptor_internal.h: Lose all redland includes - for app code

	* raptor.h: Include librdf and uri headers when in Redland
	Change all LIBRDF_INTERNAL to RAPTOR_IN_REDLAND

	* configure.in:
	Define REDLAND_LIBS, REDLAND_CPPFLAGS for use when building in redland

	* raptor_parse.c: Moved debugging stuff to raptor_internal.h
	Use updated raptor includes

	* rdfdump.c: Use updated raptor includes

	* raptor_uri.c: Don't include Redland rdf_config.h
	Use updated raptor includes

	* ntriples_parse.c: Use updated raptor includes

	* raptor.h: Removed all standard includes
	Moved URI stuff to raptor_internal.h except for typedef (needed
	for prototypes)

	* raptor_internal.h: Internal raptor definitions

	* Makefile.am: Added raptor_internal.h

	* configure.in: Fix raptor in redland check.

	* ntriples_parse.c, raptor_parse.c:
	don't include redland rdf_config.h - use ours

	* configure.in, acconfig.h: added RAPTOR_IN_REDLAND

2002-07-12  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h: include stdarg.h here

	* tests/Makefile.am: Added ex-32

	* tests/ex-32.out, tests/ex-32.rdf:
	Test property attributes with rdf:resource

	* raptor_parse.c (raptor_process_property_attributes):
	Pass in an optional
	identifier to use for the resource node.

	Use that to process property attributes along with rdf:resource,
	at the close of the (empty) propertyElt.

2002-07-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_uri.c (raptor_uri_resolve_uri_reference):
	Handle base URI without a path
	such as "http://example.org"

	* Makefile.am:
	Tidy test program args +$(DEFS) to add crucial -DHAVE_CONFIG_H

	* rdfdump.c (rdfdump_error_handler): Use va_list form
	(rdfdump_warning_handler): Use va_list form

	* raptor_parse.c (raptor_xml_start_element_handler):
	Warn about unqualified rdf: attributes

	* ntriples_parse.c (raptor_ntriples_parser_fatal_error):
	now passes on va_list

	* raptor.h:
	API change: raptor_message_handler callback now takes a va_list as
	final argument

	* rdfdump.c: Make warning/error messages neater

	* rdfdump.c: Added -w - ignore warnings
	(rdfdump_warning_handler): Added
	(rdfdump_error_handler): Added
	Count warnings, errors and exit with #errors, or 128+#warnings

	* raptor_parse.c:
	When a property has multiple objects, give an error and skip the rest
	of that element

	* tests/Makefile.am: Added bad-01.rdf

	* tests/bad-01.rdf: A property must have only one node value

	* rdfdump.c:
	(rdfdump_error_handler) Added.  Exit 1 on an error, don't keep going

	* tests/Makefile.am: Fix bad test checking again

2002-07-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Added LOCAL_LIB_DIR for finish

	* Makefile.am: Fix args for compiling tests

2002-07-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Added finish target to install to lib
	Tidy up test program building

	* raptor_parse.c:
	Allow non-namespaced elements to be recognised and skipped

2002-06-30  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: typo

	* Makefile.am: Added 'make deb' target

	* tests/rdf-schema.out, tests/rdfs-namespace.out: RDFS schema answers

	* tests/Makefile.am: Fix rdfs checks

	* tests/Makefile.am: Add two RDFS schema namespaces

	* tests/rdf-schema.rdf, tests/rdfs-namespace.rdf: RDFS schemas

	* raptor_parse.c: (raptor_parser_error) Make this default to exit(1)
	(raptor_start_element_grammar): Die when a second object is tried
	to be set for a statement

	* tests/Makefile.am: Check negative tests correctly

	* autogen.sh: Add libtoolize cleanup, check and run

	* configure.in: fix AC_OUTPUT

	* Makefile.am, configure.in: Added debian dir

2002-06-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* win32/README: win32 README

	* autogen.sh: Added GNU config.* copy test

2002-06-14  cmdjb  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added bad test checking
	Added bad-00.rdf

	* tests/bad-00.rdf: Added bad test 00

	* configure.in: Added raptor-config

	* libraptor.3, rdfdump.1: Raptor manual pages

	* Makefile.am: Added raptor-config
	Added manual pages
	Make rdfdump static only for maintainer

	* raptor-config.in: Raptor configuration script

2002-06-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_generate_id):
	Hack - make genids be sequential through
	lifetime of code, not start from 1 again at parsing.

	* raptor.h: Add some RAPTOR_API defs for newer functions

	* configure.in: Use NULL for XML_ParserCreate in first check too

	* configure.in: Bumped version to 0.9.6

	* Snapshotted raptor_0_9_5 for 0.9.5 release

	* autogen.sh:
	Delete libtool generated files before running automake (which invokes
	libtoolize to do this)

	* configure.in: Remove duplicate check of stdlib.h

	* Makefile.am: Pass on -D defs when building tests

	* raptor_uri.c: Include stdlib.h for malloc

	* configure.in:
	Call XML_ParserCreate with NULL to prevent crash (seen on alpha)

	* configure.in:
	Check for required libxml function xmlCreatePushParserCtxt (libxml
	1.8.3+)

	* NEWS.html: Updated for 0.9.5 release

	* TODO.html: tidy

	* Makefile.am:
	Don't compile raptor_cc.c into library, for this release (not used
	yet).

2002-06-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added ex-31

	* tests/ex-31.out, tests/ex-31.rdf:
	Tests for rdf:li with parseType Resource

	* raptor_parse.c: Make rdf:li work with parseType resource

2002-06-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	made rdf:foo (unknown) attribute generate the statement and a warning

	* raptor_parse.c:
	Add further allowed rdf: properties (subject, predicate, object) and
	classes (Seq Bag Alt Statement Property)

2002-06-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_make_uri_from_id,raptor_make_uri):
	Fold in relative URI resolution.
	(raptor_make_uri_from_base_name): Added
	(raptor_process_property_attributes): Use latter to create rdf: names

	* configure.in: Check for stdlib.h

	* raptor_uri.c: Remove prototype => raptor.h

	* raptor.h: A little tidying.
	Export raptor_uri_resolve_uri_reference

	* raptor_uri.c: comment

	* raptor_uri.c (raptor_uri_parse): Update comments
	(raptor_uri_resolve_uri_reference): Lots more comments.  Rejigged
	structure to tidy up in one place.  Removed all static buffers.

	* tests/Makefile.am: Added ex-30

	* tests/ex-30.out, tests/ex-30.rdf:
	Tests that bare about attr works with a default ns

	* raptor_parse.c (raptor_make_namespaced_name):
	Make bare 'about' attribute (etc) work
	even when a default namespace is declared.

2002-06-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Don't pass parsetype_resource child element state to parent
	element->child_element - i.e. proto state of next child element

2002-06-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	attribute => attr to fix gcc warning about shadowing a global (?why)

	* raptor_parse.c: RBS -> RAPTOR_XML_READ_BUFFER_SIZE
	(raptor_parse_file) Added work around for some libxml versions
	failing to work when file is smaller than buffer size.

2002-05-31  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Various places: fix a bunch of casts to make g++ happy
	Replace several unsigned int i with int i when used as array index.

	* ntriples_parse.c:
	Various places: fix a bunch of casts to make g++ happy
	Replace several unsigned int i with int i when used as array index.
	(raptor_ntriples_string): Fix %c in format string
	(raptor_ntriples_unicode_char_to_utf8): Use unsigned long

2002-05-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: fix xml_language qualifier

	* tests/Makefile.am: Add ex-29

	* tests/ex-29.out, tests/ex-29.rdf:
	Test xml:lang info gets passed to output

	* raptor_parse.c (raptor_xml_end_element_handler):
	Don't pop element before doing end
	grammar, so that rdf_parser->current_element is correct during end
	grammar work.

	* raptor_parse.c, ntriples_parse.c:
	Include stdlib.h for some prototypes.

2002-05-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_end_element_grammar):
	When zapping content_cdata, always make
	length 0

2002-05-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-28.out, tests/ex-28.rdf:
	Test case for property after parseType resource property inherting
	parseType resource-ness

	* tests/Makefile.am: Added test case 28

	* raptor_parse.c (raptor_start_element_grammar):
	Don't copy the parsetype-resource
	generated node URI up to parent element

	* tests/Makefile.am: Added test case 27

	* tests/ex-27.out, tests/ex-27.rdf:
	Test case for wrong ID on 3rd parseType resource off a node

2002-05-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c: Wrap errno with #ifndef WIN32

2002-05-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Lessen some librdf compile warnings about char* and xmlChar* strings

	* raptor_parse.c (raptor_free_xml_entity): Moved earlier in code
	(raptor_xml_new_entity): Use LIBRDF_MALLOC

2002-05-07  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* acconfig.h: Added libxml xmlEntity field defs

	* configure.in: Check less libxml headers.
	If libxml main headers missing, disable library
	Check for xmlEntity fields name_length and etype

	* raptor_parse.c:
	Added new entity recording, expanding stuff for libxml
	(raptor_xml_add_entity, raptor_xml_new_entity,
	raptor_xml_entity_decl, raptor_xml_get_entity,
	raptor_xml_free_entity, raptor_xml_free_entities): Added or
	substantially updated

2002-04-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: tail_id is a char*, not a redland URI

2002-04-28  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	(raptor_new) Initialise entities table count to 0 since
	xmlCreateEntitiesTable sometimes doesn't do it.

2002-04-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* acconfig.h, configure.in, raptor_parse.c:
	renamed NEED_EXPAT/LIBXML to RAPTOR_XML_EXPAT/LIBXML so that raptor
	can be linked to apps (such as Redland) that may have both

	* configure.in:
	Added configure warning about failure of expat UTF8 BOM and how to fix.

	* configure.in: Perform expat BOM check only when a working expat found

	* raptor_parse.c, configure.in, acconfig.h:
	Rename EXPAT_ERROR_CRASH to EXPAT_NO_UTF8_BOM - expat 1.95.1
	fails on an initial UTF-8 BOM sequence.  expat 1.95.2 onwards fixes
	this.

	* acconfig.h: Added EXPAT_ERROR_CRASH

	* raptor_parse.c:
	If EXPAT_ERROR_CRASH then count XML tokens and only try to get line,
	col, byte counts after 1 token has been seen.

	* configure.in:
	Add test for expat failure in error reporting before <?xml?>

2002-04-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* INSTALL.html: Added CVS instructions, tidied and expanded

	* tests/ex-22.rdf: ex-22

2002-04-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in: Look for gnome-xml/xmlmemory.h header

	* raptor_parse.c:
	Add a bunch of stuff for libxml1 to handle adding/removing entity decls
	(raptor_xml_free_entity): Now libxml2 only
	(raptor_xml_libxml1_add_entry): Added, libxml1 only
	(raptor_xml_add_entity): Call libxml2 code or
	raptor_xml_libxml1_add_entry for libxml1
	(xmlHashLookup): Added, libxml1 only

	* tests/Makefile.am: Added ex-26

	* tests/ex-26.out, tests/ex-26.rdf:
	Test entities get expanded in attributes

	* configure.in: Look for libxml/parser.h libxml/hash.h

	* raptor_parse.c:
	For libxml, Use libxml/parser.h (v2) or gnome-xml/parser.h (v1)
	Include libxml/hash.h for v2
	Add xml entities support
	(raptor_xml_free_entity): Pulled from xmlFreeEntity
	(raptor_xml_add_entity): Pulled from xmlAddEntity (slight change to
	API)
	(raptor_xml_entity_decl): Added
	(raptor_xml_get_entity): Added
	(raptor_new): Use raptor_xml_entity_decl, raptor_xml_get_entity
	and ask for them to be called.
	(raptor_parse_file): Free entity stuff.

2002-04-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am: Added ex-25*

	* tests/ex-25.out, tests/ex-25.rdf:
	Check mixing rdf:li and rdf:_n works

	* raptor_parse.c (raptor_print_statement_detailed):
	Handle printing ordinal objects

	* raptor_parse.c (raptor_print_statement_as_ntriples):
	Handle printing ordinal objects

	* raptor_parse.c (raptor_xml_end_element_handler):
	Don't overwrite state PROPERTYELT
	with MEMBER, it will be switched over when necessary.

	* raptor_parse.c: Make unknown/other parsetypes work like Literal

2002-04-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am:
	Re-add raptor_cc.c raptor_uri.c to sources, tests, distribution

2002-03-27  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in: Bumped version to 0.9.5

	* Snapshotted raptor_0_9_4 for 0.9.4 release

	* configure.in: Added check for GNU tar

	* Makefile.am: Added TAR

	* INSTALL.html, LICENSE.html: Updated HTML.

	* README.html: Updated for 0.9.4 release
	Updated HTML.

	* TODO.html: Updated HTML.

	* NEWS.html: Added notes for 0.9.4 release
	Updated HTML.

	* NEWS.html: Tidy footer

	* Makefile.am:
	Remove raptor_cc, raptor_uri stuff from distribution for this release

	* raptor_parse.c: Or instead, add const to tail_id

	* raptor_parse.c: Remove const from idList

2002-03-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Don't compile the as-yet unused raptor_cc
	raptor_uri into the library, for now.

	* configure.in: Try to ensure -g is used in --maintainer-mode

	* raptor_parse.c: daml:collection changes Use a genid (char*) for
	storing daml:list last anon node Replace all uses of the URI with
	the id Make a typedNode inside a daml:collection generate the
	rdf:type statement Move the daml:nil generation to the parent
	property

	* TODO.html: Some more bugs in daml:collection (but others fixed)
	Noted rdf:bagID isn't complete

	* tests/Makefile.am: Added ex-24.rdf ex-24.out

	* tests/ex-12.out: Correct test result.

	* tests/ex-24.rdf, tests/ex-24.out: Added to test daml:collection
	with typed nodes inside

2002-03-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-17.out: Fix answer; <foo/> gives an empty literal

2002-03-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* TODO.html: Note xml:base and xml:lang support added

	* raptor_parse.c (raptor_generate_statement): Only process
	language for literal objects

2002-03-17  cmdjb  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c: Added xml:lang and xml:base support
	Use raptor_inscope_base_uri throughout, any time a URI is created
	in a document.
	Delete/ignore other xml* attributes when seen; XML spec governs their
	use.
	(raptor_generate_statement): Add language support.
	(make_uri_from_id): Use raptor_inscope_base_uri
	(raptor_start_element_grammar): Updated node state comments
	(raptor_inscope_xml_language): Added
	(raptor_inscope_base_uri): Added

	* Makefile.am: Added raptor_uri.c

	* raptor_uri.c: Raptor URI resolving implementation

2002-03-12  cmdjb  <Dave.Beckett@bristol.ac.uk>

	* configure.in: Added --enable-release to turn on -O2

	* configure.in: Strip -O2 from maintainer mode cflags

	* raptor_parse.c:
	Fix parseType resource (pTr) inside parseType resource.
	Don't copy up the pTr element object to parent element,
	since the pTr property is the 'parent' of the pTr object

	* tests/Makefile.am: Added ex-23

	* tests/ex-23.out, tests/ex-23.rdf:
	Added test for embedded parseType Resource

	* raptor_parse.c: Skip elements with aboutEach or aboutEachPrefix

	* tests/test.out, tests/test.nt:
	Added xml literals and lang-string literals

	* ntriples_parse.c:
	Replaced xml(...) with xml"..." throughout
	Got "string"-lang working.

2002-03-11  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_print_statement_as_ntriples):
	Updated for xml"foo" /
	xml"foo"-en N-Triples format

	* tests/ex-11.out, tests/ex-07.out:
	Updated for xml"foo" / xml"foo"-en N-Triples format

2002-03-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Added content type property_content set when content type isn't
	unknown, but known to be value of a property

	* tests/ex-22.out:
	Fixed for ordering actually generated

	* raptor_parse.c:
	Handle bare rdf attributes correctly; only check when they have no
	namespace.
	Handle sequence of description/typed node blocks by handling
	both as typed nodes and changing to description if necessary.

	* tests/ex-21.out: Correct typos

	* raptor.h:
	Removed aboutEach* identifier types

	* raptor.h:
	Added prototype for raptor_print_ntriples_string

	* ntriples_parse.c (raptor_print_ntriples_string):
	Added docu-comment

	* tests/Makefile.am: Addex ex-22

	* tests/ex-22.out:
	Fix base URI of answers

	* tests/Makefile.am:
	Made tests report pass/fail and return exit code to match this

	* tests/ex-21.out, tests/ex-22.out, tests/test.out,
	tests/ex-09.out, tests/ex-10.out, tests/ex-11.out,
	tests/ex-12.out, tests/ex-13.out, tests/ex-14.out,
	tests/ex-15.out, tests/ex-16.out, tests/ex-17.out,
	tests/ex-18.out, tests/ex-19.out, tests/ex-20.out,
	tests/22-rdf-syntax-ns.out, tests/ex-00.out, tests/ex-01.out,
	tests/ex-02.out, tests/ex-03.out, tests/ex-04.out,
	tests/ex-05.out, tests/ex-06.out, tests/ex-07.out,
	tests/ex-08.out: Test N-Triples answers

2002-03-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c:
	Added some missing prototypes.
	(raptor_ntriples_generate_statement): Added support for literal
	language, is_XML throughout.
	Generate string/XML literals.
	(raptor_ntriples_utf8_to_unicode_char): Added
	based on librdf_utf8_to_unicode_char
	(raptor_ntriples_string): Move the start pointer once the string has
	been parsed.
	Added literal language (partial), XML support (done)
	(raptor_print_ntriples_string): Added; writes a ntriples-escaped
	string, handling all escapes.  Uses
	raptor_ntriples_utf8_to_unicode_char

	* raptor_cc.gperf:
	A little strlen removal/optimising.
	Added more test cases

	* raptor.h:
	raptor_statement: Added object_literal language, is_XML flag

	* Makefile.am:
	Added raptor_cc.c, raptor_cc.gperf and unit test

	* raptor_cc.gperf:
	Added function documentation.
	Use constant pointers to constant strings
	Tidy testing messages

	* raptor_cc.gperf:
	Raptor ISO 3166 country code handling

	* raptor_parse.c (raptor_print_statement_as_ntriples):
	Start updating N-Triples output
	for xml() support and quote the literals using
	raptor_print_ntriples_string

	* raptor_parse.c:
	Removed more aboutEach, aboutEachPrefix mentions

	* raptor_parse.c:
	Generate statement for parseType resource between parent and content

	* tests/Makefile.am, tests/ex-21.rdf:
	Test that rdf: namespace prefixes work

	* tests/ex-13.rdf: Fix comment

2002-02-05  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_start_element_grammar):
	Change a series of if statements
	about state, to be based on a switch on content_type

	* raptor_parse.c (raptor_start_element_grammar):
	parseType Literal uses content_type
	XML Literal
	Add XML_LITERAL content type to be used when preserved is

	* raptor_parse.c (raptor_start_element_grammar):
	Moved property rdf:resource checking
	to end element

	* raptor_parse.c (raptor_start_element_grammar):
	FOr rdf:li properties, don't loop around state

	* raptor_parse.c (raptor_start_element_grammar):
	Use content_type not state for
	finding daml collections.

	* raptor_parse.c (raptor_start_element_grammar):
	Remove explicit checks for built-in
	container types.

	* raptor_parse.c:
	Removed old block_type comment

	* raptor_parse.c:
	Remove IN_RDF reference

	* raptor_parse.c:
	Change content_type / child_content_type when the state /
	child_state is set
	Change content_type when parseType changes.

	* raptor_parse.c (raptor_xml_cdata_handler):
	Changed to handle a few state exceptions
	and then work on a content_type basis.
	When reading a property value, if non-whitespace content is found,
	set the content type to be literal.

	* raptor_parse.c (raptor_xml_end_element_handler):
	If there is a parent, pass the last
	state of this element back up.

	* raptor_parse.c (raptor_xml_start_element_handler):
	Update literal handling to use
	element content_type.  Initialise to unknown, then from
	the value passed from the parent element if there is one.
	Use the flags of the content type to do the checks.
	Ensure that when an element is found as a property value, content
	type switches to RESOURCE to expect a resource (node).

	* raptor_parse.c:
	Added a bunch of LIBRDF_DEBUG* statements; tided output of others.

	* raptor_parse.c:
	typed_node=>typedNode

	* raptor_parse.c:
	Deleted states 6.29 (referencedItem) and 6.30 (inlineItem); now that
	rdf:li is the same as any other property

	* raptor_parse.c:
	More EMPTY=>RESOURCE; code at this stage won't work

	* raptor_parse.c:
	Added some new content types
	Uses of type EMPTY replaced with RESOURCE

	* raptor_parse.c:
	(raptor_xml_start_element_handler):
	Initialise user_data, locator inside code body; gcc3.x wasn't doing
	it in the order of declarations.

	* raptor_parse.c:
	Added RAPTOR_ELEMENT_CONTENT_TYPE_LAST to make it compile again

	* raptor_parse.c: comment tidy

	* raptor_parse.c:
	Added child_content_type to parser state

	* raptor_parse.c:
	Added rdf_content_type_info
	(raptor_element_content_type_as_string): Added

	* raptor_parse.c:
	Removed raptor_typed_node_block_type

	* raptor_parse.c:
	Include dmalloc.h (optionally) after stdlib.h - keeps some gcc3
	versions happier

2002-02-03  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am:
	Added 22-rdf-syntax-ns.rdf rdf namespace test

	* tests/22-rdf-syntax-ns.rdf:
	Added RDF namespace schema to tests

	* tests/ex-11.rdf:
	Use parseType 'Literal' (specific value) rather than 'literal' which
	just gets turned into parseType literal by the default rules.

	* tests/Makefile.am:
	Throw away stderr on make check; if it fails, I can find out by hand

2001-12-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Added dc.rdf to dist

	* dc.rdf: RDF/XML example file

	* tests/ex-20.rdf: use rdf:ID

2001-10-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in:
	Check for xmlParseFile in xml or xml2

2001-10-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/Makefile.am:
	Allow tests with empty correct results file

	* rdfdump.c:
	Check that only file: URIs are used

2001-09-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* tests/ex-19.rdf:
	Check omitted rdf:RDF works

	* tests/ex-20.rdf:
	Check rdf:ID generates right URI

	* tests/Makefile.am:
	Added ex-19, ex-20
	Generate N-Triples output with fixed base URI

	* configure.in:
	Updated for use of libtool
	Remove XML_OBJS, use LIBS for xml parser dependencies

	* Makefile.am:
	Create dynamic, static library using libtool
	Reorganised rdfdump compile.

	* raptor_parse.c (raptor_make_uri_from_id):
	Take base_uri and use it to create
	absolute URI from id.
	Update uses of above function to match changed interface.

2001-09-20  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c:
	If quiet, don't even report number of statements

	* rdfdump.c: Fix help

2001-09-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c (raptor_ntriples_string):
	A little optimising of switch cases

	* tests/test.nt:
	Added \u and \U test cases

	* ntriples_parse.c:
	Added \U and \U escapes

	* ntriples_parse.c (raptor_ntriples_unicode_char_to_utf8):
	(raptor_ntriples_string): Tidy up, in preparation for adding new
	escapes.

	* ntriples_parse.c (raptor_ntriples_unicode_char_to_utf8):
	Added,
	based on librdf_unicode_char_to_utf8
	(raptor_ntriples_string): Added, for handling \ escapes for both
	"strings" and <uri-ref>

	* tests/Makefile.am:
	Automate test checks, diffs.  Not doing proper model checks yet.

	* tests/Makefile.am:
	Add raw output files to dist

	* configure.in:
	Moved tests into tests directory

	* tests/Makefile.am:
	automakefile for tests

	* Makefile.am:
	Moved tests into tests directory

2001-09-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor.h:
	Added comments for raptor_identifier_type

2001-08-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in:
	Handle libxml v1 (xml-config) and v2 (xml2-config)
	Report libxml version found in configuring and status

	* configure.in:
	Bumped version to 0.9.4

	* Snapshotted raptor_0_9_3 for 0.9.3 release

	* configure.in:
	When choosing xml parsers, end when one found.

	* INSTALL.html:
	Updated for xml parser choosing changes
	Added N-Triples test

	* configure.in:
	Choose an xml parser from any available, --with-xml-parser selects one specifically.

	* Makefile.am:
	Use -n for invoking ntriples output; --ntriples only works when GNU
	getopt_long is around.

	* rdfdump.c:
	Add ntriples to short getopt string

	* configure.in:
	Update CPPFLAGS from xml-config when it exists and testing for
	headers.

	* NEWS.html:
	Updated for 0.9.3 release

2001-08-17  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_xml_set_document_locator):
	Capture SAX document locator
	(raptor_xml_update_document_locator): Update raptor locator with that
	info.
	Update gnome xml/libxml error and warning functions to use the above.

2001-08-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c (raptor_generate_statement):
	Handle generating reified statements
	with IDs as well as URIs etc.

	* Makefile.am: Added tests/ex-18.rdf

	* tests/ex-18.rdf:
	test rdf:Description as document element

	* raptor_parse.c (raptor_xml_start_element_handler):
	Process rdf: attributes on
	document element.
	(raptor_start_element_grammar): Handle <rdf:Description> at top level
	when <rdf:RDF> not present.

	* raptor_parse.c: Fix it again

	* raptor_parse.c:
	Fix things triggered by previous typo fix!

	* raptor_parse.c: Typo

	* configure.in:
	Bumped version to 0.9.3

	* TODO.html: Record more fixes

	* Makefile.am:
	Started adding test answer files with tests/ex-13.nt

	* tests/ex-13.nt:
	N-Triples output for tests/ex-13.rdf

	* raptor.h:
	RAPTOR_IDENTIFIER_TYPE_NONE => RAPTOR_IDENTIFIER_TYPE_UNKNOWN
	different from RAPTOR_URI_SOURCE_NOT_URI to catch uninitialisation

	* raptor_parse.c:
	RAPTOR_IDENTIFIER_TYPE_NONE => RAPTOR_IDENTIFIER_TYPE_UNKNOWN
	(raptor_print_statement_detailed): Added some debug-only tests
	(raptor_copy_identifier): Oops, copy all fields in identifier.
	Remove some void* casts no longer needed.
	When copying DAML collection URI to parent, set type, uri_source too

	* ntriples_parse.c:
	Fix for debug output - calculate length of generated terms correctly.

	* raptor.h:
	added raptor_identifier for holding (URI, ID, types etc.)
	raptor_identifier_type enum now union of raptor_subject,predicate,object_type
	removed feature RAPTOR_FEATURE_INTERPRET_CONTAINERS_AS_TYPEDNODE
	Added prototypes for raptor_identifier functions

	* rdfdump.c, ntriples_parse.c:
	Updates for change with introduction of raptor_identifier

	* tests/ex-13.rdf:
	Note results are in tests/ex-13.nt

	* raptor_parse.c:
	Major update with pervasive changes
	Added skipping state to just ignore XML content (not used yet)
	Removed seq, bag, alt, container parser FSM states.
	Added rdf:type, rdf:value support when used as attributes.
	Replaced loads of (URI, ID, literal, type) with raptor_identifier
	- still more to do
	Removed feature interpret_containers_as_typedNode - now default.
	Removed support for 'bare' XML elements - now illegal.
	Minor bug fixes found from above changes.
	(raptor_new_identifier): Added
	(raptor_init_identifier): Added
	(raptor_copy_identifier): Added
	(raptor_free_identifier): Added
	(raptor_process_property_attributes): Lots of updates to handle
	rdf:type, rdf:value and rdf:_n.

	* Makefile.am: Added tests/ex-17.rdf

	* tests/ex-17.rdf:
	test empty propertyElt off a node

	* tests/ex-01.rdf:
	Added the two empty element XML forms

	* Makefile.am: Added tests/ex-16.rdf

	* tests/ex-16.rdf:
	test rdf:value as an attribute

	* Makefile.am: Added tests/ex-15.rdf

	* tests/ex-15.rdf:
	test rdf:type as an attribute

	* tests/ex-07.rdf:
	Strictly, Literal not literal

2001-07-26  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Don't peek at current_element before it is constructed.
	For elements inside parsetype literal, pass on state to potential
	child elements.

2001-07-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* README.html:
	Move quality warning from alpha->beta

2001-07-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Updates to get daml:collection stuff working inside Redland

2001-07-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c:
	Added --output=simple | ntriples to use raptor_print_statement_as_ntriples

	* raptor.h:
	Added raptor_print_statement_as_ntriples

	* raptor_parse.c (raptor_print_statement_as_ntriples):
	Added.
	(raptor_make_uri_from_id): No longer uses base_uri.  Probably need
	to do this differently later.
	Throughout - always store uri_source in parent when copying uris up.
	Fix some mistakes in uri_source tracking.

	* ntriples_parse.c:
	Make _:name not include _: in name

	* ntriples_parse.c (raptor_ntriples_generate_statement):
	Handle _:name object stored
	as strings, not URIs.

	* raptor_parse.c (raptor_print_statement_detailed):
	Handle _:name subject, object
	stored as strings, not URIs.

	* ntriples_parse.c (raptor_ntriples_generate_statement):
	Handle _:name subject stored
	as strings, not URIs.

	* tests/test.nt:
	Added tests for all end of lines: CR and CR LF (other lines are all LF)
	Changed all subject resource names so easier to see missing results.

	* ntriples_parse.c:
	Added CR | LF | CR LF handling.
	Handle space before/after trailing .
	Various bits of tidying

2001-07-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Added tests/ex-14.rdf

	* tests/ex-14.rdf: Test that was crashing

	* raptor_parse.c:
	Store propertyElt/rdf:li resource/ID in object, not subject.

	* configure.in, Makefile.am:
	Added win32 dir to dist

	* win32/raptor.dsw, win32/raptor.plg, win32/raptortest.cpp,
	win32/raptortest.dsp, win32/Makefile.am, win32/raptor.dsp:
	win32 files

	* TODO.html:
	Updated from recent fixes, improvements.

	* Makefile.am:
	Added RDF/XML test 11-13

	* tests/ex-11.rdf, tests/ex-12.rdf, tests/ex-13.rdf:
	tests for parseType literal, resource

	* raptor.h:
	Updated after patch from Aaron Michal to provide Win32 and
	daml:collection support

	* raptor_parse.c:
	Added patch from Aaron Michal including
	1) Win32 support
	2) daml:collection support
	3) fixes to parseType literal and the raptor_format_element function
	4) Fixed passing on varargs in error, warning handlse.
	5) Various s/int i/unsigned int i/
	I also:
	Added memory cleanup for daml:collection URIs
	Fixed some fencepost errors in parseType literal string management

	* raptor_parse.c:
	Update comment to match new rdf:value

	* raptor_parse.c:
	Added rdf:value property to list of rdf_attr_names

2001-07-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* raptor_parse.c:
	Update comment to match new rdf:value

	* raptor_parse.c:
	Added rdf:value property to list of rdf_attr_names

2001-07-16  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* README.html:
	Updated for ntriples parser.

	* raptor.h:
	Make URI function prototypes public

	* ntriples_parse.c:
	Handle anonymous nodes passed back properly.

2001-07-13  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* ntriples_parse.c:
	Tidied some comments

	* Makefile.am:
	Added ntriples parser files, test file

	* rdfdump.c:
	Added ntriples support, --ntriples arg to invoke it.

	* raptor_parse.c:
	Moved raptor_uri stuff to raptor.h
	Made some uri functions public for ntriples

	* raptor.h:
	Define, use raptor_uri typedef here.
	Add prototypes for raptor_uri functions

	* ntriples.h, ntriples_parse.c:
	N-Triples parser

	* tests/test.nt: N-Triples test cases

2001-07-02  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* NEWS.html: HTML tweak

	* raptor_parse.c, raptor.spec.in, raptor.h:
	Now called raptor

        * Snapshotted raptor_0_9_2 for 0.9.2 release

	* NEWS.html:
	Updated for 0.9.2 release

	* raptor_parse.c, raptor.spec.in, raptor.h, rdfdump.c,
	configure.in, autogen.sh, acconfig.h, TODO.html, README.html,
	NEWS.html, Makefile.am, LICENSE.html, INSTALL.html:
	Now called raptor

2001-06-06  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* README.html:
	Point to TODO.html, NEWS.html, ChangeLog earlier on.

	* configure.in:
	Bumped version to 0.9.2

	* NEWS.html:
	Updated for 0.9.1 release

	* Snapshotted rapier_0_9_1 for 0.9.1 release

2001-06-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier_parse.c:
	Generate properties connecting parent nodes to contained resources
	for all parent node types

	* Makefile.am: Fix test typo2

	* Makefile.am: Fix test typo

	* Makefile.am: Renamed test files

	* tests/ex-05.rdf, tests/ex-06.rdf, tests/ex-07.rdf,
	tests/ex-08.rdf, tests/ex-09.rdf, ex-10.rdf, tests/ex-00.rdf,
	tests/ex-01.rdf, tests/ex-02.rdf, tests/ex-03.rdf,
	tests/ex-04.rdf: Test RDf/XML files

	* rapier_parse.c:
	Fixed some missing frees for IDs, bagIDs
	Containers now return resource to parent properties.

	* configure.in:
	Fix XML_SetNamespaceDeclHandler detection when using expat sources

	* configure.in:
	One more return(0); added to AC_TRY_RUN

	* configure.in:
	Updated configure for better expat, libxml detection

	* TODO.html: More todo.

	* Makefile.am: Run ./rdfdump

	* rdfdump.c: Count the statements

	* rapier.h: Added rapier_uri_source

	* rapier_parse.c:
	Changed qname to local_name throughout.
	(rapier_process_property_attributes): Pass in the element with the
	attributes and the element that contains the resource
	Added FIXMEs about ID attribute on empty propertyElt.

2001-03-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier_parse.c:
	Replaced internal fields with more evocative names (subject_uri,
	predicate_uri, object_uri)
	Added rapier_uri_source for every URI so can follow URI provenance.
	Pass the URI provenance to the generation of statements
	Lots of bug squashing for tests ms_4.1_1.rdf (too many statements)
	and ms_7.4_2.rdf (too few, parseType resource)

2001-03-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier_parse.c:
	Added a cast for c++

2001-02-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier_parse.c:
	More parseType literal buffer length overruns fixed.

2001-02-21  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier.h:
	Added librdf_world support when inside Redland

	* rapier_parse.c:
	Added librdf_world support when inside Redland
	(rapier_format_element): Count length of literal XML better -
	correctly?

2001-02-18  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier_parse.c (rapier_parse_file):
	Catch more conditional filename deallocs

	* rapier_parse.c:
	Split RAPIER_URI_AS_FILENAME into _TO_FILENAME versions, dealloc
	resulting string when using _TO_ version.

2001-02-09  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* README.html:
	Moved bugs to separate page.

	* TODO.html: Rapier todo/bugs

2001-02-04  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* LICENSE.html:
	Specify particular versions of licenses.

	* Many files:
	Change license boilerplate

2001-01-25  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier.h:
	Prototype changes to use Redland URI objects (when available) for
	public functions and locators.

	* rapier_parse.c:
	Changes to use Redland URI objects (when available) for public
	functions and locators.

	* rapier.h:
	Updated for new prototypes.

	* rapier_parse.c (rapier_new):
	No args
	(rapier_parse_file): Take rapier_uri pointers.

	* rdfdump.c:
	Fixed base URI handling, updated to new rapier_new api
	Added -r, --replace-newlines for replacing newlines with spaces in literals
	Added -q, --quiet for less messages.

	* rapier_parse.c:
	Add child_uri field to pass down to child nodes and use it when
	rdf:resource used on propertyElts (not rdf:li)
	inc rdf_attr_count for non RDF M&S attribtues
	When ID seen on propertyElt, refify.  But what to do with bagID then?
	Fill in many missing bag_uri references when generating statements

2001-01-24  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* configure.in:
	Define RAPIER_INTERNAL here

	* rapier_parse.c:
	Fixes for integration with Redland

2001-01-23  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c, configure.in, acconfig.h:
	Added test for needing optind declaration (portability)

	* rapier_parse.c:
	s/namespace/nspace/ to make compilable with c++
	Added qname_length and value_length to rapier_ns_name and use them to
	reduce number of strlen()s.
	Added some more casts for c++, especially near LIBRDF_MALLOC

	* configure.in:
	Bumped version to 0.9.1

2001-01-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Snapshotted rapier_0_9_0 for 0.9.0 release

	* configure.in:
	Try to detect and use old and new installed expat libs

	* configure.in:
	Try a better way to get correct expat headers

	* rdfdump.c: Use HAVE_GETOPT_H

	* configure.in:
	Test for getopt.h (for rdfdump)
	Test for expat.h, xmlparse.h - expat options.

	* rapier_parse.c:
	Use HAVE_EXPAT_H and HAVE_XMLPARSE_H

	* configure.in:
	Added fatal error if no XML parser found.

	* Makefile.am:
	Add rapier.spec.in to dist

	* rapier.spec.in: RPM spec

	* configure.in:
	Made first version 0.9.0

	* rdfdump.c: Tidy comment.

	* NEWS.html, LICENSE.html, INSTALL.html:
	Updated style, preparing for release

	* README.html:
	Updated features, todo, preparing for release.

	* rapier_parse.c: Tidy comments.

	* rapier.h:
	Changed prototype of container test function

	* rdfdump.c:
	Fix error message formatting.

	* rapier_parse.c:
	Major updates from 2001-01-21:
	parseType literal works mostly.
	Added reification.
	Fixed some compile-with-Redland problems
	Made use of more Redland URI concepts
	(rapier_generate_property): Removed - now use
	rapier_generate_statement or:
	(rapier_generate_named_statement): Added - handles statements with
	predicates that can be either XML names or namespaced names.

2001-01-19  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Tidy cflags

	* configure.in:
	Made version a lot bigger; alpha quality.
	Added configurable expat/libxml choice
	Tidy cflags

	* config.h.in: Shouldn't be in CVS

	* NEWS.html, LICENSE.html, INSTALL.html, README.html:
	First version.

	* rapier_parse.c:
	Mostly working except for - reification (ignored),
	rdf:li as propertyType doesn't work,
	parseType literal not supported.
	Little testing.

2000-12-15  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rdfdump.c, rapier_parse.c, rapier.h, Makefile.am:
	Snapshot 2000-12-15

2000-12-10  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* Makefile.am: Added test files

2000-12-08  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier_parse.c (rapier_print_ns_name):
	Only compile when debugging.
	Put LIBRDF_DEBUG2 around some debugging statements.

2000-11-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier.h:
	Changed some interfaces slightly.
	Added defines when not linked with Redland.

	* rdfdump.c:
	Made work when compiled with Redland.
	Added options via getopt/getopt_long and usage.

	* rapier_parse.c:
	Added general container support and callback.
	Made work with Redland librdf_uri and concepts when used inside
	Redland.
	Tidied some function declarations.
	Split some super-long functions into two - 1) xml parsing 2) rdf
	grammar

2000-11-29  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* rapier.h:
	Changed some interfaces slightly.
	Added defines when not linked with Redland.

	* rdfdump.c:
	Made work when compiled with Redland.
	Added options via getopt/getopt_long and usage.

	* rapier_parse.c:
	Added general container support and callback.
	Made work with Redland librdf_uri and concepts when used inside it.
	Tidied some function declarations.
	Split some super-long functions into two - 
	  1) xml parsing
	  2) rdf grammar

2000-11-22  Dave Beckett  <Dave.Beckett@bristol.ac.uk>

	* acconfig.h, AUTHORS, autogen.sh, config.h.in, configure.in,
	.cvsignore, INSTALL.html, LICENSE.html, Makefile.am, MPL.html,
	NEWS.html, rapier.h, rapier_parse.c,
	rdfdump.c, README.html: Initial import.
