FAIRDataTeam/FAIRDataPoint

dash:EnumSelectEditor converts IRIs to strings

markwilkinson opened this issue · 1 comments

Describe the bug
A SHACL descriptor that sets the node type as IRI, and provides a sh:in list of IRIs, will correctly display the dropdown list using only the localname, but when converted to RDF, those IRIs will become strings.

To Reproduce
Steps to reproduce the behavior:

Metadata Definition:

[
    sh:path ejp:vpConnection ;
    sh:nodeKind sh:IRI ;
    sh:in (<http://purl.org/ejp-rd/vocabulary/VPDiscoverable> <http://purl.org/ejp-rd/vocabulary/VPQueryable>) ;
    sh:minCount 0 ;
    sh:maxCount 2 ;
    sh:order 0 ;
    dash:editor dash:EnumSelectEditor ;
    dash:viewer dash:LabelViewer ;
  ] .

Result:

@prefix dcat: <http://www.w3.org/ns/dcat#>.
@prefix dct: <http://purl.org/dc/terms/>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
@prefix loc: <http://localhost:7070/>.
@prefix c: <http://localhost:7070/catalog/>.
@prefix voc: <http://purl.org/ejp-rd/vocabulary/>.

loc:new
    a dcat:DataService, dcat:Resource;
    dct:isPartOf c:3bb6ba9a-c2f4-4d15-9f3c-e495da1e7418;
    dct:publisher [ a foaf:Agent ];
    voc:vpConnection "http://purl.org/ejp-rd/vocabulary/VPDiscoverable".

Expected behavior

The output RDF, with the stringified IRI, cannot validate against the nodeType IRI, and therefore it is impossible to use the EnumSelectEditor to select from a set of IRIs. This is... disappointing ;-)

Context
Please fill the following and eventually add additional information (e.g. about used storage in case that issue is storage-related):

  • FDP version: 1.16.2
  • Docker Engine version: 20.10.21
  • Operating System: Linux

Heh.... just checked 1.16.3-rc.1 and the bug is already fixed! Cheers!