LD4P / rdf2marc

A Bibframe RDF to MARC converter for use within the Sinopia ecosystem.
2 stars 1 forks source link

Publisher name does not conver #101

Closed NancyL closed 3 years ago

NancyL commented 3 years ago

Type of change Defect

Example RDF records Please provide URIs or RDF of the bf:Instance. If providing RDF, Turtle is preferred. https://api.stage.sinopia.io/resource/3eb5f480-60d6-4732-8daf-02d8d6f26eb7

Resource template Which resource template does this apply to? In which Sinopia environment (development, stage, production)? pcc:bf2:Instance:Monograph/pcc:bf2:PublicationInformation/pcc:bf2:Provision:Name/rdfs:label

Expected MARC 264 #1 $a Rochester, Vermont $a London $b Macmillan London $c 1998

Actual MARC What MARC did you actually receive (if mapped incorrectly)? 264 #1 $a Rochester, Vermont $a London $c 1998 (no $b)

Expected mapping logic _i1: [ a bf:Instance ; bf:provisionActivity [ a bf:Publication ; bf:place ; bf:place ; bf:agent ] .

[a bf:Agent ; rdfs:label "Macmillan London" ] . The rdfs:label for the bf:Agent becomes the MARC 264 $b If there is more than one bf:Agent given here, it is given in another $b
justinlittman commented 3 years ago

Developer note: Resolve the bf:Agent; do not use the label.

NancyL commented 3 years ago

thanks Justin. Yes, since it is a lookup, we should resolve the bf:Agent

jcoyne commented 3 years ago

It looks to me like the source RDF is invalid.

_:b27 <http://www.w3.org/2000/01/rdf-schema#label> <http://id.loc.gov/authorities/names/no96009884> .
_:b27 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://id.loc.gov/ontologies/bibframe/Agent> .

The range of rdfs:label is rdfs:literal and here it's a URI. See https://www.w3.org/TR/rdf-schema/#ch_label

NancyL commented 3 years ago

um, that is not what I get. You may need to refresh stage.

justinlittman commented 3 years ago

I verified the invalid RDF. However, after re-saving the resource the source RDF was valid:

_:b33 <http://id.loc.gov/ontologies/bibframe/agent> <http://id.loc.gov/authorities/names/no96009884> .
<http://id.loc.gov/authorities/names/no96009884> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://id.loc.gov/ontologies/bibframe/Agent> .
<http://id.loc.gov/authorities/names/no96009884> <http://www.w3.org/2000/01/rdf-schema#label> "Macmillan London@en" .
NancyL commented 3 years ago

So, yes this is now working when there is a lookup to be found. I hesitate it says it's fixed though because it will not work with a literal. And even if had agreed to this restriction, I can't currently test because I don't have a way to add the label to a new URI in the template yet as far as I know.

And if we are maintaining this restriction, there should be a "Create new" button paired with every lookup