...
property | type | required | format checking | state of implementation | Remarks |
---|---|---|---|---|---|
user | integer | yes | isInteger | implemented | user id |
count | integer | yes | isInteger | implemented | count stores a number of occurrences of this user_id being an author of a deck revision |
DataSource =
property | type | required | format checking | state of implementation | Remarks |
---|---|---|---|---|---|
type | string | yes | implemented | ||
title | string | yes | implemented | ||
url | string | no | implemented | ||
comment | string | no | implemented | ||
authors | string | no | implemented | ||
year | string | no | implemented |
...
User=
property | type | required | format checking | state of implementation | remarks |
---|---|---|---|---|---|
id | integer | yes | ready to merge | ||
joined | string | yes | ISO date | ready to merge | the timestamp the user/group joined the deck editors |
username | string | no | see user service | ready to merge | |
picture | string | no | see user service model | ready to merge |
...
property | type | required | format checking | state of implementation | Remarks | ||
---|---|---|---|---|---|---|---|
_id | integer, autoincrement | yes | isInteger | implemented | for now is 'string' in the code | ||
timestamp | date | yes | auto generated | implemented | add 'format: datetime' | ||
user | integer | yes | isInteger | implemented (passed to service) | |||
editors | EditorsRights | no | implemented | ||||
origin | DeckOrigin | no | implemented | references the deck revision this deck was forked from | |||
description | string | no | implemented | ||||
translations | array of {language: 'string', deck_id: object_id} | no | not implementedimplemented in branch 1287 | language is in format 'de_DE' as we need this to save the new deck | |||
translated_from | has field 'status' with possible values 'original', 'google', 'revised'auto generated | implemented | Not in use now, but implemented. Could be used later in front-end | ||||
lastUpdate | string, datetime | no | auto-generated on creating new slide revision inside the deck | ||||
revisions | [ array of DeckRevision ] | yes | auto generated | implemented | |||
active | integer | yes | if the revision exists, when a new deck is added is set to 1 | implemented | |||
datasource | string | no | if the whole deck is the adaptation of a resource | ||||
license | string enumeration | yes | is one of enumerables ['CC0', 'CC BY', 'CC BY-SA'] | implemented | should move it from revision, it is the same for the whole deck | ||
contributors | array of contributors | no | in process |
...
ContentItem =
property | type | required | format checking | state of implementation |
---|---|---|---|---|
order | integer | yes | isInteger | implemented |
kind | string | yes | enum ('deck', 'slide') | implemented |
ref | object: {id, revision} | yes | implemented | |
ref.id | integer | yes | isInteger | implemented |
ref.revision | integer | yes | isInteger | implemented |
...
Tag =
property | type | required | format checking | state of implementation |
---|---|---|---|---|
tagName | string | yes | to be decided | implemented |
...
property | type | required | format checking | state of implementation | remarks | |
---|---|---|---|---|---|---|
id | objectId, autoincrement (scope limited to parent item) | yes | isInteger | implemented | ||
title | string | yes | implemented | |||
timestamp | date | yes | auto generated | implemented | ||
user | objectid | yes | isInteger | implemented | ||
parent | object {id: objectId, revision: objectId} | no | isInteger | not implemented | reference to a previous revision/branch etc. | |
language | string | yes | implemented | |||
popularity | integer | no | isInteger | not implemented | ||
theme | object | no | not implemented | |||
transition | object | no | not implemented | |||
comment | string | no | implemented | this is a comment of the revision - like in github | ||
abstract | string | no | implemented | |||
footer | string | no | implemented |
changed to string | ||
isFeatured | boolean | no | isBoolean | not implemented | ||
priority | integer | no | isInteger | not implemented | ||
visibility | boolean | no | isBoolean | not implemented | ||
translated_from | object { status: string, enum['original', 'google', 'revised', null], source: { id: object_id, revision: object_id}, translator: {id: object_id, name: string} } | no | not implemented | |||
tags | array of Tags | no | implemented | |||
contentItems | array of ContentItems | yes | implemented | |||
dataSources | array of DataSources | no | implemented | collects all data sources from slides | ||
usage | array of objects { id: object_id, revision: object_id} | no | implemented |
...
Slide =
property | type | required | format checking | state of implementation | remarks | |
---|---|---|---|---|---|---|
_id | objectId, autoincrement | yes | isInteger | implemented | ||
timestamp | date | yes | auto generated | should be format datetime | ||
user | objectId | yes | isInteger | implemented (passed to service) | ||
translated_from | object { status: string, enum['original', 'google', 'revised', null], source: { id: object_id, revision: object_id}, translator: {id: object_id, name: string} } | no | not implemented | |||
translations | array of {language: 'string', slide_id: object_id} | no | not implemented | |||
description | string | no | implemented | |||
contributors | [array of contributor ] | no | not implemented | |||
revisions | [ array of SlideRevisions ] | yes | auto generated | implemented | ||
active | objectId (integer) | no | if the revision exists, when a new deck is added is set to 1 | not implemented | is this really needed? active shows on content items of resp.parent | |
datasource | string | no | not implemented | |||
license | string enumeration | yes | is one of enumerables ['CC0', 'CC BY', 'CC BY-SA'] | implemented | ||
lastUpdate | string, datetime | no | autogenerated on creation of new revision | not implemented |
...
property | type | required | format checking | state of implementation | remarks | |
---|---|---|---|---|---|---|
id | integer, autoincrement | yes | isInteger | implemented | ||
title | string | yes | implemented | |||
timestamp | date | yes | auto generated | implemented | ||
content | string | yes | ?? only allowed tags | implemented | ||
user | integer, autoincrement | yes | isInteger | implemented | ||
parent | object { id: objectId, revision: objectId } | no | not implemented | keeps link to a previsous revision | ||
speakerNotes | string | no | implemented | |||
popularity | integer | no | isInteger | not implemented | ||
comment | string | no | implemented | comment of revision | ||
tags | array of Tags | no | implemented | |||
media | array | no | not implemented | |||
dataSources | array of DataSources | no | implemented | |||
language | string | yes | implemented | |||
usage | array of objects { id: object_id, revision: object_id} | no | not implemented |
...