Met property-casing dwingen we af dat properties lowerCamelCase moeten zijn. In een JSON-LD response kan een property met een @ beginnen of een : bevatten. Voorbeeldresponse van de API-register API:
{
"@context": {},
"@type": "dcat:DataService",
"dct:conformsTo": [
"https://spec.openapis.org/oas"
],
"dct:identifier": "dicF0B3HR",
"dct:title": "string",
"dct:description": "string",
"dcat:endpointDescription": "http://example.com",
"dcat:contactPoint": {
"vcard:fn": "string",
"vcard:hasEmail": "http://example.com",
"vcard:hasURL": "http://example.com"
},
"dct:publisher": "http://example.com"
}
Ik denk dat we een uitzondering op application/ld+json responses moeten maken. Een alternatief kan zijn om te forceren dat de JSON-LD responses altijd gemapt worden in de @context en dat we daar @context en @type expliciet toestaan, maar dan schrijven we voor hoe je met JSON-LD moet omgaan (op zich geen slecht idee om daar ook iets over te zeggen) en wordt de response groter:
{
"@context": {
"conformsTo": "dct:conformsTo",
"identifier": "dct:identifier",
"title": "dct:title"
},
"@type": "dcat:DataService",
"conformsTo": [
"https://spec.openapis.org/oas"
],
"identifier": "dicF0B3HR",
"title": "string"
}
Snelste oplossing:
: toestaan in lowerCamelCase, dan kijg je iets als colon:lowerCamelCase
@ toestaan voor JSON-LD keywords
- Indien mogelijk in ruleset alleen voor
application/ld+json responses
Met
property-casingdwingen we af dat propertieslowerCamelCasemoeten zijn. In een JSON-LD response kan een property met een@beginnen of een:bevatten. Voorbeeldresponse van de API-register API:{ "@context": {}, "@type": "dcat:DataService", "dct:conformsTo": [ "https://spec.openapis.org/oas" ], "dct:identifier": "dicF0B3HR", "dct:title": "string", "dct:description": "string", "dcat:endpointDescription": "http://example.com", "dcat:contactPoint": { "vcard:fn": "string", "vcard:hasEmail": "http://example.com", "vcard:hasURL": "http://example.com" }, "dct:publisher": "http://example.com" }Ik denk dat we een uitzondering op
application/ld+jsonresponses moeten maken. Een alternatief kan zijn om te forceren dat de JSON-LD responses altijd gemapt worden in de@contexten dat we daar@contexten@typeexpliciet toestaan, maar dan schrijven we voor hoe je met JSON-LD moet omgaan (op zich geen slecht idee om daar ook iets over te zeggen) en wordt de response groter:{ "@context": { "conformsTo": "dct:conformsTo", "identifier": "dct:identifier", "title": "dct:title" }, "@type": "dcat:DataService", "conformsTo": [ "https://spec.openapis.org/oas" ], "identifier": "dicF0B3HR", "title": "string" }Snelste oplossing:
:toestaan inlowerCamelCase, dan kijg je iets alscolon:lowerCamelCase@toestaan voor JSON-LD keywordsapplication/ld+jsonresponses