problems with JSONLD response #1077
Replies: 4 comments 2 replies
-
Hello and thank you for this discussion. At first glance I personally am not a spec/namespace-expert and I think that many of the reported problems come from the core-edc used and should actually be addressed at core-edc level and in their specification-rounds. Nevertheless, I will pass this on internally. |
Beta Was this translation helpful? Give feedback.
-
Which git projects are "core-edc and their specification-rounds"? When you reuse an ontology/context, you are obligated to use the namespaces exactly as given. Related: |
Beta Was this translation helpful? Give feedback.
-
Hi @VladimirAlexiev first of all I really appreciate your feedback! I worked my way through your thorough feedback but indeed only scratch at the surface with my first comments. To process all your doubts and comments we will take longer to sort out things we can change and which are coming from DataSpaceProtocol (DSP) Specification or Core EDC, which implements the DSP. First points:
You are right, I started a discussion here: International-Data-Spaces-Association/ids-specification#278
You are linking to the most recent version of the Data Space Protocol in v1.0. Your current connectors follow the more mature version 0.8 of DSP with Core EDC v0.2.1. We are in the progress of migration towards 0.7.x for our non-Catena-X customers and can provide you after the migration an updated version. Nevertheless I tested the response also with an Catena-X compliant Connector already based on 0.7.x, I can see the same mismatch between specification and current Core EDC implementation. I opened a discussion here eclipse-edc/Connector#4624
This was identified by us in the past and fixed by the Core EDC team see eclipse-edc/Connector#3458 Our upcoming Connector will incorporate this fix.
This was fixed in Core EDC v0.10.0 here. Our goal is to use a most recent version which is usable and compatible with different Data Spaces like Catena-X. Thus, I need to ask for patience about adopting Core EDC >0.10.0. |
Beta Was this translation helpful? Give feedback.
-
Hi @SebastianOpriel and @tmberthold ! Has Sovity tested some of these issues using the latest EDC version? |
Beta Was this translation helpful? Give feedback.
-
I tried converting the JSONLD Catalog Response to RDF and I found many problems.
They are described in detail at https://github.com/underpin-project/model/blob/main/dcat#dataspace-catalog-response (with saved files, conversion commands, images), below I reproduce only the two Problem sections:
A lot of the problems appear in both, ideally we'll merge them to a single checklist.
@tmberthold @jkbquabeck can you please check which have been fixed in 1.0?
Canned Response Problems
There are various defects in the EDC/Sovity canned response:
content-type
: should beapplication/ld+json
instead ofapplication/json
(see the first line of the diagram in Dataspace Protocol Catalog Response, and the example catalog.json)
Includes a deficient and defective context:
As you can see in the DCAT spec, the namespace for DCAT terms is http://www.w3.org/ns/dcat#
(http not https, and trailing hash not slash)
dspace:
namespace. The "canonical" context specifies https://w3id.org/dspace/2024/1/ (this is a minor problem since nodspace:
terms are used)@base
which means that all@id
fields are incorrectly resolved to local file URLs (depending on the RDFization tool).<file:///D:/Onto/proj/underpin/model/dcat/5e839777-d93e-4785-8972-1005f51cf367>
odrl:Set
, so we get this error fromriot
(see command below). The error means that the part before:
is taken to be a URI scheme (completely wrong)@type
of properties:odrl:target "bcca61be-e82e-4da6-bfec-9716a56cef35"
is a string,so it doesn't point to the Dataset URI
<file:///D:/Onto/proj/underpin/model/dcat/bcca61be-e82e-4da6-bfec-9716a56cef35>
dcat:accessService "5e839777-d93e-4785-8972-1005f51cf367"
is a string,so it doesn't point to the DataService URI
<file:///D:/Onto/proj/underpin/model/dcat/5e839777-d93e-4785-8972-1005f51cf367>
dcat:accessURL
(if present) should be equal todcat:accessService/dcat:endpointURL
)odrl:type, odrl:leftOperand, dct:endpointUrl, dcat:accessService
should be URLs instead of stringsodrl:rightOperand
should have datatypexsd:dateTimeStamp
instead of stringThere are also instance data problems:
dct:format
should be a IANA registered MIME type.Instead, it is declared
@id
and is a fake/free-text string (eg "HttpData"), leading to a non-sensical URL: file:///D:/Onto/proj/underpin/model/dcat/HttpDatadct:endpointUrl
is a non-existent property, should bedcat:endpointURL
dct:terms
is a non-existent property, don't know what was meant hereReal Response Problems
The real response has even more problems than the canned response:
dcat:Distribution
(maybe the way we tried to add it was wrong)foaf, dcat-ext, dct
dcat:Dataset, dcat:service
use wrong prefix,http://www.w3.org/ns/dcat#keyword
is right but unshorteneddct:terms
uses wrong prefix,http://purl.org/dc/terms/license
is right but unshortened@base
so relative URLs are resolved to "random" full URLs@id
ofodrl:Set
uses bad chars, so it is unsuitable as URI. If you look at the Turtle above, it's discarded (so that node obtains only the random base URL){"odrl:action": {"odrl:type": ...}}
but:odrl:type
It aliases
"type": "@type"
but that meansrdf:type
and notodrl:type
"odrl:use"
@vocab
means that by default it's resolved in the vocabulary namespace):dct:endpointUrl
is a non-existent property, should bedcat:endpointURL
dct:terms
is a non-existent property, don't know what is meant hereodrl:target, dct:endpointUrl, dcat:landingPage, dct:license, dct:language
odrl:target
doesn't link to thedcat:Dataset
node(IDSA uses a single namespace for all kinds of codes)
dcat-ext:httpDatasourceHintsProxy*
props carry the string "false" and lack the datatypexsd:boolean
Beta Was this translation helpful? Give feedback.
All reactions