UKGovLD/registry-core

bulk-upload skos:ConceptScheme

marqh opened this issue · 1 comments

marqh commented

Given the example payload:

@prefix dct:   <http://purl.org/dc/terms/> .
@prefix ldp:   <http://www.w3.org/ns/ldp#> .
@prefix reg:   <http://purl.org/linked-data/registry#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos:  <http://www.w3.org/2004/02/skos/core#> .

<26>
        a                        reg:Register , skos:ConceptScheme , ldp:Container ;
        rdfs:label               "some label"@en ;
        ldp:isMemberOfRelation   skos:inScheme .

<26/023>
        skos:inScheme <26> ;
        a              skos:Concept ;
        rdfs:label     "Day"@en ;
        skos:notation  "023" .

I would expect to be able to register, given that skos:ConceptScheme is listed within system/bulkCollectionTypes

However, this returns the error:

Action failed: Bad Request -

bulkConceptSchemeMin.ttl - Found bulk collection type ldp:Container, but no children found using membership property rdfs:member

https://github.com/UKGovLD/registry-core/wiki/Api#batch-registration
describes both membership and inverse membership as supported, citing skos:ConceptScheme as an example

  1. Am I missing something key in this content?
  2. Is this expected to work?
  3. Is this a bug which requires development effort to analyse and fix?

many thanks
mark

(@der )

marqh commented

@der

The issue here is with defining the bulk-container to be multiple types. These can be interpreted in any order
in this case, reg:register and ldf:Container are looking for members before skos:ConceptScheme kicks in

pair back the content, to only declare one type, the skos:ConcpetScheme:

@prefix ldp:   <http://www.w3.org/ns/ldp#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos:  <http://www.w3.org/2004/02/skos/core#> .

<26>
        a                        skos:ConceptScheme ;
        rdfs:label               "some label"@en ;
        ldp:isMemberOfRelation   skos:inScheme .

<26/023>
        skos:inScheme <26> ;
        a              skos:Concept ;
        rdfs:label     "Day"@en ;
        skos:notation  "023" .

and bulk-upload is happy

i consider this issue closed, thank you