Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Entities support for external authority sources #74

Merged
merged 13 commits into from
Oct 15, 2019
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 34 additions & 15 deletions authorities.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ Example:
{
"id": "srsc",
"name": "srsc",
"scrollable": false,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this flag was intent to be used by authorities that allow scrolling of all values without providing a filter query. It is needed by the dropdown, the current implementation doesn't use this information but I still see a reason for it (it could detect misconfiguration when a dropdown is used with a not compatibile authority and maybe allow when working in suggest mode to automatically propose suggestion for scrollable authorities without user input when the input receive the focus)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abollini This flag is however not functional at all. It's never set to true, and the dropdowns are currently broken.
Since the feature is not documented, not functional, and has usability issues compared to DSpace 6, it's best to have it removed unless there's an intention to rectify this in the near future.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@benbosman : I'm confused why this PR is still modifying the authorities REST Contract, as I thought the decision was to change this PR to only create the Read-Only external-sources endpoint.

"hierarchical": true,
"type": "authority",
"_links": {
Expand All @@ -32,7 +31,6 @@ Example:
{
"id": "common_types",
"name": "common_types",
"scrollable": false,
"hierarchical": false,
"type": "authority",
"_links": {
Expand All @@ -50,7 +48,6 @@ Example:
{
"id": "common_iso_languages",
"name": "common_iso_languages",
"scrollable": false,
"hierarchical": false,
"type": "authority",
"_links": {
Expand Down Expand Up @@ -89,7 +86,6 @@ Provide detailed information about a specific authority. The JSON response docum
{
"id": "srsc",
"name": "srsc",
"scrollable": false,
"hierarchical": true,
"type": "authority"
}
Expand Down Expand Up @@ -125,22 +121,37 @@ sample for an authority /server/api/integration/authorities/common_types/entries
"id": "Dataset",
"display": "Dataset",
"value": "Dataset",
"otherInformation": {},
"type": "authority"
"metadata": {},
"type": "authority",
"_links": {
"self": {
"href": "https://dspace7-internal.atmire.com/server/api/integration/authorities/common_types/entryValues/Dataset"
}
}
},
{
"id": "Image, 3-D",
"display": "Image, 3-D",
"value": "Image, 3-D",
"otherInformation": {},
"type": "authority"
"metadata": {},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

metadata has a special meaning in dspace so this could be confusing. The idea here is that the authority can expose raw information not necessary "metadata" and to deal with them additional knowledge is usually required to the client.

An example of additional information that could result useful and is not a metadata are metrics value, number of items in the repository or in general number of publications for a researcher etc

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The information being included here exactly matches the definition of metadata. It can also be represented similar to item metadata since the information currently included here is e.g.:

  • An ORCID identifier
  • A description
  • A parent reference
    By ensuring this is also metadata, the UI can render the search results in a manner consistent with other lists

The information you're referencing here is not included in the authority functionality and don't seem to be relevant to include in an authority record.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@benbosman : As above, I'm confused why this PR is still modifying the authorities REST Contract, as I thought the decision was to change this PR to only create the Read-Only external-sources endpoint. Maybe we should move this discussion to a separate PR to update the authorities endpoint based on current behavior?

"type": "authority",
"_links": {
"self": {
"href": "https://dspace7-internal.atmire.com/server/api/integration/authorities/common_types/entryValues/Image%2C%203-D"
}
}
},
{
"id": "Book",
"display": "Book",
"value": "Book",
"otherInformation": {},
"type": "authority"
"metadata": {},
"type": "authority",
"_links": {
"self": {
"href": "https://dspace7-internal.atmire.com/server/api/integration/authorities/common_types/entryValues/Book"
}
}
}
]
},
Expand Down Expand Up @@ -176,25 +187,33 @@ sample for a hierarchical authority (srsc): /server/api/integration/authorities
"id": "VR131402",
"display": "Research Subject Categories::SOCIAL SCIENCES::Social sciences::Social work::Family research",
"value": "Research Subject Categories::SOCIAL SCIENCES::Social sciences::Social work::Family research",
"otherInformation": {
"metadata": {
"parent": "SCB1314",
"note": "Familjeforskning"
},
"type": "authority",
"_links": {
"https://dspace7-internal.atmire.com/server/api/integration/authorities/srsc/entryValues/SCB1314": {
"href": "parent"
"self": {
"href": "https://dspace7-internal.atmire.com/server/api/integration/authorities/srsc/entryValues/VR131402"
},
"parent": {
"href": "https://dspace7-internal.atmire.com/server/api/integration/authorities/srsc/entryValues/SCB1314"
}
}
},
{
"id": "ResearchSubjectCategories",
"display": "Research Subject Categories",
"value": "Research Subject Categories",
"otherInformation": {
"metadata": {
"note": "Ämneskategorier för vetenskapliga publikationer"
},
"type": "authority"
"type": "authority",
"_links": {
"self": {
"href": "https://dspace7-internal.atmire.com/server/api/integration/authorities/srsc/entryValues/ResearchSubjectCategories"
}
}
}
]
},
Expand Down
Loading