pdx Interactive Mode
Index


Glossar


collection
The database is the connective link between pdr and pdx. Normally the user has no need to bother about it's internal structure. Utilizing pdr and pdx he works almost exclusively with so called collections (series of measurements). This is the concept: A collection saves all values of a concrete series of measuring, each value together with a unique timestamp:

[...]
2008-12-17 21:45:00    5.9
2008-12-18 05:00:00    6.1
2008-12-18 12:45:00    5.3
2008-12-18 18:45:00    5.3
2008-12-18 21:45:00    4.7
2008-12-19 05:00:00    5.2
2008-12-19 12:45:00    5.4
2008-12-19 18:45:00    4.7
2008-12-19 21:45:00    5.7
[...]

If there are five parameters to get measured there are also five collections needed. The user can with pdr list, create and delete such collections at any time.

Every collection has a unique name. This name is a combination from the following characters:

A...Z   a...z   _ * + ! ? ^ ° § $ / &  [ ] { } = ~

The name is case sensitive. The number of the collections and the length of their names are unlimited.

Note: Because of the use of these names in expressions what happens quite often the names of collections should be short. There's no argument against the use of single characters (especially letters).

Two collections have fix names: * and #. The first one is the so called default collection which is always numeric. The second one is the comment collection which is text. These two collections don't have to be created explicitly, they always do exist. The reason for this is their special (nameless) use in expressions. You should use both these collections for the most important use case.

Collections have each a concrete type for all of their data values. This type has to be declared during the creation of a collection. Mixed collections are not thinkable at all. There are three possible types of collections:
  • numeric  (floating point numbers with double precision)
  • ratio    (a pair of floating point numbers, intended for blood pressure)
  • text     (an unlimited character string for comments)
expression During data input over e-mail mailboxes, the command line or text files pdr interpretes so called expressions. Every text line is an expression. An expression can contain several values, so we have to declare which value should get into which collection. For doing this we use a simple syntax - the name of the collection is used as suffix:

[date] [time] (value[collection])* [; comment]

This definition means:
  • the whole line is an expression
  • date and time are optional, if there's no or only a partial specification the current date or time will be used to complete the input
  • date and time are valid for the whole expression, all following values and comments on this line get the same timestamp
  • we have 0 or more value-collection-pairs, this means a value and a collection name without any space between, the collectionname is optional, if there's no collection name the default collection is used
  • optionally the text behind a semicolon until the end of the line will be interpreted as comment
Note: if there are two values for the same collection in the same expression only the latter will be used, there can be only one value per timestamp in a collection because the timestamp is the unique key.

Date and time have a concrete, not localized syntax:

[CCYY-]MM-DD   and   hh:mm[:ss]

Examples

Given that we have the following collections in the database: l, m, n (all numeric) and anyway * and #. The following expressions would be correct:

5.2                                 (implicit use of default collection)
5.2*                               
(explicit use of default collection)
5.2 8l 7n 1m
75/123                              (collection /)
"This is a string"z
2009-08-16 12:34 5.3 9n ; this is my comment
23:45 15l
; comment only

We see that simple data input is a primary design goal even if these expressions seem to be a bit cryptic on the first view. They (look at the first three lines) can easily be entered also with the limited capabilities of mobile phones. They have to be read again only by a machine. You can also, if there's no other opportunity to transmit, put these data into a text file or write them on a sheet of paper and enter them later.

.pdrxrc
The term "configuration file .pdrxrc" is beeing used as a synonym. You can have several such files at different places overriding each other. The search order is as follows:
  1. You can have a file named .pdrxrc in the actual directory.
  2. If not the applications look into the HOME directory of the user to find a file named .pdrxrc.
  3. If this file also doesn't exist they look in ~/.config/pdrx for a file named pdrxrc (without a dot). This file is the default configuration.
Normally you will have only the last one. The first both possibilities are legacy but have still their meaning for doing tests.

rejection
pdr: it can happen that expressions can't be parsed because of incorrect spelling or other errors, for example in e-mails this leads to the problem that such a message will be processed again and again which leads to the same problem, for this reason such incorrect expressions get into the rejections, a special table in the database containing rejected data, but they can be corrected later

selection pdx: a variaty of values of a collection useable for further calculations, the selection is based upon timewise criteria and can contain gaps

timespan, time duration
a time span with any length, the smallest unit is 1s

timestamp a concrete point in history with the precision of a second, contains always date and time



pdx Interactive Mode
Index