Re: Proposing Tracker for inclusion into GNOME 2.18



Ross Burton wrote:
On Wed, 2006-10-25 at 11:12 +0100, Jamie McCracken wrote:
With everything mapped 1:1 you can then use RDF query to search them
Why would you need a 1:1 mapping to do a query?  A query for "contacts
with an email of jamiecc blueyonder co uk" should be possible
independent of the number of email addresses a contact can have.
we need the 1:1 mapping to get/set the values. Whatever we implement we must have a unique metadata name for a particular service in order to do that otherwise getting or setting a value would be impossible.

One problem with metadata relationships is that some metadata like in the above case would only be searchable like Contact.JabberID as the actual storage would be in Contact.WorkJabberID or Contact.HomeJabberID so it might get confusing for developers if they try and get the value of Contact.JabberID which would be NULL.

A real world, physical example:

Name: Ross Burton
Email address (personal): ross burtonini com
Email address (personal): ross burton gmail com
Email address (work): ross openedhand com

How would you store this in Tracker?  If we declare that Tracker Contact
objects are *not* vCard clones I can handle dropping the personal/work
annotations for now.

would suggest:

Contact.HomeEmailAddress : ross burtoni com;ross burton gmail com
Contact.WorkEmailAddress : ross openedhand com

note using semicolon as delimiter so contents would need to be escaped for the semicolon. I guess standardising on semicolon delimiters might be a good idea?


--
Mr Jamie McCracken
http://jamiemcc.livejournal.com/




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]