Service/Sync/FxSync/Developer/BrowserObjects: Difference between revisions
(Initial document description/structure) |
(add bookmark and form structures) |
||
Line 9: | Line 9: | ||
One bookmark record exists for each "bookmark item," where an item may actually be a folder or a separator. Each item will have a <tt>type</tt> that determines what other fields are available in the object. The following sections describe the object format for a given <tt>type</tt>. | One bookmark record exists for each "bookmark item," where an item may actually be a folder or a separator. Each item will have a <tt>type</tt> that determines what other fields are available in the object. The following sections describe the object format for a given <tt>type</tt>. | ||
=== | ==== bookmark ==== | ||
This describes a regular bookmark that users can click to view a page. | |||
<b>title</b> <i>string</i>: name of the bookmark | |||
<b>bmkUri</b> <i>string</i> uri of the page to load | |||
<b>description</b> <i>string</i>: extra description if provided | |||
<b>loadInSidebar</b> <i>boolean</i>: true if the bookmark should load in the sidebar | |||
<b>tags</b> <i>array of strings</i>: tags for the bookmark | |||
<b>keyword</b> <i>string</i>: alias to activate the bookmark from the location bar | |||
<b>parentName</b> <i>string</i>: name of the containing folder | |||
<b>predecessorid</b> <i>string</i>: GUID of the item before this (empty if it's first) | |||
<b>type</b> <i>string</i>: "bookmark" | |||
=== | ==== microsummary ==== | ||
[https://developer.mozilla.org/en/Microsummary_topics Microsummaries] allow pages to be summarized for viewing from the toolbar. This extends <tt>bookmark</tt>, so the usual <tt>bookmark</tt> fields apply. | |||
<b>generatorUri</b> <i>string</i>: uri that generates the summary | |||
<b>staticTitle</b> <i>string</i>: title to show when no summaries are available | |||
<b>title</b> <i>string</i>: name of the microsummary | |||
<b>bmkUri</b> <i>string</i> uri of the page to load | |||
<b>description</b> <i>string</i>: extra description if provided | |||
<b>loadInSidebar</b> <i>boolean</i>: true if the bookmark should load in the sidebar | |||
<b>tags</b> <i>array of strings</i>: tags for the bookmark | |||
<b>keyword</b> <i>string</i>: alias to activate the bookmark from the location bar | |||
<b>parentName</b> <i>string</i>: name of the containing folder | |||
<b>predecessorid</b> <i>string</i>: GUID of the item before this (empty if it's first) | |||
<b>type</b> <i>string</i>: "microsummary" | |||
=== separator === | ==== query ==== | ||
Place queries are special bookmarks with a place: uri that links to an existing folder/tag. This extends <tt>bookmark</tt>, so the usual <tt>bookmark</tt> fields apply. | |||
<b>folderName</b> <i>string</i>: name of the folder/tag to link to | |||
<b>title</b> <i>string</i>: name of the query | |||
<b>bmkUri</b> <i>string</i> place: uri query | |||
<b>description</b> <i>string</i>: extra description if provided | |||
<b>loadInSidebar</b> <i>boolean</i>: true if the bookmark should load in the sidebar | |||
<b>tags</b> <i>array of strings</i>: tags for the query | |||
<b>keyword</b> <i>string</i>: alias to activate the bookmark from the location bar | |||
<b>parentName</b> <i>string</i>: name of the containing folder | |||
<b>predecessorid</b> <i>string</i>: GUID of the item before this (empty if it's first) | |||
<b>type</b> <i>string</i>: "query" | |||
==== folder ==== | |||
Folders contain bookmark items like bookmarks and other folders. | |||
<b>title</b> <i>string</i>: name of the folder | |||
<b>parentName</b> <i>string</i>: name of the containing folder | |||
<b>predecessorid</b> <i>string</i>: GUID of the item before this (empty if it's first) | |||
<b>type</b> <i>string</i>: "folder" | |||
==== livemark ==== | |||
[https://developer.mozilla.org/en/Using_the_Places_livemark_service Livemarks] act like folders with a dynamic list bookmarks, e.g., a RSS feed. This extends <tt>folder</tt>, so the usual <tt>folder</tt> fields apply. | |||
<b>siteUri</b> <i>string</i>: site associated with the livemark | |||
<b>feedUri</b> <i>string</i>: feed to get items for the livemark | |||
<b>title</b> <i>string</i>: name of the livemark | |||
<b>parentName</b> <i>string</i>: name of the containing folder | |||
<b>predecessorid</b> <i>string</i>: GUID of the item before this (empty if it's first) | |||
<b>type</b> <i>string</i>: "livemark" | |||
==== separator ==== | |||
Separators help split sections of a folder. | |||
<b>pos</b> <i>string</i>: position (index) of the separator | |||
<b>parentName</b> <i>string</i>: name of the containing folder | |||
<b>predecessorid</b> <i>string</i>: GUID of the item before this (empty if it's first) | |||
<b>type</b> <i>string</i>: "separator" | |||
== forms == | == forms == | ||
Form data is used to give suggestions for autocomplete for a HTML text input form. One record is created for each form entry. | |||
<b>name</b> <i>string</i>: name of the HTML input field | |||
<b>value</b> <i>string</i>: value to suggest for the input | |||
== history == | == history == |
Revision as of 22:18, 5 February 2010
Once an encrypted Weave Basic Object's payload is decrypted using Weave Crypto, the result is a cleartext JSON string. Each collection can have its own object structure to store data that it needs to reconstruct the item on the client.
This document describes the current format of the objects for each collection. Typically, one record corresponds to one item, e.g., a bookmark, and the object formats have a fixed list of keys for simple key/value string pairs.
The following sections, named by the corresponding collection name, describes the various object formats and how they're used. Note that object structures may change in the future and may not be backwards compatible.
bookmarks
One bookmark record exists for each "bookmark item," where an item may actually be a folder or a separator. Each item will have a type that determines what other fields are available in the object. The following sections describe the object format for a given type.
bookmark
This describes a regular bookmark that users can click to view a page.
title string: name of the bookmark bmkUri string uri of the page to load description string: extra description if provided loadInSidebar boolean: true if the bookmark should load in the sidebar tags array of strings: tags for the bookmark keyword string: alias to activate the bookmark from the location bar parentName string: name of the containing folder predecessorid string: GUID of the item before this (empty if it's first) type string: "bookmark"
microsummary
Microsummaries allow pages to be summarized for viewing from the toolbar. This extends bookmark, so the usual bookmark fields apply.
generatorUri string: uri that generates the summary staticTitle string: title to show when no summaries are available title string: name of the microsummary bmkUri string uri of the page to load description string: extra description if provided loadInSidebar boolean: true if the bookmark should load in the sidebar tags array of strings: tags for the bookmark keyword string: alias to activate the bookmark from the location bar parentName string: name of the containing folder predecessorid string: GUID of the item before this (empty if it's first) type string: "microsummary"
query
Place queries are special bookmarks with a place: uri that links to an existing folder/tag. This extends bookmark, so the usual bookmark fields apply.
folderName string: name of the folder/tag to link to title string: name of the query bmkUri string place: uri query description string: extra description if provided loadInSidebar boolean: true if the bookmark should load in the sidebar tags array of strings: tags for the query keyword string: alias to activate the bookmark from the location bar parentName string: name of the containing folder predecessorid string: GUID of the item before this (empty if it's first) type string: "query"
folder
Folders contain bookmark items like bookmarks and other folders.
title string: name of the folder parentName string: name of the containing folder predecessorid string: GUID of the item before this (empty if it's first) type string: "folder"
livemark
Livemarks act like folders with a dynamic list bookmarks, e.g., a RSS feed. This extends folder, so the usual folder fields apply.
siteUri string: site associated with the livemark feedUri string: feed to get items for the livemark title string: name of the livemark parentName string: name of the containing folder predecessorid string: GUID of the item before this (empty if it's first) type string: "livemark"
separator
Separators help split sections of a folder.
pos string: position (index) of the separator parentName string: name of the containing folder predecessorid string: GUID of the item before this (empty if it's first) type string: "separator"
forms
Form data is used to give suggestions for autocomplete for a HTML text input form. One record is created for each form entry.
name string: name of the HTML input field value string: value to suggest for the input