Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bf:generationDate domain should be bf:GenerationProcess #117

Open
kirkhess opened this issue Mar 22, 2024 · 3 comments
Open

bf:generationDate domain should be bf:GenerationProcess #117

kirkhess opened this issue Mar 22, 2024 · 3 comments

Comments

@kirkhess
Copy link
Contributor

kirkhess commented Mar 22, 2024

See https://id.loc.gov/ontologies/bibframe.html#p_generationDate

The example has:

<bf:Instance rdf:about="http://id.loc.gov/resources/instances/5226" >
<bf:generationProcess >
<bf:GenerationProcess >
<rdfs:label >DLC marc2bibframe2 v2.3.0</rdfs:label>
<bf:generationDate rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime" >2023-11-08T13:17:30.842291-05:00</bf:generationDate>
</bf:GenerationProcess>
</bf:generationProcess>
</bf:Instance>

But the ontology has <rdfs:domain rdf:resource="http://id.loc.gov/ontologies/bibframe/AdminMetadata"/> We had corrected GenerationProcess so it wasn't a subclass of AdminMetadata but this property didn't get updated - it should be
<rdfs:domain rdf:resource="http://id.loc.gov/ontologies/bibframe/GenerationProcess"/> (or no domain...)

I would suggest changing the example so it uses the same example as the property/class e.g.https://id.loc.gov/ontologies/bibframe.html#p_generationProcess.

@ntra00
Copy link
Contributor

ntra00 commented Mar 22, 2024

this generation date property hasn't changed since 2016:

https://id.loc.gov/ontologies/bibframe/generationDate.rdf

But you are right; it's not inside GenerationProcess.

https://github.com/lcnetdev/marc2bibframe2/blob/cdff84cf049834bb6f9035a773b1b8a9d4935e41/xsl/marc2bibframe2.xsl#L143-L154

Maybe it should be? It's arguably about the generation process.

@kirkhess
Copy link
Contributor Author

kirkhess commented Mar 25, 2024

<bf:Instance >
<bf:adminMetadata >
<bf:AdminMetadata >
<bf:generationProcess >
<bf:GenerationProcess >
<rdfs:label >DLC marc2bibframe2 v2.5.0</rdfs:label>
<bf:generationDate rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime" >2024-01-31T16:56:49.446832-05:00</bf:generationDate>
</bf:GenerationProcess>
</bf:generationProcess>
...

I put the example from my link above - it seems like fix is to remove the domain or change it to bf:GenerationProcess. These examples are a huge improvement, thanks for doing this!

BIBFRAME is a lot closer to MARC now that it was back in 2016. In this case, in bibframe2marc the label is the 884$a, generated by marc2bibframe2, the bf:generationDate is the 884$g date is a timestamp generated by the marc2bibframe2 conversion, the local identifier 884$k and the 884$q value are external parameters which are used by bibframe2marc. This shape makes sense but doesn't really translate to OWL or SHACL - maybe you can add a comment about the shape.

@klngwll
Copy link

klngwll commented Sep 19, 2024

I was under the impression the purpose of generationDate was that it could be used alongside a linked GenerationProcess [1]. If the need is to make this construction more annotation-like you could also simply use the regular date property [2]?

Example 1

<xyz> a bf:AdminMetadata ;
  bf:generationProcess <GenerationProcessX> ;
  bf:generationDate "2024-01-31T16:56:49.446832-05:00" .

<GenerationProcessX> a bf:GenerationProcess ;
  rdfs:label "DLC marc2bibframe2 v2.5.0" ;
  rdfs:seeAlso "https://github.com/lcnetdev/marc2bibframe2/releases/tag/v2.5.0" .

Example 2

<xyz> a bf:AdminMetadata ;
  bf:generationProcess [ a bf:GenerationProcess ;
    bf:date "2024-01-31T16:56:49.446832-05:00" ;
    rdfs:label "DLC marc2bibframe2 v2.5.0" ] .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants