* This will be based on [http://labs.o-hand.com/embedded-eds/ Embedded EDS], this way we will can directly use Evolution data, get OpenSync for free, and eventually be able to talk to a Microsoft Exchange Server using the Novell Connector.

* This will be based on [http://labs.o-hand.com/embedded-eds/ Embedded EDS], this way we will can directly use Evolution data, get OpenSync for free, and eventually be able to talk to a Microsoft Exchange Server using the Novell Connector.

* Alternatively: Go for a radically different approach: Use [http://en.wikipedia.org/wiki/Topic_Maps Topic Maps] to store PIM data, use Topic Map's integrated merging features for syncing. --[[user:xbaldauf|xbaldauf]]

* Alternatively: Go for a radically different approach: Use [http://en.wikipedia.org/wiki/Topic_Maps Topic Maps] to store PIM data, use Topic Map's integrated merging features for syncing. --[[user:xbaldauf|xbaldauf]]

+

** Topic Maps allow multi-way sync, storage of arbitrary data (including categories, and even a hierarchy of categories), integration of PIM data which is separated otherwise (calendar, addressbook, personal notes, representing networks who knows whom and who works for whom and on which project, ...), multiple entries for each field (e.g. multiple addresses, multiple names, multiple phone numbers, ...)

Use Cases

I would like to attach arbitrary data to a contact (AKA: custom fields)

I would like some level of integration with automatic switching of profiles. For example, it would be cool to automatically backup my personal data to my desktop PC when I get home.

I want to type the first few numbers of a phone number and be presented a list of matching contacts.

I'd rather take a person, choose home/work, choose land-line/mobile and not bother with numbers anymore. Useful when I'm on my way to meet that person, or the person has his/her birthday, i.e. the person is already listed on my screen!

I want to add a contact to multiple groups (AKA: categories)

I want to be able to send my contact info to other Openmoko devices over bluetooth

I want to be able to two-way sync all calendar, contacts (and tasks) with a GroupDAV server (e.g. Citadel) over-the-air

Constraints

(TBD)

Implementation Recommendations

This will be based on Embedded EDS, this way we will can directly use Evolution data, get OpenSync for free, and eventually be able to talk to a Microsoft Exchange Server using the Novell Connector.

Alternatively: Go for a radically different approach: Use Topic Maps to store PIM data, use Topic Map's integrated merging features for syncing. --xbaldauf

Topic Maps allow multi-way sync, storage of arbitrary data (including categories, and even a hierarchy of categories), integration of PIM data which is separated otherwise (calendar, addressbook, personal notes, representing networks who knows whom and who works for whom and on which project, ...), multiple entries for each field (e.g. multiple addresses, multiple names, multiple phone numbers, ...)

Use Cases

I would like to attach arbitrary data to a contact (AKA: custom fields)

I would like some level of integration with automatic switching of profiles. For example, it would be cool to automatically backup my personal data to my desktop PC when I get home.

I want to type the first few numbers of a phone number and be presented a list of matching contacts.

I'd rather take a person, choose home/work, choose land-line/mobile and not bother with numbers anymore. Useful when I'm on my way to meet that person, or the person has his/her birthday, i.e. the person is already listed on my screen!

I want to add a contact to multiple groups (AKA: categories)

I want to be able to send my contact info to other Openmoko devices over bluetooth

I want to be able to two-way sync all calendar, contacts (and tasks) with a GroupDAV server (e.g. Citadel) over-the-air

Constraints

(TBD)

Implementation Recommendations

This will be based on Embedded EDS, this way we will can directly use Evolution data, get OpenSync for free, and eventually be able to talk to a Microsoft Exchange Server using the Novell Connector.

Alternatively: Go for a radically different approach: Use Topic Maps to store PIM data, use Topic Map's integrated merging features for syncing. --xbaldauf