scriptotek / mc2skos

Command line script for converting Marc21 Classification and Authority records to SKOS/RDF
The Unlicense
21 stars 4 forks source link

Handling of links in 5XX fields #31

Open nichtich opened 7 years ago

nichtich commented 7 years ago

5XX: See Also From Tracings is currently mapped to skos:related or skos:broader depending on $w but the value of $w can also indicate skos:narrower and other kinds of (non)relations. In particular subfield $4 was added to directly specify relation with an URI if $w has value r. Possible values of $w:

a - Earlier heading h - Narrower term
b - Later heading   i - Reference instruction phrase in subfield $i
d - Acronym         n - Not applicable
f - Musical composition r - Relationship designation in $i or $4
g - Broader term    t - Immediate parent body
danmichaelo commented 7 years ago

That I didn't add skos:narrower was just sloppiness.

For the case where $w = "r" and $4 starts with "http://", I guess we could add that URI as the triple predicate? Let me know if you have any example records using this.

(At least) the "a", "b" and "d" seems to be concept-term relations (or term-term) rather than concept-concept-relations, so perhaps it's better to use skos:altLabel for "a" and "d"? A problem being that there might be separate heading records that will be converted to their own skos concepts.. but hopefully the earlier headings will be marked as deprecated. To mark the relations between former headings and current ones, perhaps it would work to add dcterms:isReplacedBy and dcterms:replaces?

nichtich commented 7 years ago

I think we don't need to cover all these cases just "a", "b", "d", and "r" with URI in $4. I have not seen records with the latter yet, subfield $4 was just added to the rules. I'd expect values such as "http://rdf-vocabulary.ddialliance.org/xkos#hasPart".

P.S: #32 is related. The documentation linked there defines $4 as

Code or URI that specifies the relationship from the entity described in the record to the entity referenced in the field. A source of relationship codes is: ISO 25964-2: Thesauri and interoperability with other vocabularies — Part 2: Interoperability with other vocabularies, Section 4, Table 1.

danmichaelo commented 7 years ago

Right, seems like URIs in $4 was added in MARC PROPOSAL NO. 2017-01 "Redefining Subfield $4 to Encompass URIs for Relationships in the MARC 21 Authority and Bibliographic Formats". I went ahead and added support for it while into it.

nichtich commented 6 years ago

When 5XX can also provide broader links we should disable use of parent_notation if the URI pattern is not based on {object} (see https://github.com/scriptotek/mc2skos/commit/cdf977fbe2088ff4ef64b780bf296ef17e4335c1).