/[webpac]/trunk2/NEWS.pod
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk2/NEWS.pod

Parent Directory Parent Directory | Revision Log Revision Log


Revision 454 - (show annotations)
Wed Sep 15 22:36:23 2004 UTC (19 years, 6 months ago) by dpavlin
File size: 3437 byte(s)
new simplier implementation of WebPAC::Tree with support for recursion
(still buggy)

1 =head1 NAME
2
3 Quick overview of things that are new in v2.x of WebPAC
4
5 =head1 Changes from version 1
6
7 This document will describe new features in WebPAC version v2.x.
8 It will also attempt to document upgrade procedure to migrate
9 WebPAC v1.x installations to new v2.x.
10
11 =head2 Input file handling
12
13 Database files are now read in memory (using swap if not enough
14 memory is not available) and used from there.
15
16 Also, in-memory structure will be dumped to temporary disk
17 cache, so that unchanged databases won't be re-read (and parsed) if source
18 database hasn't changed. Nice consequence of this is that memory lookups
19 are now for free (see below).
20
21 =head2 Two-step processing of databases
22
23 In first step database is read and in-memory structure is created (or
24 read from on-disk cache if source database hasn't changed).
25
26 In second step output formats are created.
27
28 =head2 Lookups
29
30 For a start, lookup files are no longer supported. Since memory lookups
31 are newer and more powerful (for example, each key can have more than
32 one value) it's not a great loss. However, you will have to re-write
33 your C<import_xml> files if you use lookup files to use memory lookups.
34
35 Lookups B<are not> specified by C<[v900^4]> as in v1.x. Now, you have
36 to use something like C<lookup{v900^4}>. Recursive lookups are also
37 possible: C<lookup{foo:lookup{v900^4}}>.
38
39 Memory lookups (referred as lookups for new versions of WebPAC) are now
40 always available. Since whole database is available when creating
41 output linking should be much easier now.
42
43 However, using new lookups require to define lookups in different way.
44 Additional benefit of that is conditional insert into lookup using eval
45 (TODO: explain new lookup format).
46
47 If you have any lookups in your tag (e.g. <isis>lookup{v900^5}</isis>)
48 smart delimiters will be turned off (this behaviour is consistent with
49 old in v1.x if you use C<type="lookup*"> or C<filter="mem_lookup">).
50
51 =head2 Field definition in C<import_xml>
52
53 Field definitions in C<import_xml> files has changed. Previously, you could
54 write something like C<250a> and expect to get data from field B<250> subfield
55 B<a>. Now you have to write C<v250^a> which is more ISIS-like and easier to
56 parse. Don't be afraid, there is migration script in C<import_xml> to do
57 this task for you.
58
59 =head2 Templates
60
61 Templateing engine has changed. WebPAC doesn't use C<HTML::Template> anymore,
62 but Template Toolkit. TT proved to be workhorse for many tasks
63 and limitations of C<HTML::Template> forced me to move from it.
64
65 For you, the user, that will result in changes to all templates. I'm sorry
66 about this, but it had to be done.
67
68 =head2 Order of substitution
69
70 This was never really documented, so here it is now:
71
72 =over 5
73
74 =item fields
75
76 substitution of fields like C<v200^a> into values
77
78 =item lookups
79
80 next, lookups are performed (C<lookup{...}>)
81
82 =item format
83
84 then formats (defined by C<format_name=> and C<format_delimiter=>) are
85 applied. If formats have lookups, they will be performed again.
86
87 =head1 New features of version 2
88
89 Here are new features which didn't exist in version 1.
90
91 =head2 Documentation
92
93 Code is well documented using C<pod>.
94
95 =head2 Baking as opposed to cooking your WebPAC
96
97 It's possible to create searchable WebPAC completely static, from HTML and
98 JavaScript, so you can burn it on CD-ROM.
99
100 This was original reason for writing version 2 in the first place.
101
102 =head2 Tree structures for data display
103
104 See L<WebPAC::Tree>.
105
106 =cut

  ViewVC Help
Powered by ViewVC 1.1.26