Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inconsistences between schema and example files #252

Open
IgorBalog-Eng opened this issue Mar 11, 2024 · 7 comments
Open

Inconsistences between schema and example files #252

IgorBalog-Eng opened this issue Mar 11, 2024 · 7 comments
Labels
bug Something isn't working

Comments

@IgorBalog-Eng
Copy link

While implementing new catalog classes following schema and provided example files I have discovered that there are some differences between schema and examples. Here are those differences:

https://github.com/International-Data-Spaces-Association/ids-specification/blob/main/catalog/message/schema/dataset-schema.json

Dataset

"odrl:hasPolicy": {
	"type": "array",
	"items": {
		"$ref": "https://w3id.org/dspace/schemas/2024/1/contract-schema.json#/definitions/Offer"
	},
	"minItems": 1
},

in example not as array ( "odrl:hasPolicy" : [ {):

"odrl:hasPolicy": {
    "@type": "odrl:Offer",
    "@id": "urn:uuid:2828282:3dd1add8-4d2d-569e-d634-8394a8836a88",

"Distribution": {
dct:format not defined in schema

example:
https://github.com/International-Data-Spaces-Association/ids-specification/blob/main/catalog/message/example/dataset.json

 "dcat:distribution": [
    {
      "@type": "dcat:Distribution",
      "dct:format": {
        "@id": "dspace:s3+push"
      },

example catalog:
Catalog->dcat:dataset->dcat:distribution->"dct:format": "dspace:s3+push",
vs
example dataset
"dct:format": {
"@id": "dspace:s3+push"
}

Missing:
dataset->dcat:distribution->dcat:accessService->"@type": "dcat:DataService",


example catalog
dcat:dataset->odrl:hasPolicy
"dspace:providerId": "http://example.com/Provider",
missing @id of the policy/offer

vs defined Offer object in negotiation schema
https://github.com/International-Data-Spaces-Association/ids-specification/blob/main/negotiation/message/schema/contract-schema.json

Hope I managed to collect all differences for catalog and referenced objects from negotiation module.
It could be also that I did not read schema files correct and this ticket is not applicable.

@sebbader-sap
Copy link
Contributor

Adding another one:


should be "odrl:target"

@sebbader-sap sebbader-sap added the bug Something isn't working label Mar 13, 2024
@IgorBalog-Eng
Copy link
Author

Is this diagram still valid?
There is "link" between offer and catalog
https://docs.internationaldataspaces.org/ids-knowledgebase/v/dataspace-protocol/catalog/catalog.protocol#id-3.1-ack-catalog
It states before
A Catalog must not have an odrl:hasPolicy attribute, since it is not intended to negotiate on the access to Catalog objects.

@schoenenberg
Copy link

schoenenberg commented Mar 14, 2024

Adding another one:

should be "odrl:target"

Already reported (but not yet fixed) in #232

@IgorBalog-Eng
Copy link
Author

@IgorBalog-Eng
Copy link
Author

The Consumer must include an offer property, which itself must have a @id property

https://github.com/International-Data-Spaces-Association/ids-specification/blob/main/negotiation/message/example/contract-request-message.json

Where is offer.@id?
Initial message contains offer.@id

--

https://github.com/International-Data-Spaces-Association/ids-specification/blob/2024-1/catalog/message/example/catalog.json
Should this one also contain offer.@id in response? How will consumer know which offer.@id to send in initial_request_message?

"odrl:hasPolicy": [
{
"@type": "odrl:Offer",
"@id" : "missing offerId",
"dspace:providerId": "http://example.com/Provider",
"odrl:permission": [
{

@sebbader-sap
Copy link
Contributor

sebbader-sap commented Mar 28, 2024

The example for the catalog contains a odrl:EQ:

"odrl:operator": "odrl:EQ",

But ODRL only has a odrl:eq, which is correctly stated in the JSON Schema.

Additionally, the distribution in this file is a JSON Object:


But the JSON Schema says it must be a JSON Array.

@IgorBalog-Eng
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants