forked from apparentlymart/activity-streams-specs
-
Notifications
You must be signed in to change notification settings - Fork 1
/
jsonactivity.xml
189 lines (153 loc) · 8.17 KB
/
jsonactivity.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="exp" docName="jsonactivity-00" ipr="full3978">
<front>
<title abbrev="JSONActivity">Activity Streams in JSON</title>
<author fullname="Martin Atkins" initials="M." surname="Atkins">
<organization>Six Apart Ltd.</organization>
</author>
<author fullname="Monica Keller" initials="M." surname="Keller">
<organization>Facebook</organization>
</author>
<author fullname="Tosh Meston" initials="T." surname="Meston">
<organization>MySpace</organization>
</author>
<date />
<abstract>
<t>This document defines a schema for representing the Activity Streams
data model in JSON.</t>
</abstract>
<note title="Requirements Language">
<t>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 RFC 2119.</t>
</note>
</front>
<middle>
<section title="Introduction">
<t>...</t>
<t>NOTE WELL: This is a very early draft which may change drastically
and incompatibly in subsequent revisions.</t>
</section>
<section title="Types">
<t>The following sections define the different types that represent
concepts from the activity streams data model in JSON.</t>
<section title="Activity">
<t>An Activity represents an activity as defined by the Activity
Streams specifications.</t>
<t>An Activity has the following properties:</t>
<t><list style="hanging">
<t hangText="verbs (array<string>)">The list of verb URIs
for this activity. These verbs MUST all be generalizations or
specializations of one another, and they MUST be specified in
order from least specific to most specific. This property MUST NOT
be <spanx style="verb">null</spanx> and the list MUST contain at
least one item.</t>
<t hangText="object (Object)">The object of this activity. This
property MUST NOT be <spanx style="verb">null</spanx>.</t>
<t hangText="target (Object)">The target of this activity. This
property MUST be <spanx style="verb">null</spanx> if the activity
has no target.</t>
<t hangText="actor (Object)">The actor of this activity. This
property MUST NOT be <spanx style="verb">null</spanx>.</t>
<t hangText="postedTime (string)">The time that the activity
occurred, as a W3CDTF timestamp. This property MUST NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="id (string)">A URI that serves as an identifier for
this activity. This property MUST NOT be <spanx style="verb">null</spanx>.</t>
<t hangText="permalinkUrl (string)">The URL of a HTML page that
represents this activity. This property SHOULD NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="streamFaviconUrl (string)">The URL of an icon represents this activity.
This property MAY be <spanx style="verb">null</spanx> if there are no specific icons per activity type for this activity publisher</t>
<t hangText="title (string)">An HTML representation of the natural
language title for this activity. Consumers MAY use the
value of this field, if set, as a fallback for when none of the
provided verbs are recognized. This property MAY be <spanx
style="verb">null</spanx> if the publisher does not wish to
provide a HTML representation.</t>
<t hangText="body (string)">An HTML representation of a natural
language describing this activity including visual elements such as thumbnails.
Consumers MAY use the value of this field, if set, as a fallback for when none of the
provided verbs are recognized. This property MAY be <spanx
style="verb">null</spanx> if the publisher does not wish to
provide a HTML representation.</t>
</list></t>
<t>If additional properties are present in an Activity, they MUST be
ignored.</t>
</section>
<section title="Object">
<t>Object is the base type of objects that can be referenced by
activities. Specific object types will extend this basic object with
additional properties that are specific to the object type in
question.</t>
<t>All Object types have the following properties:</t>
<t><list style="hanging">
<t hangText="displayName (string)">A name that can be used to
refer to this object when none of its types are recognised. The
meaning of this field may be refined further for particular object
types. This property MUST NOT be <spanx style="verb">null</spanx>.</t>
<t hangText="permalinkURL (string)">The URL of a HTML page that
represents this object. This property SHOULD NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="picture (string)">The URL to a pictorial representation of the object.</t>
<t hangText="objectTypes (array<string>)">The list of object
type URIs for this object. These object types MUST all be
generalizations or specializations of one another, and they MUST
be specified in order from least specific to most specific. This
property MUST NOT be <spanx style="verb">null</spanx> and the list
MUST contain at least one item.</t>
<t hangText="id (string)">A URI that serves as an identifier for
this activity stream. This property MUST NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="summary (string)">A human readable snippet of the content suitable for display on a browser.
This property MAY be <spanx style="verb">null</spanx></t>
<t hangText="content (string)">A human readable version of the entire content suitable for display on a browser.
This property MAY be <spanx style="verb">null</spanx></t>
<t hangText="published (string)">The time that this object was
published, as a W3CDTF timestamp. This property MUST NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="updated (string)">The time that this object was most
recently updated, as a W3CDTF timestamp. This property MAY be
<spanx style="verb">null</spanx>, in which case the last updated
time is not known.</t>
</list></t>
</section>
<section title="ActivityStream">
<t>An activity stream is a collection of activities. Often these
activities are related in some way, such as being by the same
actor.</t>
<t>An ActivityStream has the following properties:</t>
<t><list style="hanging">
<t hangText="displayName (string)">A human-readable name for this
stream. This property MAY be <spanx style="verb">null</spanx> if
the stream has no name.</t>
<t hangText="entries (array<Activity>)">The activities
comprising this stream. This property MUST NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="id (string)">A URI that serves as an identifier for
this activity stream. This property MUST NOT be <spanx
style="verb">null</spanx>.</t>
<t hangText="subjectId (string)">If this stream is considered to
be about a specific object -- usually a Person -- the publisher
SHOULD include the value of the id property for that object here
to allow consumers to identify this object when it is referred to
in properties of the included activities.</t>
</list></t>
</section>
</section>
</middle>
<back>
<references title="Normative References"></references>
</back>
</rfc>