Sugar Network/Resources
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;
- project, general purpose context;
- package, GNU/Linux package metadata;
- content, content like PDF files.
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.
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.