Skip to content

Specify extended properties in own contract repo #253

@rfc2822

Description

@rfc2822

Proposal: Extended Contract

We could specify extended properties that we sync and which are not part of the Android calendar contract (or the task provider contracts) in a separate repository that can be used by others, for instance calendar apps who want to implement the fields.

Core points:

  • Separate repository so that others can import the contract as lib or submodule.
  • Versioned to make changes clear to implementing apps.
  • As client-independent as possible (no hardcoded references to DAVx5 symbols or synctool internals).
  • For properties: Contract should include parameters (including unknown parameters) so that they can be re-generated correctly.
  • Possibly for CalDAV (events) and CardDAV (contacts).
  • Probably scoped only to Android.

The only such property is currently URL, which is documented in the manual: https://manual.davx5.com/integration.html#extended-event-properties

Instead, it should be defined in the new Extended Contract and then the manual should just link to it. A calendar app that wants to implement the property can:

  1. Include the Extended Contract as dependency.
  2. Use the defined the fields etc. to view/edit the respective property.

What could be defined

  • Properties:
    • URL
    • ATTACH + attachment operations (CRUD)
  • Additional parameters for properties which are defined in Android?
  • Free/busy queries
  • more CalDAV scheduling

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions