Skip to content

Creative Commons Licenses (10x) - #6067

Draft
bkeese wants to merge 1 commit into
DSpace:mainfrom
bkeese:creative_commons_m
Draft

Creative Commons Licenses (10x)#6067
bkeese wants to merge 1 commit into
DSpace:mainfrom
bkeese:creative_commons_m

Conversation

@bkeese

@bkeese bkeese commented Aug 4, 2026

Copy link
Copy Markdown

This is a draft PR to assess interest in this work.
It is working well as-is and is in production at Indiana University on DSpace version 7.x.
Tests will fail until it is determined that finishing this PR is worthwhile.

References

Description

Replaces legacy CC API dependence with locally served resources.

List of changes in this PR:

  • Removes reliance on CC API, replaces with local logic and resources
  • Adds new choices to CC License chooser to facilitate setting correct values for dc.rights and dc.rights.url:
  1. Help me choose (legacy style chooser)
  2. I know my license (simple selection)
  3. All rights reserved (protected by copyright)
  4. Public Domain (apply cc0)
  5. Other (manually enter values for dc.rights and dc.rights.uri)
  • Each option in the chooser is configured via XML
  • Chooser form logic now resides in DSpace

Testing instructions

  1. Merge this PR and the related DSpace backend PR
  2. Turn on CC License Chooser by uncommenting in config/item-submission.xml
  3. There are also a number of configuration settings to be applied in local.cfg:
###############################
#  Creative Commons settings  #
###############################

# The url to the web service API
cc.api.rooturl = ${dspace.server.url}/cc

# Metadata field to hold CC license URI of selected license
cc.license.uri = dc.rights.uri

# Metadata field to hold CC license name of selected license (if defined)
cc.license.name = dc.rights

# Metadata field to hold CC license rights of selected license (if defined)
cc.license.rights = dc.rights

# Assign license name during web submission
cc.submit.setname = false

# Assign license rights during web submission
cc.submit.setrights = true

# Store license bitstream (RDF license text) during web submission
cc.submit.addbitstream = true

# A list of license classes that should be included in the selection process
# class names - comma-separated list -  must exactly match what service returns.
cc.license.classes = standard,known,none,zero,other
  1. Restart back end server, then restart front end
  2. Add a new item in the UI and scroll down to the Rights section.
  3. Explore the chooser options and make selections.
  4. Finish adding the item and then check it's metadata to ensure expected values are in the dc.rights and dc.rights.uri fields.

Screenshots

Screenshot from 2026-07-29 14-46-21 Screenshot from 2026-07-29 14-44-01 Screenshot from 2026-07-29 14-44-28 Screenshot from 2026-07-29 14-44-41 Screenshot from 2026-07-29 14-45-03 Screenshot from 2026-07-29 14-45-15

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace legacy CC API integration (api.creativecommons.org)

1 participant