Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • A user deletes his account. Then the system first deletes all bookmarks in all lists of the user. Then all lists including favorites are deleted.


...

API calls for Use Cases

UC01 | Add bookmark

Image Added

Description

  • A user performs a search and a hit list appears. Now the user saves the object item as a bookmark.
  • The bookmark is always first saved in the main folder (favorites).

API mapping

  • FA01 | Create bookmark
    • POST /favourites/bookmarks
      • Send Bookmark-JSON in body


...

UC02 | Assign bookmarks to selected lists

Image Added

Description

  • After saving a bookmark for the first time in favorites, a dialog appears that allows a user to continue adding the bookmark to other personal lists.
  • For this purpose, the user can select and confirm the additional desired lists.

API mapping

  • FA10 | Get all folders of a user
    • GET /favourites/folders?userId={userID}
      • Receive a FolderResult-JSON with all folders
    • FA07 | Add bookmark to list
      • POST /favourites/folders/{folderID}/bookmarks/{bookmarkID}


...

UC03 | Retrieve names of a user listDescription

Image Added

  • After clicking favorites link in DDB a user should see his favorite lists to select one.

API mapping

  • FA10 | Get all folders of a user
    • GET /favourites/folders?userId={userID}


...

UC04 | Retrieve bookmarks of a list

Image Added

Description

  • A user want to see a list and so he clicks to one of his lists.

API mapping

  • FA09 | Retrieve bookmarks of a list
    • GET /favourites/folders/{folderID}/bookmarks


...

UC05 | Add personal list

Image Added

Description

  • A user creates a additional personal list.

API mapping

  • FA06 | Create list
    • POST /favourites/folders
      • Send Folder-JSON in body


...

UC06 | Delete bookmark

Image Added

Description

  • A user deletes a bookmark in favorites, and so it will also be deleted in each of the personal lists.

API mapping

  • FA05 | Delete bookmark
    • DELETE /favourites/bookmarks/{bookmarkID}


...

UC07 | Change bookmark description

Image Added

Description

  • A user adds, deletes or modifies the description of a bookmark.

API mapping

  • FA04 | Update bookmark (set only changes)
    • PUT /favourites/bookmarks/{bookmarkID}
      • Send Bookmark-JSON in body


...

UC08 | Copy bookmarks from All Favorites to personal lists

Image Added

Description

  • A user copies a bookmark from the main list (favorites) to personal lists.

API mapping

  • FA07 | Add bookmark to another lists
    • POST /favourites/folders/{folderID}/bookmarks?bookmarkId={bookmarkID}


...

UC09 | Publish or privatize personal list

Image Added

Description

  • A user publishes a list or make a published list private again.

API mapping

  • FA08 | Get list with properties
    • GET /favourites/folders/{folderID}
  • FA11 | Update list (set only changes)
    • POST /favourites/folders/{folderID}
      • Send Folder-JSON in body


...

UC10 | Change properties of personal list

Image Added

Description

  • A user changes name, description, published/unpublished, name abbreviation from one of his personal lists.

API mapping

  • FA08 | Get list
    • GET /favourites/folders/{folderID}
  • FA11 | Update list (set only changes)
    • POST /favourites/folders/{folderID}
      • Send Folder-JSON in body


...

UC11 | Remove personal list with bookmarks

Image Added

Description

  • A user deletes a personal list with the contained bookmarks. However, only the assignment of the bookmarks to the list is deleted.

API mapping

  • FA12 | Delete list
    • DELETE /favourites/folders/{folderID}


...

UC12 | Remove personal list and contained bookmarks in all lists

Image Added

Description

  • A user additional deletes containing bookmarks of the list, also from all other lists, including the main list (favorites).

API mapping

  • FA12 | Delete list
    • DELETE /favourites/folders/{folderID}


...

UC13 | Remove bookmark in personal list

Image Added

Description

  • A user deletes a bookmark from a personal list.

API mapping

  • FA13 | Remove bookmark from list
    • DELETE /favourites/folders/{folderID}/bookmarks/{bookmarkID}


...

UC14 | Copy bookmarks to other personal lists

Image Added

Description

  • A user copies a bookmark from a personal list to other personal lists.
  • Since all bookmarks are always present in the All Favorites (favorites) list, copying from personal lists to this central list is not possible.

API mapping

  • FA07 | Add bookmark to other lists (for every list)
    • POST /favourites/folders/{folderID}/bookmarks


...

Model

Bookmark

Fields

FieldData typeDescription

id

String

ID of the bookmark (internal created by Elasticsearch)

itemId

String

ID of the DDB object item

description

String

User defined text to describe the list

userId

String

AAS/LDAP managed ID of the User

bookmarkType

String

Type of the bookmark

createdAt

Long

Creation date of the folder in millis created by the DDB Backend

updateAt

Long

Last Update date of the folder in millis created by the DDB Backend

keywordTool

KeywordTool

Optional data for internal use in APD (for keyword tool)

Description

  • Model object to hold a bookmark (= favorites)

...

FieldData typeDescription
DoneBooleanUsed in APD

Description

  • Model object to hold and transfer APD internal data

...

FieldData typeDescription

query

String

Summary of the executed query (for debugging use)

total

Long

Total matches

offset

Long

Used offset (default or send by the request)

size

Long

Used size (default or send by the request)

bookmarks

List<Bookmark>

List of the found bookmarks by the query

Description

  • Model object to hold bookmarks (depends of offset and size) by the query

...

FieldData typeDescription

id

String

ID of the folder (internal created by Elasticsearch)

title

String

Title of the user list

description

String

User defined text to describe the list

userId

String

AAS/LDAP managed ID of the User

publishingName

String

User Identifier if the list is published

createdAt

Long

Creation date of the folder in millis created by the DDB Backend

updateAt

Long

Last Update date of the folder in millis created by the DDB Backend

bookmarkIds

Set<String>

List of related bookmarks IDs

institutionIds

Set<String>

List of related institution IDs

blockingToken

String

Optional token for internal use in APD

blocked

Boolean

If the list is blocked for public use

published

Boolean

If the list is published for public use

keywordTool

KeywordTool

Optional data for internal use in APD (for keyword tool)

Description

  • Model object to hold a folder (= favorites list and user defined lists)

...

FieldData typeDescription

sentToAdmin

Boolean

Used in APD

Description

  • Model object to hold and transfer APD internal data

...

FieldData typeDescription

query

String

Summary of the executed query (for debugging use)

total

Long

Total matches

offset

Long

Used offset (default or send by the request)

size

Long

Used size (default or send by the request)

folders

List<Folder>

List of the found folders by the query

Description

  • Model object to hold found folders (depends of offset and size) by the query