Added method to get provider Uri and competences are multiple, not one
better mapping to ckan for Datasets
Commented unused extra fields
Mapping to ckan refined for PE1_Services
Better mapping Projects into the catalogue
getLabel does not throw NullPointer when the resource is null
Also query for maintained stuff + formatting
Nicer json for Actors on the catalogue
Updated crmdig namespace
Assuming prefixes are defined at virtuoso side.
log when groups cannot be created
just ordering
We do not want to register E55_Types
Based on FORTH feedback there are no direct rels between entities and the provider apart from services.
Added provider label
Included PP2_provided_by in sparql template for actors
Added todo for condition of use
refactoring methods for coverages
Added missing iterator
Reuse getTitle method on providers
The activitytype must be taken explicitly by URI prefix on types
Dropped authorization from mapping
The availability type must be taken explicitly by URI prefix on types
Bypassing Query and QueryEngineFactory, otherwise we cannot use the inference rules
Need to use inference rules also in /subjectsWithType method
Type and Ting should not be queried
some logs to INFO
Log when the resource could not be registered in the catalogue and hence we get a blank uuid
Loggin queries that returned 504 GatewayTimeout
ENsure that also resource names are compliant to the rules of the catalogue
based on the sparql templates competency is a string, in the model it is a PE36_Competency_Type
Let\s check if we do not get the following warning at client side by setting the response status in void GET methods that write directly on the output stream. The warning is: 'org.springframework.http.converter.json.MappingJackson2HttpMessageConverter- Failed to evaluate serialization for type [void]: java.lang.IllegalStateException: Failed to instantiate standard serializer (of type com.fasterxml.jackson.databind.ser.std.NullSerializer): Class com.fasterxml.jackson.databind.ser.BasicSerializerFactory can not access a member of class com.fasterxml.jackson.databind.ser.std.NullSerializer with modifiers "private"'
better error logging
Added crm:P2_has_type for all sparql query templates
Yes, let's use union everywhere
Looks like using UNION is much more performant than using OPTIONAL. See http://www.snee.com/bobdc.blog/2014/10/dropping-optional-blocks-from.html
removed todo, because I did it
Using specific queries for Software and Dataset: the one for DigitalObject has been deleted as it could not be executed because of timeout exception during tests. I do not want to run such heavy query on the production virtuoso
Removed deprecated classes
logging
handle httpstatus properly
Added method to delete a resource by uuid
added missing namespace
removed wrong } in service sparql template
Getting the item title from the label if a proper title cannot be found
Isolate the registration on the catalogue temporarly
better regex to have alphanumeric item and group names for the catalogue
Basic implementation for E55 and E29 to the catalogue
Added TODO to remember in the near future about the error handling
Let's try to get the providers for all types of resources
provider must come with at least the title
Let's get also the maintaining RI as provider (so they will also be added as groups)
Registering providers as catalogue groups
Better try using InputStream...
Debugging "org.apache.jena.riot.RiotNotFoundException: Not found" and related(?) parsing issue
Added missing dots in sparql templates
fixed sparql template
Let's not log all queries, just the template name
fixed commas
Better to set the title and ensure the group name complies with the catalogue requirements
Ensure the provider names are already registered as catalogue groups
Resolved TODOs in sparql query templates
removed duplicate line and re-order for haspart rels
curation plan in sparql template
subjects and coverages in sparql template
provided service
actor members
has_maintaining_team with optional contact points
PP1 currently offers
Curates relationships
curation relationships
Fixed hosted_by
formatting
re-using getLabel method
Thanks to sprql template activitytype can be accessed as literal
Thanks to sparql template service competence can be accessed as a simple label
Optional rdfs:label in sparql templates
optional description in sparql templates
Because of how we construct the RDF that we read from Virtuoso (see sparql templates), the title is always a literal.
More metadata for the catalogue based on the minimal metadata (https://docs.google.com/spreadsheets/d/1JAvI9AYP4yn6Lj-ABvzA3xqm4CpOulEeuHXmPTrs6so/edit#gid=1550301525)
Added constants for PARTHENOS_BASE_URL
crm prefix was unknown, let's use the full URI names fro the types we want to skip
Let's exclude E55_Type and E41_Appellation, not all entities whose type is not in the parthenos namespace
resolved TODOs
Enrich the values to add to a resource in the catalogue
I think we must use an InfModel to process the rdf before registering it
Because of https://support.d4science.org/issues/11466, let's not throw exception, but let's try to continue, if possible.Purge method implemented and tested
do not log the response from the catalogue
Fixed parsing of error information in cataloague response
Ensure the ckan name is lowercase
throws exception whenever needed
throws exception
Checking POST response status code before accessing the response body
Debugging for unexpected NPE
Extract the rdf block from the record submitted for registration
No need to go through jena Model before delivering the response in the output stream
it sounds like we are passing wrong data to the register method...let's see
No need to log the endpoint every time
Can't use jena Query because does not support inference rule, can't use jena HttpEngine because it does not support long queryif we do not use Query: hence let's query with handmade post request to the sparql endpoint.
Getting unexpected 406 because of wrong sparql query..some debug logs might help