Some updates.
[gedcom-parse.git] / README
1 The Gedcom parser library (release @VERSION@)
2 -------------------------
3 The Gedcom parser library is a C library that provides an API to applications
4 to parse and process arbitrary genealogy files in the standard gedcom format.
5
6 Its main features are:
7
8  - portable to any POSIX systems (libiconv is needed on systems that lack
9    glibc 2.2, see below)
10
11  - strict callback-based parser written in C (using lex/yacc), a C object
12    model is also available (compare to the difference between SAX and DOM
13    in XML).
14
15  - supports the Gedcom 5.5 standard fully
16
17  - supports the standard encoding formats (ASCII, ANSEL, UNICODE), but
18    extensible (via a configuration file) to other encoding formats; by
19    default ANSI is also supported.
20
21  - all strings passed from callbacks to the using program are in UTF-8 format
22
23  - internationalization of the error and warning messages
24
25  - specific parsing of date values to a calendar-neutral date system (Julian
26    days aka serial day numbers); the date parser can be called separately
27
28  - specific parsing and checking of cross-references
29
30  - specific parsing of age values
31
32  - support for writing Gedcom files
33
34  - "compatibility-mode" parsing, to allow for not-exactly-standard syntaxes
35    used by other genealogy programs; currently, compatibility is added for:
36      - ftree
37      - Lifelines 3.0.2 (not complete)
38
39 NOTE:
40  - NO BACKWARD COMPATIBILITY is guaranteed for 0.x releases !
41
42 To do list:
43  - specific parsing of other special values
44  - compatibility with other genealogy programs
45  - older/newer Gedcom standards ?
46  - modifying data
47  - writing GEDML files
48  - C++ object model
49  - ...
50
51 For more information, refer to the documentation in the doc subdirectory,
52 or to the SourceForge project web site and summary page:
53   http://gedcom-parse.sourceforge.net
54   http://sourceforge.net/projects/gedcom-parse
55
56 Also, have a look at the 'Genes' program, from which this library is a
57 spin-off, and which uses this library:
58   http://genes.sourceforge.net
59   http://sourceforge.net/projects/genes
60
61
62 Requirements:
63 ------------
64 For using the library:
65  - either glibc 2.2 or higher, or libiconv
66
67 Note:
68
69   The official libiconv package doesn't have ANSEL support, and is not
70   extensible except by modifying its source code.
71
72   There is a modified libiconv package available on the SourceForge project
73   page, which is called 'libiconv-gedcom-1.8.x', based on libiconv 1.8.
74   Install this if you need ANSEL support and you don't have glibc 2.2.
75
76 To compile the package, you'll need:
77  - gcc
78
79 To compile from the CVS sources, you'll need in addition:
80  - autoconf
81  - automake
82  - flex
83  - bison (won't work with plain yacc)
84  - perl
85
86
87 Installation:
88 ------------
89 This is simply:
90
91   ./configure
92   make
93   make install
94
95 You can also run some tests via:
96   make check
97
98
99 ###############################################################################
100 # $Id$
101 # $Name$