Calendar database

The calendar database can be found in /home/user/.calendar/calendardb. The goal of this wiki is to provide enough information on the calendar database in order to implement mass modifying/adding/deleting events verifying some criterias (string match in title, locations, comments for example). It could be easy then to write a small shell script using zenity and sqlite3 to perform this tasks.

If you want to help editing this wiki and writing useful informations on fields or new scripts, feel free to copy your own database on your computer and analyze it with some tools like "SQLite Database Browser" (Linux/Debian).

Contents

Scripts

Structure

Tables & fields

ALARM

Id

Trigger

Repeat

Duration

Action

CookieId

Attach

Birthdays

Id

DayMonth

Year

Calendars

CalendarId

Name

Colour

0 dark blue
1 green
2 dark pink
3 orange
4 purple
5 yellow
6 white
7 light blue
8 light pink
9 yellow-green

IsVisible

0 not visible
1 visible

IsReadonly

0 writeable
1 not writeable

CalendarType

0 local
1 intelligent
2
3 private
4 synchronized

CalendarTune

CalendarVersion

CalendarProfile

ComponentDetails

Id

ComponentType

Class

Geo

Priority

DateStamp

Sequence

Transparency

Uid

Url

Attach

Category

Comment

Contact

Related

Resources

Percent

Completed

Components

Id

CalendarId

ComponentType

1 event
2 task
3 note
4 birthday

Flags

DateStart

<INTEGER> start date in Unix Time Format (number of seconds since 01/01/1970)

DateEnd

-1 undefined
<INTEGER> end date in Unix Time Format (number of seconds since 01/01/1970)

Summary

<TEXT> title

Location

<TEXT> location

Description

<TEXT> comments

Status

-1 undefined [event, note]
0 uncomplete [task]
1 complete [task]
<YYYY> year [birthday]

Uid

Until

-1 none [single event, task, note]
<INTEGER> end date of a recurrence [event, birthday]
2145913199 end of calendar / limit of the Unix Time Format

AllDay

0 limited time event
1 allday event

CreatedTime

<INTEGER> date of creation

ModifiedTime

<INTEGER> last date of modification

Tzid

<TEXT> time zone identifier
 :Europe/Paris France time zone

TzOffset

<TEXT> time zone offset in seconds compared to UTC
7200 France time zone offset (2 hours)

IDMAP

LocalId

ExternalId

Instances

Id

DateStart

DateEnd

Parameters

ComponentId

PropertyType

PropertyValue

ParamName

ParamValue

RECURSIVE

Id

Rrule

Rdates

Exdates

Exrule

RecurrenceId

Rtype

TIMEZONE

Location

Tzid

DtStartStd

DtStartDst

TzOffsetStd

TzOffsetDst

RRuleStd

RRuleDst

TzName

DSTFlag

Trash

ComponentId

CalendarId

ComponentType

DeletedTime

CreatedTime

XProperties

ComponentId

XPropertyName

XPropertyValue

sqlite_sequence

name

seq

Indices

IDX_ALARM

IDX_BIRTHDAYS_DATE

IDX_BIRTHDAYS_IDS

IDX_CALENDAR

IDX_COMPONENT

IDX_DETAILS

IDX_INST

IDX_RECURSIVE

IDX_TIMEZONE

IDX_TRASH