Skip to content

Commit

Permalink
Add bibframe extensions to describe newspapers.
Browse files Browse the repository at this point in the history
  • Loading branch information
mielvds committed Mar 18, 2024
1 parent ca6e751 commit c70279c
Show file tree
Hide file tree
Showing 3 changed files with 316 additions and 1 deletion.
192 changes: 191 additions & 1 deletion description/bibliographic.shacl.ttl
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
@prefix bf: <http://id.loc.gov/ontologies/bibframe/> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix haDes: <https://data.hetarchief.be/ns/description/> .
@prefix haPrmId: <https://data.hetarchief.be/id/production-method/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix premis: <http://www.loc.gov/premis/rdf/v3/>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
Expand Down Expand Up @@ -129,7 +130,23 @@
sh:description "Indicates the specific publication type of a newspaper edition (e.g. morning, evening, weekend newspaper edition, etc.)."@en ;
sh:description "Indique le type de publication spécifique d'une édition de journal (par exemple, édition du journal du matin, du soir, du week-end, etc.)."@fr ;
sh:description "Geeft het specifieke uitgavetype aan van een kranteneditie (bv. ochtend-, avond-, weekendkranteneditie etc.)."@nl ;
sh:message "the object of haDes:issueType is not of type skos:Concept, or occurs more than once"@en ;
sh:message "the object of bf:edition is not of type skos:Concept, or occurs more than once"@en ;
sh:severity sh:Violation
],
[
a sh:PropertyShape ;
sh:path bf:productionMethod ;
sh:class skos:Concept ;
sh:in (haPrmId:handwritten haPrmId:typed haPrmId:printed);
sh:minCount 0 ;
sh:maxCount 1 ;
sh:name "production method"@en ;
sh:name "méthode de production"@fr ;
sh:name "productie methode"@nl ;
sh:description "The process used to produce the newspaper edition (e.g. handwritten, typed, printed)."@en ;
sh:description "Le processus utilisé pour produire la édition de journal (par exemple manuscrit, dactylographié, imprimé)."@fr ;
sh:description "Het proces dat werd gebruikt om de kranteneditie te produceren (bijv. handgeschreven, getypt, gedrukt)."@nl ;
sh:message "the object of bf:productionMethod is not of type skos:Concept, or occurs more than once"@en ;
sh:severity sh:Violation
] .

Expand Down Expand Up @@ -182,3 +199,176 @@
sh:message "the object of dct:format is not 'newspaperpage', is missing or occurs more than once"@en ;
sh:severity sh:Violation
] .


<#NewspaperNodeShape> a sh:NodeShape ;
sh:targetClass schema:Newspaper ;
sh:property
[
a sh:PropertyShape ;
sh:path schema:identifier ;
sh:nodeKind sh:Literal ;
sh:datatype xsd:string ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:name "abraham identifier"@en ;
sh:name "abraham identifier"@nl ;
sh:name "abraham identifier"@fr ;
sh:severity sh:Violation ;
sh:message "schema:identifier is missing or not of type string "@en ;
sh:message "schema:identifier ontbreekt of is niet van het type string"@nl ;
sh:message "schema:identifier est manquant ou n'est pas de type string"@fr
],
[
a sh:PropertyShape ;
sh:path schema:name ;
sh:nodeKind sh:Literal ;
sh:datatype rdf:langString ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:name "name"@en ;
sh:name "naam"@nl ;
sh:name "nom"@fr ;
sh:severity sh:Violation ;
sh:message "schema:name is missing or not of type string "@en ;
sh:message "schema:name ontbreekt of is niet van het type string"@nl ;
sh:message "schema:name est manquant ou n'est pas de type string"@fr
],
[
a sh:PropertyShape ;
sh:path schema:alternateName ;
sh:nodeKind sh:Literal ;
sh:datatype rdf:langString ;
sh:name "alternate name"@en ;
sh:name "alternatieve naam"@nl ;
sh:name "nom alternatif"@fr ;
sh:severity sh:Violation ;
sh:message "schema:alternateName is not of type string"@en ;
sh:message "schema:alternateName is niet van het type string"@nl ;
sh:message "schema:alternateName n'est pas de type string"@fr ;
],
[
a sh:PropertyShape ;
sh:path schema:startDate ;
sh:nodeKind sh:Literal ;
sh:datatype xsd:dateTime ;
sh:minCount 0 ;
sh:maxCount 1 ;
sh:name "start date"@en ;
sh:name "date de début"@fr ;
sh:name "begindatum"@nl ;
sh:severity sh:Violation ;
sh:message "schema:startDate is not of type xsd:dateTime."@en ;
sh:message "schema:startDate is niet van het type xsd:dateTime."@nl ;
sh:message "schema:startDate n'est pas de type xsd:dateTime."@fr ;
],
[
a sh:PropertyShape ;
sh:path schema:endDate ;
sh:nodeKind sh:Literal ;
sh:datatype xsd:dateTime ;
sh:minCount 0 ;
sh:maxCount 1 ;
sh:name "end date"@en ;
sh:name "date de fin"@fr ;
sh:name "einddatum"@nl ;
sh:severity sh:Violation ;
sh:message "schema:endDate is not of type xsd:dateTime."@en ;
sh:message "schema:endDate is niet van het type xsd:dateTime."@nl ;
sh:message "schema:endDate n'est pas de type xsd:dateTime."@fr ;
],
[
a sh:PropertyShape ;
sh:path schema:locationCreated ;
sh:nodeKind sh:Literal ;
sh:class schema:Place ;
sh:minCount 0 ;
sh:maxCount 1 ;
sh:name "page number"@en ;
sh:name "numéro de page"@fr ;
sh:name "paginanummer"@nl ;
sh:description "Indicates the serial number of a page within the greater object it is part of."@en ;
sh:description "Indique le numéro de série d'une page dans l'objet plus grand dont elle fait partie."@fr ;
sh:description "Geeft het volgnummer aan van een pagina binnen het grotere object waarvan het deel uitmaakt."@nl ;
sh:message "the object of haDes:pageNumber is not of type xsd:nonNegativeInteger,or occurs more than once"@en ;
sh:severity sh:Violation
],
[
a sh:PropertyShape ;
sh:path bf:supplement ;
sh:nodeKind sh:IRI ;
sh:class schema:Newspaper ;
sh:minCount 0 ;
sh:maxCount 1 ;
rdfs:label "supplement"@en ;
rdfs:label "supplément"@fr ;
rdfs:label "supplement"@nl ;
sh:description "Newspaper that updates or otherwise complements the predominant newspaper."@en ;
sh:description "Journal qui met à jour ou complète autrement le journal prédominant."@fr ;
sh:description "Krant die de overheersende krant bijwerkt of anderszins aanvult."@nl ;
sh:message "the object of bf:supplement is not of type schema:Newspaper, or occurs more than once"@en ;
sh:severity sh:Violation
],
[
a sh:PropertyShape ;
sh:path bf:supplementTo ;
sh:nodeKind sh:IRI ;
sh:class schema:Newspaper ;
sh:minCount 0 ;
sh:maxCount 1 ;
rdfs:label "supplement to"@en ;
rdfs:label "compléter"@fr ;
rdfs:label "supplement aan"@nl ;
sh:description "Newspaper that is updated or otherwise complemented by the augmenting newspaper."@en ;
sh:description "Journal qui est mis à jour ou autrement complété par le journal augmentant."@fr ;
sh:description "Krant die wordt bijgewerkt of anderszins wordt aangevuld met de aanvullende krant."@nl ;
sh:message "the object of bf:supplementTo is not of type schema:Newspaper, or occurs more than once"@en ;
sh:severity sh:Violation
],
[
a sh:PropertyShape ;
sh:path bf:succeededBy ;
sh:nodeKind sh:IRI ;
sh:class schema:Newspaper ;
sh:minCount 0 ;
sh:maxCount 1 ;
rdfs:label "succeeded by"@en ;
rdfs:label "succédé par"@fr ;
rdfs:label "opgevolgd door"@nl ;
skos:definition "Newspaper that succeeds the newspaper being described, e.g., later in time or after in a narrative."@en;
skos:definition "Journal qui succède à la journal décrite, par exemple, plus tard dans le temps ou après dans un récit."@fr;
skos:definition "Krant die de krant die wordt beschreven opvolgt, bijvoorbeeld later in de tijd of daarna in een verhaal."@nl;
sh:message "the object of bf:succeededBy is not of type schema:Newspaper, or occurs more than once"@en ;
sh:severity sh:Violation
],
[
a sh:PropertyShape ;
sh:path bf:precededBy ;
sh:nodeKind sh:IRI ;
sh:class schema:Newspaper ;
sh:minCount 0 ;
sh:maxCount 1 ;
rdfs:label "preceded by"@en ;
rdfs:label "précédé par"@fr ;
rdfs:label "voorafgegaan door"@nl ;
sh:description "Newspaper that precedes the newspaper being described, e.g., is earlier in time or before in narrative."@en;
sh:description "Le journal qui précède le journal décrit, par exemple, est plus tôt dans le temps ou avant dans le récit."@fr;
sh:description "Krant die voorafgaat aan de beschreven krant, bijvoorbeeld, is eerder in de tijd of eerder in het verhaal."@nl;
sh:message "the object of bf:precededBy is not of type schema:Newspaper, or occurs more than once"@en ;
sh:severity sh:Violation
],
[
a sh:PropertyShape ;
sh:path schema:publisher ;
sh:minCount 0 ;
sh:maxCount 1 ;
sh:class schema:Role ;
sh:name "publisher"@en ;
sh:name "uitgever"@nl ;
sh:name "éditeur"@fr ;
sh:description "Publisher of the newspaper."@en;
sh:description "Éditeur du journal."@nl;
sh:description "Uitgever van de krant."@fr;
sh:severity sh:Violation ;
sh:message "schema:publisher is not of class schema:Role, or occurs more than once"@en
].
90 changes: 90 additions & 0 deletions ontologies/bibframe.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
@prefix bf: <http://id.loc.gov/ontologies/bibframe/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> . # SKOS Vocabulary
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . # The RDF Schema vocabulary (RDFS)
@prefix owl: <http://www.w3.org/2002/07/owl#> . # The OWL 2 Schema vocabulary (OWL 2)
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . # The RDF Concepts Vocabulary (RDF)
@prefix dc: <http://purl.org/dc/elements/1.1/> .


bf:productionMethod dc:modified "2016-04-21 (New)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:domain bf:Instance ;
rdfs:label "production method"@en ;
rdfs:label "méthode de production"@fr ;
rdfs:label "productiemethode"@nl ;
rdfs:range bf:ProductionMethod ;
skos:definition "Process used to produce a resource."@en ;
skos:definition "Processus utilisé pour produire une ressource."@fr ;
skos:definition "Proces dat wordt gebruikt om een bron te produceren."@nl .

bf:supplement dc:modified "2016-04-21 (New)", "2016-04-29 (added inverse, updated range)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:comment "Suggested use - With Work or Instance", "Suggested value - Work or Instance" ;
rdfs:label "supplement"@en ;
rdfs:label "supplément"@fr ;
rdfs:label "supplement"@nl ;
rdfs:subPropertyOf bf:accompaniedBy ;
owl:inverseOf bf:supplementTo ;
skos:definition "Resource that updates or otherwise complements the predominant resource."@en ;
skos:definition "Ressource qui met à jour ou complète autrement la ressource prédominante."@fr ;
skos:definition "Bron die de overheersende bron bijwerkt of anderszins aanvult."@nl .

bf:supplementTo dc:modified "2016-04-21 (New)", "2016-04-29 (added inverse, updated range)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:comment "Suggested use - With Work or Instance", "Suggested value - Work or Instance" ;
rdfs:label "supplement to"@en ;
rdfs:label "compléter"@fr ;
rdfs:label "supplement aan"@nl ;
rdfs:subPropertyOf bf:accompanies ;
owl:inverseOf bf:supplement ;
skos:definition "Resource that is updated or otherwise complemented by the augmenting resource."@en ;
skos:definition "Ressource mise à jour ou complétée par la ressource augmentante."@fr ;
skos:definition "Bron die wordt bijgewerkt of anderszins wordt aangevuld met de aanvullende bron."@nl .

bf:accompaniedBy dc:modified "2016-04-21 (New)", "2016-04-29 (added inverse)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:comment "Suggested use - With Work, Instance or Item", "Suggested value - Work, Instance or Item" ;
rdfs:label "accompanied by"@en ;
rdfs:label "accompagné par"@fr ;
rdfs:label "vergezeld van"@nl ;
rdfs:subPropertyOf bf:relatedTo ;
owl:inverseOf bf:accompanies ;
skos:definition "Resource that accompanies the described resource."@en ;
skos:definition "Ressource qui accompagne la ressource décrite."@fr ;
skos:definition "Bron die bij de beschreven bron hoort."@nl .

bf:accompanies dc:modified "2016-04-21 (New)", "2016-04-29 (added inverse)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:comment "Suggested use - With Work, Instance or Item", "Suggested value - Work, Instance or Item" ;
rdfs:label "accompanies"@en ;
rdfs:label "accompagne"@fr ;
rdfs:label "begeleidt"@nl ;
rdfs:subPropertyOf bf:relatedTo ;
owl:inverseOf bf:accompaniedBy ;
skos:definition "Resource that adds to or is issued with the described resource."@en ;
skos:definition "Ressource qui ajoute ou est émise avec la ressource décrite."@fr ;
skos:definition "Bron die bijdraagt aan of wordt uitgegeven met de beschreven bron."@nl .

bf:succeededBy dc:modified "2016-04-21 (New)", "2016-04-29 (added inverse)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:comment "Suggested use - With Work or Instance", "Suggested value - Work or Instance" ;
rdfs:label "succeeded by"@en ;
rdfs:label "succédé par"@fr ;
rdfs:label "opgevolgd door"@nl ;
rdfs:subPropertyOf bf:relatedTo ;
owl:inverseOf bf:precededBy ;
skos:definition "Resource that succeeds the resource being described, e.g., later in time or after in a narrative."@en;
skos:definition "Ressource qui succède à la ressource décrite, par exemple, plus tard dans le temps ou après dans un récit."@fr;
skos:definition "Resource die de bron die wordt beschreven opvolgt, bijvoorbeeld later in de tijd of daarna in een verhaal."@nl.

bf:precededBy dc:modified "2016-04-21 (New)", "2016-04-29 (added inverse)" ;
a owl:ObjectProperty, rdf:Property ;
rdfs:comment "Suggested use - With Work or Instance", "Suggested value - Work or Instance" ;
rdfs:label "preceded by"@en ;
rdfs:label "précédé par"@fr ;
rdfs:label "voorafgegaan door"@nl ;
rdfs:subPropertyOf bf:relatedTo ;
owl:inverseOf bf:succeededBy ;
skos:definition "Resource that precedes the resource being described, e.g., is earlier in time or before in narrative."@en;
skos:definition "La ressource qui précède la ressource décrite, par exemple, est plus tôt dans le temps ou avant dans le récit."@fr;
skos:definition "Bron die voorafgaat aan de beschreven bron, bijvoorbeeld, is eerder in de tijd of eerder in het verhaal."@nl.
35 changes: 35 additions & 0 deletions ontologies/schema.rdfs.ttl
Original file line number Diff line number Diff line change
Expand Up @@ -894,6 +894,41 @@ schema:endTime a rdf:Property ;
skos:definition """La fin de quelque chose.Pour un événement ou un service réservé (par exemple.Pour les actions qui s'étendent sur un certain temps, lorsque l'action a été effectuée.Par exemple.John a écrit un livre de janvier à * décembre *.Pour les médias, y compris l'audio et la vidéo, c'est le décalage de temps de la fin d'un clip dans un fichier plus grand."""@fr ;
rdfs:isDefinedBy <https://schema.org/> .


schema:startDate a rdf:Property ;
rdfs:label "start date"@en ;
rdfs:label "date de début"@fr ;
rdfs:label "begindatum"@nl ;
schema:domainIncludes schema:CreativeWorkSeason,
schema:CreativeWorkSeries,
schema:DatedMoneySpecification,
schema:Event,
schema:Role,
schema:MerchantReturnPolicySeasonalOverride ;
schema:rangeIncludes schema:Date,
schema:DateTime ;
skos:definition "The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601))."@en ;
skos:definition "La date et l'heure de la date de la statistique par l'item (en [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601))"@fr ;
skos:definition "De startdatum en tijd van de status van het item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601))"@nl ;
rdfs:isDefinedBy <https://schema.org/> .

schema:endDate a rdf:Property ;
rdfs:label "end date"@en ;
rdfs:label "date de fin"@fr ;
rdfs:label "einddatum"@nl ;
schema:domainIncludes schema:CreativeWorkSeason,
schema:CreativeWorkSeries,
schema:DatedMoneySpecification,
schema:Event,
schema:Role,
schema:MerchantReturnPolicySeasonalOverride ;
schema:rangeIncludes schema:Date,
schema:DateTime ;
skos:definition "The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601))."@en ;
skos:definition "La date de fin et l'heure de l'article (en [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601))."@fr ;
skos:definition "De einddatum en tijd van het item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601))."@nl ;
rdfs:isDefinedBy <https://schema.org/> .

schema:mentions a rdf:Property ;
rdfs:label "mentions"@en ;
rdfs:label "vermeldt"@nl ;
Expand Down

0 comments on commit c70279c

Please sign in to comment.