forked from jmapio/jmap
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Split into 4 specs and add RFC-style build process.
- Loading branch information
Showing
35 changed files
with
729 additions
and
385 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
build/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
|
||
MMARK := /Users/neil/Code/Go/src/github.com/miekg/mmark/mmark/mmark -xml2 -page | ||
|
||
rfc/build/%.xml: rfc/src/%.mdown spec/%/* | ||
mkdir -p $(@D) | ||
cat $< | $(MMARK) > $@ | ||
|
||
rfc/build/%.txt: rfc/build/%.xml | ||
tclsh ~/xml2rfc-dev/xml2rfc.tcl --text `pwd`/$^ `pwd`/$@ | ||
|
||
rfc/build/%.html: rfc/build/%.xml | ||
tclsh ~/xml2rfc-dev/xml2rfc.tcl --html `pwd`/$^ `pwd`/$@ | ||
|
||
.PHONY: build | ||
|
||
build: rfc/build/jmap.txt rfc/build/jmap.html rfc/build/mail.txt rfc/build/mail.html rfc/build/contacts.txt rfc/build/contacts.html rfc/build/calendars.txt rfc/build/calendars.html | ||
|
||
xml: rfc/build/jmap.xml rfc/build/mail.xml rfc/build/contacts.xml rfc/build/calendars.xml |
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
%%% | ||
title = "JMAP for Calendars" | ||
abbrev = "JMAP Calendars" | ||
category = "std" | ||
docName = "draft-jenkins-jmapcalendars-00" | ||
ipr= "trust200902" | ||
area = "Applications" | ||
workgroup = "JMAP" | ||
keyword = ["JMAP", "JSON", "calendars"] | ||
|
||
date = 2016-10-04T00:00:00Z | ||
|
||
[[author]] | ||
initials="N.M." | ||
surname="Jenkins" | ||
fullname="Neil Jenkins" | ||
role="editor" | ||
organization = "FastMail" | ||
[author.address] | ||
email = "[email protected]" | ||
uri = "https://www.fastmail.com" | ||
[author.address.postal] | ||
street = "Level 1, 91 William St" | ||
city = "Melbourne" | ||
code = "VIC 3000" | ||
country = "Australia" | ||
%%% | ||
|
||
.# Abstract | ||
|
||
This document specifies a data model for synchronising calendar data with a server using JMAP. | ||
|
||
{mainmatter} | ||
|
||
{{spec/calendars/intro.mdown}} | ||
{{spec/calendars/calendar.mdown}} | ||
{{spec/calendars/calendareventlist.mdown}} | ||
{{spec/calendars/calendarevent.mdown}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
%%% | ||
title = "JMAP for Contacts" | ||
abbrev = "JMAP Contacts" | ||
category = "std" | ||
docName = "draft-jenkins-jmapcontacts-00" | ||
ipr= "trust200902" | ||
area = "Applications" | ||
workgroup = "JMAP" | ||
keyword = ["JMAP", "JSON", "contacts"] | ||
|
||
date = 2016-10-04T00:00:00Z | ||
|
||
[[author]] | ||
initials="N.M." | ||
surname="Jenkins" | ||
fullname="Neil Jenkins" | ||
role="editor" | ||
organization = "FastMail" | ||
[author.address] | ||
email = "[email protected]" | ||
uri = "https://www.fastmail.com" | ||
[author.address.postal] | ||
street = "Level 1, 91 William St" | ||
city = "Melbourne" | ||
code = "VIC 3000" | ||
country = "Australia" | ||
%%% | ||
|
||
.# Abstract | ||
|
||
This document specifies a data model for synchronising address book data with a server using JMAP. | ||
|
||
{mainmatter} | ||
|
||
{{spec/contacts/intro.mdown}} | ||
{{spec/contacts/contactgroup.mdown}} | ||
{{spec/contacts/contactlist.mdown}} | ||
{{spec/contacts/contact.mdown}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
%%% | ||
title = "JSON Meta Application Protocol" | ||
abbrev = "JMAP" | ||
category = "std" | ||
docName = "draft-jenkins-jmap-00" | ||
ipr= "trust200902" | ||
area = "Applications" | ||
workgroup = "JMAP" | ||
keyword = ["JMAP", "JSON"] | ||
|
||
date = 2016-10-04T00:00:00Z | ||
|
||
[[author]] | ||
initials="N.M." | ||
surname="Jenkins" | ||
fullname="Neil Jenkins" | ||
role="editor" | ||
organization = "FastMail" | ||
[author.address] | ||
email = "[email protected]" | ||
uri = "https://www.fastmail.com" | ||
[author.address.postal] | ||
street = "Level 1, 91 William St" | ||
city = "Melbourne" | ||
code = "VIC 3000" | ||
country = "Australia" | ||
%%% | ||
|
||
.# Abstract | ||
|
||
This document specifies a protocol for synchronising JSON-based data objects efficiently, with support for push and out-of-band binary data upload/download. | ||
|
||
{mainmatter} | ||
|
||
{{spec/model/intro.mdown}} | ||
{{spec/model/authentication.mdown}} | ||
{{spec/model/api.mdown}} | ||
{{spec/model/download.mdown}} | ||
{{spec/model/upload.mdown}} | ||
{{spec/model/push.mdown}} | ||
{{spec/model/account.mdown}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
%%% | ||
title = "JMAP for Mail" | ||
abbrev = "JMAP Mail" | ||
category = "std" | ||
docName = "draft-jenkins-jmapmail-00" | ||
ipr= "trust200902" | ||
area = "Applications" | ||
workgroup = "JMAP" | ||
keyword = ["JMAP", "JSON", "email"] | ||
|
||
date = 2016-10-04T00:00:00Z | ||
|
||
[[author]] | ||
initials="N.M." | ||
surname="Jenkins" | ||
fullname="Neil Jenkins" | ||
role="editor" | ||
organization = "FastMail" | ||
[author.address] | ||
email = "[email protected]" | ||
uri = "https://www.fastmail.com" | ||
[author.address.postal] | ||
street = "Level 1, 91 William St" | ||
city = "Melbourne" | ||
code = "VIC 3000" | ||
country = "Australia" | ||
%%% | ||
|
||
.# Abstract | ||
|
||
This document specifies a data model for synchronising email data with a server using JMAP. | ||
|
||
{mainmatter} | ||
|
||
{{spec/mail/intro.mdown}} | ||
{{spec/mail/mailbox.mdown}} | ||
{{spec/mail/messagelist.mdown}} | ||
{{spec/mail/thread.mdown}} | ||
{{spec/mail/message.mdown}} | ||
{{spec/mail/identity.mdown}} | ||
{{spec/mail/searchsnippet.mdown}} | ||
{{spec/mail/vacationresponse.mdown}} |
File renamed without changes.
File renamed without changes.
This file was deleted.
Oops, something went wrong.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# Introduction | ||
|
||
JMAP is a generic protocol for synchronising data, such as mail, calendars or contacts, between a client and a server. It is optimised for mobile and web environments, and aims to provide a consistent interface to different data types. | ||
|
||
This specification defines a data model for synchronising calendar data between a client and a server using JMAP. | ||
|
||
## Notational Conventions | ||
|
||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [@!RFC2119]. | ||
|
||
The underlying format used for this specification is JSON. Consequently, the terms "object" and "array" as well as the four primitive types (strings, numbers, booleans, and null) are to be interpreted as described in Section 1 of [@!RFC7159]. | ||
|
||
Some examples in this document contain "partial" JSON documents used for illustrative purposes. In these examples, three periods "..." are used to indicate a portion of the document that has been removed for compactness. | ||
|
||
Types signatures are given for all JSON objects in this document. The following conventions are used: | ||
|
||
* `Boolean|String` – The value is either a JSON `Boolean` value, or a JSON `String` value. | ||
* `Foo` – Any name that is not a native JSON type means an object for which the properties (and their types) are defined elsewhere within this document. | ||
* `Foo[]` – An array of objects of type `Foo`. | ||
* `String[Foo]` – A JSON `Object` being used as a map (associative array), where all the values are of type `Foo`. | ||
|
||
## LocalDate | ||
|
||
Where the API specifies `LocalDate` as a type, it means a string in the same format as `Date`, but with the `Z` omitted from the end. The interpretation in absolute time depends upon the time zone for the event, which MAY NOT be a fixed offset (for example when daylight saving time occurs). | ||
|
||
## Terminology | ||
|
||
The same terminology is used in this document as in the core JMAP specification. | ||
|
||
## Extensions to the Account capabilities object | ||
|
||
The following extra property is defined for the *capabilities* object available on each Account object: | ||
|
||
- **calendars**: `CalendarsCapabilities|null` | ||
If `null`, this account does not support calendars, and any use of the calendar-related methods with this account will result in an `accountNotSupportedByMethod` error. Otherwise, it will be an object describing certain capabilities of the calendars system. | ||
|
||
A **CalendarsCapabilities** object has the following properties: | ||
|
||
- **isReadOnly**: `Boolean` | ||
True if the user has read-only access to the calendars in this account. The user may not use the `set`-type calendar methods with this account. |
File renamed without changes.
File renamed without changes.
File renamed without changes.
Oops, something went wrong.