Difference between revisions of "Sugar Network/Resources"
Jump to navigation
Jump to search
Line 37: | Line 37: | ||
: Context types: | : Context types: | ||
:* ''activity'', Sugar activity; | :* ''activity'', Sugar activity; | ||
− | :* '' | + | :* ''book'', books in various forms; |
− | :* '' | + | :* ''group'', offline discussion groups; |
− | :* '' | + | :* ''package'', GNU/Linux package metadata. |
<div id="implementation-license"></div> | <div id="implementation-license"></div> |
Revision as of 04:16, 31 December 2013
The following diagram shows the full list of objects implemented by the Sugar Network API.
Resource.author
A list of authors working on the corresponding resource. List items are dictionaries with the following keys:
- guid
Author's guid in the Sugar Network; might be omitted if a particular author is not registered in the Sugar Network;
- name
Full author's name;
- role
An integer which is a bit-wise ORed value of the following constants:- 1, author is registered in the Sugar Network (and guid key is set);
- 2, author is the original author of the corresponding resource; if it is not set, user is only a maintainer, e.g., an uploader of a book which has its original authors.
Resource.layer
- This is an attempt to generalize the idea of user/resource levels with the idea that objects should not be removed from the Network immediately (only hidden, and permanently removed by Network administrators). So, every resource is associated with a layer, i.e., it might be visible for observers only if they requested this layer and have permissions to see it.
- For now, only the following list of layers is implemented, but the layer concept might be reused for teachers related workflows later:
- public, object is visible for everyone;
- deleted Network objects' layer will be changed to
deleted
after removing objects by users.
Context.type
- Context types:
- activity, Sugar activity;
- book, books in various forms;
- group, offline discussion groups;
- package, GNU/Linux package metadata.
Implementation.license
- Short license names. The licenses should conform with the Activity Library licensing policy.
Implementation.stability
- Stability level of the Implementation. Values conform to Sugar Network recipe specification.
Implementation.requires
- A list of dependencies the Implementation requires to be installed in the system. The property is being auto populated from a spec file from the uploaded Implementation bundle. This field exists only to simplify users driven queries, the real dependency checking bases on spec files.
Notification.type
- create, object was created;
- update, object's properties were modified;
- delete, object was deleted (hidden);
- vote, object was voted/unvoted.
Feedback.type
- question
- idea
- problem
Artifact.type
- instance, Sugar activity instance object.