Différences entre versions de « Module:Oeuvres de l'auteur »
Sauter à la navigation
Sauter à la recherche
(Version qui sert de modèle) |
|||
Ligne 15 : | Ligne 15 : | ||
local p = {} | local p = {} | ||
− | + | ||
+ | local linkedwiki = require 'linkedwiki' | ||
function p.section(f) | function p.section(f) | ||
− | local text = [[ | + | local object = linkedwiki.new() |
+ | object:setConfig("http://data.bnf.fr") | ||
+ | mw.log(object:getConfig()) | ||
+ | |||
+ | local result = object:query( [[ | ||
+ | PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> | ||
+ | PREFIX dcterms: <http://purl.org/dc/terms/> | ||
+ | PREFIX foaf: <http://xmlns.com/foaf/0.1/> | ||
+ | PREFIX rdarelationships: <http://rdvocab.info/RDARelationshipsWEMI/> | ||
+ | |||
+ | SELECT DISTINCT | ||
+ | |||
+ | (CONCAT("<span class='plainlinks module-oeuvres-vignettes'>[",?urlPDF," ",?url,".jpg]</span>") as ?vignette) | ||
+ | ?date | ||
+ | (CONCAT("<span class='plainlinks'>[",?urlPDF," ",?label,"]") as ?titre) | ||
+ | (CONCAT("<span class='plainlinks'>[",?edition," notice]") as ?gallica) | ||
+ | WHERE { | ||
+ | # "121308651" est le Bibliothèque nationale de France ID pour l'auteur Alfred Baudrillart | ||
+ | BIND(IRI(CONCAT("http://data.bnf.fr/ark:/12148/cb","121308651","#about")) as ?idNotice) | ||
+ | ?edition dcterms:creator ?idNotice . | ||
+ | ?edition rdfs:label ?label . | ||
+ | ?edition foaf:depiction ?url . | ||
+ | ?edition dcterms:date ?date. | ||
+ | BIND(IRI(REPLACE(STR(?url),".thumbnail", ".pdf?download=1&pdfdownload__accept-box=on")) as ?urlPDF) | ||
+ | } | ||
+ | ORDER BY ?date | ||
+ | ]] ) | ||
+ | -- linkedwiki.print_r(result) | ||
+ | |||
+ | local text = [[ | ||
== Œuvres == | == Œuvres == | ||
− | + | ]] | |
− | + | ||
− | + | local newline=[[ | |
− | + | ||
− | + | ]] | |
+ | local i = 0 | ||
+ | local row = nill | ||
+ | row = result['result']['rows'][i] | ||
+ | while( row ~= nil ) | ||
+ | do | ||
+ | --linkedwiki.print_r(row) | ||
+ | |||
+ | text = text .. "* ".. row["vignette"] .. " ".. row["date"] .. " ".. row["titre"].." (".. row["gallica"].. ")".. newline | ||
+ | |||
+ | i = i + 1 | ||
+ | row = result['result']['rows'][i] | ||
+ | end | ||
return text | return text |
Version du 21 novembre 2021 à 13:45
Utilisation
Ce module a pour fonction de pouvoir afficher les versions numérisées des oeuvres d'un auteur enregistré par la BNF
Exemple d'utilisation
{{#invoke:Oeuvres de l'auteur|section | Bnf ID = 121308651 }}
Résultat pour Alfred Baudrillart
Œuvres
- 1912 Charles Boudhors, professeur honoraire du lycée Louis-le-Grand, (7 janvier 1827-2 décembre 1911) (notice)
- 1912 Vie de Mgr d'Hulst (notice)
- 1912 Vie de Mgr d'Hulst (notice)
- 1917 La France, les catholiques et la guerre, réponse à quelques objections (notice)
- 1925 Entre los Latinos de America, impresiones de la Argentina, del Uruguay y de Chile en 1922 (notice)
Paramétres
Bnf ID
: Id de la BNF
--[[
-- Debug console
frame = mw.getCurrentFrame() -- Get a frame object
newFrame = frame:newChild{ -- Get one with args
title = 'Alfred Baudrillart' ,
args = {
iri = 'https://gregorius.dsi.universite-paris-saclay.fr/wiki/Alfred_Baudrillart' ,
["Bnf ID"] = '121308651'
}
}
mw.log(p.section( newFrame ) )
]]
local p = {}
local linkedwiki = require 'linkedwiki'
function p.section(f)
local object = linkedwiki.new()
object:setConfig("http://data.bnf.fr")
mw.log(object:getConfig())
local result = object:query( [[
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX rdarelationships: <http://rdvocab.info/RDARelationshipsWEMI/>
SELECT DISTINCT
(CONCAT("<span class='plainlinks module-oeuvres-vignettes'>[",?urlPDF," ",?url,".jpg]</span>") as ?vignette)
?date
(CONCAT("<span class='plainlinks'>[",?urlPDF," ",?label,"]") as ?titre)
(CONCAT("<span class='plainlinks'>[",?edition," notice]") as ?gallica)
WHERE {
# "121308651" est le Bibliothèque nationale de France ID pour l'auteur Alfred Baudrillart
BIND(IRI(CONCAT("http://data.bnf.fr/ark:/12148/cb","121308651","#about")) as ?idNotice)
?edition dcterms:creator ?idNotice .
?edition rdfs:label ?label .
?edition foaf:depiction ?url .
?edition dcterms:date ?date.
BIND(IRI(REPLACE(STR(?url),".thumbnail", ".pdf?download=1&pdfdownload__accept-box=on")) as ?urlPDF)
}
ORDER BY ?date
]] )
-- linkedwiki.print_r(result)
local text = [[
== Œuvres ==
]]
local newline=[[
]]
local i = 0
local row = nill
row = result['result']['rows'][i]
while( row ~= nil )
do
--linkedwiki.print_r(row)
text = text .. "* ".. row["vignette"] .. " ".. row["date"] .. " ".. row["titre"].." (".. row["gallica"].. ")".. newline
i = i + 1
row = result['result']['rows'][i]
end
return text
end
return p