<- ReadMe.html
goodViberations: Data Layer
Introduction
This document describes:
- The data structures used by the app
- The storage and retrieval of data from the app
Data structures
The data structures used by the app are based on a list of entries.
Each entry is a master, with a fixed set of fields and a detail that is a list of detail fields.
The master has the following fixed set of fields
- name: the name of the entry, the value is unique to each entry, uniqueness is case insensitive.
That is to say that a the values "a Name", "A Name", "a name" or "A NAME" are all considered to be
the same name when checking for uniqueness.
The name may not be an empty string, it must contain at least one character.
- notes: a multiline text entry, the value is not unique to each entry, it may be an empty string.
- creation date and time: a date time. The initial value is the current date and time.
- last modified date and time: a date time. The initial value is the current date and time.
- password: a password entry, the value is not unique to each entry
The master also has a list of fields, the detail fields, as described below.
Detail fields
Detail field instances relate to a specific master entry instance.
Detail fields can be considered to be a set of text fields, each field has a name and a value.
The name must be unique to the master entry instance.
Some field values reflect a data type,
and so have a syntax associated with them. For example, email must be a valid email address syntax,
url must be a valid http url syntax.
Data storage and retrieval
The list of entries are stored as xml.