as-events.pod

Fri, 28 Nov 2008 11:21:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 28 Nov 2008 11:21:08 +0100
changeset 1
d64aaa7d146f
child 3
c1941114ca88
permissions
-rw-r--r--

Fork project trunk at version 0.7.7 to maintain for future usage.
The original Cable & Wireless development team no longer exists.
The OSSP CVS repository is unavailable (cvs co ossp-pkg/as fails),
however http://cvs.ossp.org/dirview?d=ossp-pkg/as/as-gui is working.

michael@1 1 ##
michael@1 2 ## OSSP asgui - Accounting system graphical user interface
michael@1 3 ## Copyright (c) 2002-2004 The OSSP Project (http://www.ossp.org/)
michael@1 4 ## Copyright (c) 2002-2004 Ralf S. Engelschall <rse@engelschall.com>
michael@1 5 ## Copyright (c) 2002-2004 Michael Schloh von Bennewitz <michael@schloh.com>
michael@1 6 ## Copyright (c) 2002-2004 Cable & Wireless Telecommunications Services GmbH
michael@1 7 ##
michael@1 8 ## This file is part of OSSP asgui, an accounting system graphical user
michael@1 9 ## interface which can be found at http://www.ossp.org/pkg/tool/asgui/.
michael@1 10 ##
michael@1 11 ## Permission to use, copy, modify, and distribute this software for
michael@1 12 ## any purpose with or without fee is hereby granted, provided that
michael@1 13 ## the above copyright notice and this permission notice appear in all
michael@1 14 ## copies.
michael@1 15 ##
michael@1 16 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
michael@1 17 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
michael@1 18 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
michael@1 19 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
michael@1 20 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
michael@1 21 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
michael@1 22 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
michael@1 23 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
michael@1 24 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
michael@1 25 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
michael@1 26 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
michael@1 27 ## SUCH DAMAGE.
michael@1 28 ##
michael@1 29 ## as-events.pod: Plain old documentation file
michael@1 30 ##
michael@1 31
michael@1 32 =pod
michael@1 33
michael@1 34 =head1 NAME
michael@1 35
michael@1 36 B<as-events> - accounting system events document format
michael@1 37
michael@1 38 =head1 DESCRIPTION
michael@1 39
michael@1 40 The B<as-gui> application takes input from the user and may store its data to
michael@1 41 a file on the local filesystem. Among other functions, a user can enter time,
michael@1 42 amounts, remarks, and other values. This data tuple is termed an I<event>, and
michael@1 43 may either be transmitted to a B<AS> server or stored to a local file. Should
michael@1 44 it be stored to a local file, the file name is arbitrary and is shown in the
michael@1 45 title bar of B<as-gui>. Typically, the file is called F<events.as>. In most
michael@1 46 cases the postfix B<.as> is appended to the file name, although this behaviour
michael@1 47 can be turned on or off through the user preferences.
michael@1 48
michael@1 49 =head1 FILE FORMAT
michael@1 50
michael@1 51 The B<as-events> file contains ASCII text. The first line consists of an
michael@1 52 identifier to associate the file type and version. Following text may contain
michael@1 53 white space, comments, and data tuples.
michael@1 54
michael@1 55 =head1 GRAMMAR
michael@1 56
michael@1 57 B<events.as> ::= B<eventsid> B<tuplelist>
michael@1 58
michael@1 59 B<eventsid> ::= "%!AS-EVENTS-" [0-9] '.' [0-9]
michael@1 60
michael@1 61 B<tuplelist> ::= B<tuplelist> | B<tuple> | B<comment> | EMPTY
michael@1 62
michael@1 63 B<tuple> ::= B<user> B<uuid> B<crc> B<revision> B<date> B<begin> B<end> B<amount> B<account> B<remark>
michael@1 64
michael@1 65 B<comment> ::= ($#.*)
michael@1 66
michael@1 67 (* user field *)
michael@1 68
michael@1 69 B<user> ::= [a-zA-Z][a-zA-Z0-9]+
michael@1 70
michael@1 71 (* uuid field *)
michael@1 72
michael@1 73 B<uuid> ::= B<hexoctet> '-' B<hexquartet> '-' B<hexquartet> '-' B<hexquartet> '-' B<hextwelvetet>
michael@1 74
michael@1 75 (* crc field *)
michael@1 76
michael@1 77 B<crc> ::= B<hexoctet>
michael@1 78
michael@1 79 B<hextwelvetet> ::= B<hexoctet> | B<hexquartet>
michael@1 80
michael@1 81 B<hexoctet> ::= B<hexquartet> | B<hexquartet>
michael@1 82
michael@1 83 B<hexquartet> ::= B<hexdigit> | B<hexdigit> | B<hexdigit> | B<hexdigit>
michael@1 84
michael@1 85 B<hexdigit> ::= B<a-zA-Z0-9>
michael@1 86
michael@1 87 (* revision field *)
michael@1 88
michael@1 89 B<revision> ::= [0-9]
michael@1 90
michael@1 91 (* date field *)
michael@1 92
michael@1 93 B<date> ::= [0-9][0-9][0-9][0-9] '-' [01][0-9] '-' [0123][0-9]
michael@1 94
michael@1 95 (* time fields *)
michael@1 96
michael@1 97 B<begin> ::= B<timeval>
michael@1 98
michael@1 99 B<end> ::= B<endval>
michael@1 100
michael@1 101 B<amount> ::= B<timeval>
michael@1 102
michael@1 103 B<timeval> ::= B<hourval> ':' B<minuteval>
michael@1 104
michael@1 105 B<endval> ::= B<hourinc> ':' B<minuteval>
michael@1 106
michael@1 107 B<hourval> ::= [01][0-9]
michael@1 108
michael@1 109 B<hourinc> ::= B<hourval> | 2[0-4]
michael@1 110
michael@1 111 B<minval> ::= [0-5][0-9]
michael@1 112
michael@1 113 (* account field *)
michael@1 114
michael@1 115 B<account> ::= B<account> | B<accpart>
michael@1 116
michael@1 117 B<accpart> ::= B<accsep> B<acctext>
michael@1 118
michael@1 119 B<accsep> ::= '/'
michael@1 120
michael@1 121 B<acctext> ::= [a-zA-Z0-9_-]*
michael@1 122
michael@1 123 (* remark field *)
michael@1 124
michael@1 125 B<remark> ::= '"' .* '"'
michael@1 126
michael@1 127 =head1 EXAMPLE
michael@1 128
michael@1 129 A typical B<as-events> file might look like this:
michael@1 130
michael@1 131 %!AS-EVENTS-0.6
michael@1 132 harvey 0ccf1d42-743b-43df-9b5d-202451b3c26f e8f212b6 0 2002-09-30 00:00 00:00 02:00 /it/development/meeting/weekly "Code review"
michael@1 133 harvey 9c497382-ae88-4a1a-91b5-202451b3c26f c8637e9a 0 2002-09-30 00:00 00:00 00:30 /it/common/office/communication "Conference call"
michael@1 134 harvey e230eae7-367f-4c35-bee1-202451b3c26f 02cb1abb 0 2002-09-30 00:00 00:00 00:30 /sales/travel/customer "Simontech visit"
michael@1 135
michael@1 136 =head1 SEE ALSO
michael@1 137
michael@1 138 as-gui(1),
michael@1 139 as-gui.conf(5),
michael@1 140 as-accounts(5),
michael@1 141
michael@1 142 =cut

mercurial