refactoring for proper publishing on JRR
Removed deprecated method
Logging the query
Due to r53449 we do not need the <> anymore when querying in the provenance graph
CRM.E29_Design_or_Procedure should always win as specific type (George maps Standard as Dataset and Design_or_Procedure but we want to see them among the Standards, not the datasets).
Fixes https://support.d4science.org/issues/11240#note-27: namespace dnet should not be used. The full namespace URL must be used when adding triples, otherwise it will be just a string, not a real name under the namespace as expected.
Fixes #11240#note-21: changed names of provenance graph and properties to be URLs instead of plain strings.
Let's return blank string upon error instead of throwing exception
Fixed web param name and ignoring webmvc test
Added new timeout parameter for anytime query
removed old commented code
Removed/deprecated unused methods
New methods to get subjects with pagination given a datasource API
Do not log 200 status
Bypassing Query and QueryEngineFactory, otherwise we cannot use the inference rules
Need to use inference rules also in /subjectsWithType method
Loggin queries that returned 504 GatewayTimeout
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
handle httpstatus properly
Added TODO to remember in the near future about the error handling
Let's not log all queries, just the template name
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
I think we must use an InfModel to process the rdf before registering it
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
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
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
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?
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
logs
Better close the Jena Model to ensure resources are released.
Fixed virtuoso drop and added test
getting ready to use the GCube Parthenos Registry
Log errors
More logs
API for storing on virtuoso
keep playing with virtuoso
JobNodes to work with Virtuoso
reformat code
added comment
VirtuosoClient and some tests assuming there is a local virtuoso server (hence ignored)
First tests with Virtuoso.