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
removed todo, because I did it
Removed deprecated classes
logging
handle httpstatus properly
Added method to delete a resource by uuid
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 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
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
Curates relationships
curation relationships
Fixed hosted_by
re-using getLabel method
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
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
Fixed freemarker configuration setting
Using an infModel
just todo comment
No need to infer in memory: we can have the inference rule run directly on virtuoso
Re-order switch cases
refactoring
compilation error solved
Fixed class name: guys..."Resource" is a very unlucky name...
tostring method
implemented findInRegistry method
ByPass QueryBuilder, otherwise the virtuoso pragma are not parsable
Playing with inference rules on the remote sparql endpoint
Additional methods needed by the JRR publishing workflow
Refactoring and deprecation for registration on catalogue and registry
For almost every graph we used to return also "concept URLs" like "http://parthenos.d4science.org/handle/Parthenos/REG/Concept/datasettype/metadata"...let's try to avoid them skipping non URL resources and resources whose type is not in the parthenos namespace.
Back with no inference, otherwise we are passing all triples in CIDOC-CRM, DIG and PE, which is not what we want.
Add inferred info after getting sparql result.
Back to simple construct
using lambdas
Let's try using a VirtGraph
We should be able to use DEFINE if we use Virtuoso specific classes, see https://www.openlinksw.com/vos/main/Main/VirtJenaSPARQLExample12
it seems 406 really depends on the DEFINE construct to use inf rules...
Test: 406 error if I use the inference rules?
log debug unpublish info
Removed duplicate creation of rel
No Exception to be declared
Use inference rules
Let's try to get only the triples where the known resource is subject
Let's throw exceptions!
Serialize in XML RDF PLAIN and not ABBREV
cleanup
DESCRIBE query does not work: we do not know what Virtuoso can return. Now we explicitely ask for all triples where a resource is involved as subject or object
API that read from Virtuoso
Removed Async annotation
As George said, let's skip resources with no http URI as they are relevant to give info about another resource, not as a resource itself.
Passing needed args
Fixed json format
Reordering methods
CRM RDFS schema changed URL.
Creating json for the CKAN Catalogue
getter/setter
Let's skip empty records
Moved to common package
Added client for CKAN Catlaogue and refactoring
log idMap
logs
Comment with TODO
let's be super sure we are giving UTF-8 encoded string to the registry
Fixed iteration
Handle the cases when the target of P1_is_identified_by is a string and not a resource
Handle cases when title is not in a resource but is a string
Trying again the sync publishing
Tring another response code