Throughout dspace-sword I was baffled by the validation aspect, so
you'll see lots of "UNKNOWN. PLEASE DOCUMENT." that I wrote just to
shut doclint up. If you know how this works, please amend my
placeholders.
dspace-rdf was developed as standalone module. At the end of the
development most of it was moved to be included into dspace-api. Instead
of using Spring it used its own class that instantiated all necessary
classes. This PR solves the problem described in DS-3190 by refactoring
org.dspace.rdf to adapt patterns used in DSpace 6. It introduces
[dspace]/config/spring/api/rdf.xml to configure spring to instantiate
all necessary classes. org.dspace.rdf.RDFConfiguration was removed
completely, the configuration keys are centralised in
org.dspace.rdf.RDFUtil. Instead of org.dspace.rdf.RDFConfiguration and
DSpace's old ConfigurationManager the new ConfigurationService is now
used everywhere. Configuration properties shouldn't be hold in variables
anymore so that RDF profits from the new autoreload function from
DS-2654.
The modules dspace-rdf contains the webapp to provide the converted data
as rdf serialization only. Everything else (classes for conversion,
storage, content negotiation, ...) moved into dspace-api so it can be
used easily by every other part of DSpace.