SlideShare une entreprise Scribd logo
Réseau Aramis – 30 mars 2017
TEI HAL
import SWORD
Y. Barborini
IMPORT SWORD
Simple Web-service Offering
Repository Deposit
• Basé sur Atom Publishing Protocol (APP)
• Utilisé par d’autres AO & logiciels
• arXiv, Dspace, Eprints, …
• API REST HTTP
• Verbes HTTP :
• GET : statut d’une ressource
• POST : nouveau dépôt
• PUT : modification des métadonnées / nouvelle version
• DELETE : suppression d’une ressource
http://swordapp.org/
Entêtes HTTP (1)
• Content-Type :
• text/xml pour le dépôt d’un fichier XML
• application/zip pour le dépôt d’une archive ZIP contenant un
fichier XML + les fichiers associés
• Content-Disposition :
• attachment; filename=tei.xml à utiliser pour indiquer le nom
du fichier XML dans le ZIP
• Packaging :
• http://purl.org/net/sword-types/AOfr : format AOfr - TEI HAL
• http://jats.nlm.nih.gov/publishing/tag-library/ : format JATS
• Content-MD5 :
• Signature MD5 : vérifie l’intégrité du contenu envoyé
Entêtes HTTP (2)
• On-Behalf-Of : Dépôt pour le compte d’un utilisateur HAL
• UID ou LOGIN du compte HAL
• IDHAL ou ORCID (prochainement)
• Export-To-Arxiv
• true / false : indique si le dépôt doit être transféré sur ArXiv
• Export-To-PMC
• true / false : indique si le dépôt doit être transféré sur Pubmed Central
• Hide-For-RePEc
• true / false : permet de cacher le dépôt du réservoir accessible à RePEc dans
l'archive HAL
• Hide-In-OAI
• true / false : permet de cacher le dépôt du réservoir OAI-PMH et du Sitemap
• X-Allow-Completion :
• idext : récupération des métadonnées à partir d'un identifiant externe DOI,
arXivID, …
• grobid : récupération des métadonnées à partir du PDF soumis via
l'outil GROBID
• affiliation : recherche des affiliations des auteurs en se basant sur le référentiel
AURéHAL
Statut d’une ressource
• GET api.archives-ouvertes.fr/sword/[identifiant]
• Réponse
• HTTP/1.1 200 OK
• statut : accept | verify | update | delete
curl –X GET -u login:pwd https://api.archives-ouvertes.fr/sword/hal-
00000001v2
<?xml version="1.0" encoding="utf-8"?>
<document id="hal-00000001" version="2">
<status>accept</status>
<comment></comment>
</document>
Suppression d’une ressource
• DELETE api.archives-ouvertes.fr/sword/[identifiant]
• Réponse
• Suppression OK : HTTP/1.1 204 No Content
• Suppression NOK : Code Erreur
curl –X DELETE -u login:pwd https://api.archives-ouvertes.fr/sword/hal-
01039627
Dépôt d’une ressource (1)
• POST api.archives-ouvertes.fr/sword/[portail]
• Liste des portails accessible via l’API : https://api.archives-
ouvertes.fr/ref/instance
• Format pivot basé sur la TEI
• https://hal.archives-ouvertes.fr/documents/aofr.xsd
• Dépôt d’un fichier XML (Content-Type:text/xml)
Notice ou Texte intégral non intégré au dépôt
• Dépôt d’une archive ZIP (Content-Type:application/zip)
 Texte intégral : fichier(s) intégré(s) au dépôt
Dépôt d’une ressource (2)
• Réponse
• Dépôt accepté (passage diret en ligne) :
HTTP/1.1 202 Accepted
• Dépôt créé (en modération dans HAL) :
HTTP/1.1 201 Created
• Problème lors du dépôt :
Code Erreur
curl -X POST -u login:pwd https://api.archives-ouvertes.fr/sword/hal -H "X-
Packaging:http://purl.org/net/sword-types/AOfr" -H "Content-Type:text/xml" -
-data-binary @tei.xml
Dépôt d’une ressource (3)
<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:sword="http://purl.org/net/sword/terms/"
xmlns:dcterms="http://purl.org/dc/terms/" xmlns:hal="http://hal.archives-ouvertes.fr/">
<title>Accepted media deposit to HAL</title>
<id>hal-01040864</id>
<hal:password>9322one</hal:password>
<hal:version>1</hal:version>
<updated>2017-03-28T08:56:23+02:00</updated>
<summary>A media deposit was stored in the HAL workspace</summary>
<sword:treatment>stored in HAL workspace</sword:treatment>
<sword:userAgent>HAL SWORD API Server</sword:userAgent>
<source>
<generator uri="https://api.archives-ouvertes.fr/sword"
version="1.0">hal@ccsd.cnrs.fr</generator>
</source>
<link rel="alternate" href="https://hal.archives-ouvertes.fr/hal-01040864"/>
</entry>
Modification des métadonnées
• PUT api.archives-ouvertes.fr/sword/[identifiant]
• Réponse
• Modification OK : HTTP/1.1 200 OK
• Modification NOK : Code Erreur
curl -X PUT -u login:pwd https://api.archives-ouvertes.fr/sword/hal-
01040864 -H "X-Packaging:http://purl.org/net/sword-types/AOfr" -H
"Content-Type:text/xml" --data-binary @new_tei.xml
Dépôt d’une nouvelle version
• Idem modification des métadonnées + ajout du
texte intégral
• PUT api.archives-ouvertes.fr/sword/[identifiant]
• Réponse
• Dépôt OK : HTTP/1.1 201 Created
• Dépôt NOK : Code Erreur
curl -X PUT -u login:pwd https://api.archives-ouvertes.fr/sword/hal-
01040864 -H "X-Packaging:http://purl.org/net/sword-types/AOfr" -H
"Content-Type:text/xml" --data-binary @new_tei.xml
Gestion des erreurs (1)
• HTTP/1.1 4XX
• 406 Not Acceptable
• Packaging non reconnu
• Content-type non reconnu
• Erreur dans chargement du fichier XML
• 412 Precondition Failed
• Problème dans la vérification du MD5
• 403 Forbidden
• Problème d’authentification
• 405 Method Not Allowed
• Utilisation d’un verbe HTTP non accepté
• 413 Request Entity Too Large
• Taille du fichier supérieur à la limite (200Mo)
• 400 Bad Request
• Erreur d’enregistrement
Gestion des erreurs (2)
• Xpath : /sword:error/sword:verboseDescription
<?xml version="1.0" encoding="utf-8"?>
<sword:error xmlns:sword="http://purl.org/net/sword/error/" xmlns="http://www.w3.org/2005/Atom"
href="http://purl.org/net/sword/error/ErrorBadRequest">
<title>ERROR</title>
<updated>2017-03-28T10:13:50+02:00</updated>
<author>
<name>HAL SWORD API Server</name>
</author>
<source>
<generator uri="https://api.archives-ouvertes.fr/sword"
version="1.0">hal@ccsd.cnrs.fr</generator>
</source>
<summary>Some parameters sent with the request were not understood</summary>
<sword:treatment>processing failed</sword:treatment>
<sword:verboseDescription>{"meta":{"abstract":{"isEmpty":"Vous devez remplir ce
champ"}}}</sword:verboseDescription>
<link rel="alternate" href="https://api.archives-ouvertes.fr" type="text/html"/>
</sword:error>
TEI pour l’import HAL
Présentation
• Text encoding Initiative
• Basé sur XML, Langage de marquage qui permet
d’échanger des données textuelles informatisées.
• Format standard pour l’import/export dans HAL
• Schéma TEI import = Schéma TEI export
• https://hal.archives-ouvertes.fr/documents/aofr.xsd
Structure TEI
<TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:hal="http://hal.archives-ouvertes.fr">
<text>
<body>
<listBibl>
<biblFull> <!-- Référence bibliographique structurée -->
<titleStmt> <!-- Mention de titre (titre, personnes, responsables) --> </titleStmt>
<editionStmt> <!-- Edition (Fichiers) --> </editionStmt>
<publicationStmt> <!-- Publication (Licence) --> </publicationStmt>
<seriesStmt> <!-- Collection --> </seriesStmt>
<notesStmt> <!– Notes, commentaires --> </notesStmt>
<sourceDesc> <!-- Description bibliographique --> </sourceDesc>
<profileDesc> <!-- Description des aspects non bibliographiques --> </profileDesc>
</biblFull>
</listBibl>
</body>
<back>
<listOrg type="structures"> <!-- Définition de nouvelles structures --> </listOrg>
<listOrg type="projects"> <!-- Définition de nouveaux projets (ANR, Eur) --> </listOrg>
</back>
</text>
</TEI>
Mention de titre
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:titleStmt
Financement
• Projet ANR
• Projet Européen
• Autre financement
<!-- Accès au référentiel https://api.archives-ouvertes.fr/ref/anrProject?q=*&fl=* -->
<funder ref="#projanr-Identifiant du projet ANR dans AuréHAL"/>
<funder ref="#localProjanr-Identifiant du projet défini dans la partie back du fichier"/>
<!-- Accès au référentiel : http://api.archives-ouvertes.fr/ref/europeanProject?q=*&fl=* -->
<funder ref="#projeurop-Identifiant du projet européen dans AuréHAL"/>
<funder ref="#localProjeurop-Identifiant du projet défini dans la partie back du fichier"/>
<funder>Financement</funder>
Section Edition
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:editionStmt
• Date d’écriture
• Fichiers associés au dépôt
<date type="whenWritten">Date d'écriture (ex: 2014-09-08)</date>
<!-- @titre : référentiel type de fichier http://api.archives-
ouvertes.fr/ref/metadataList?q=metaName_s:fileType -->
<!-- @subtype : référentiel origine du fichier http://api.archives-
ouvertes.fr/ref/metadataList?q=metaName_s:fileSource -->
<ref type="file" subtype="author" target="Lien vers le pdf"
n="1(principal)">
<desc>Description du fichier</desc>
<date notBefore="Date d'embargo (2015-02-14)"/>
</ref>
Section Publication
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:publicationStmt
• Licence
<availability>
<!-- @target : Référentiel des licences http://api.archives-
ouvertes.fr/ref/metadataList?q=metaName_s:licence -->
<licence target="Licence"/>
</availability>
Collections
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:seriesStmt
• Tamponnage au moment du dépôt
• Il faut être gestionnaire de collection et tamponner avec
ses collections
<!-- @n : identifiant de la collection. Accès à la liste https://api.archives-
ouvertes.fr/search/?q=*&rows=0&facet=true&facet.field=collCode_s -->
<idno type="stamp" n="Identifiant de la collection"/>
Notes
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:notesStmt
<note type="commentary">Commentaire</note>
<note type="description">Description</note>
<!-- @n : audience; https://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:audience -->
<note type="audience" n="Audience"/>
<!-- @n : conférence invitée; http://api.archives-
ouvertes.fr/ref/metadataList?q=metaName_s:invitedCommunication -->
<note type="invited" n="Conférence invitée"/>
<!-- @n : vulgarisation; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:popularLevel -->
<note type="popular" n="Vulgarisation"/>
<!-- @n : Comité de lecture ; https://api.archives-
ouvertes.fr/ref/metadataList?q=metaName_s:peerReviewing -->
<note type="peer" n="Comité de lecture"/>
<!-- @n : Actes ; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:proceedings -->
<note type="proceedings" n="Acte"/>
<!-- @n : Type de rapport ; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:reportType -->
<note type="report" n="Type de rapport"/>
<!-- @n : Type d'image ; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:imageType -->
<note type="image" n="Type d'image"/>
<!-- @n : Niveau de cours ; https://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:lectureType -->
<note type="lecture" n="Niveau du cours"/>
Description Bibliographique
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc
<biblStruct> <!-- Référence bibliographique structurée -->
<analytic><!-- Niveau analitique (titre, sous titre, auteurs) --></analytic>
<monogr><!-- Niveau monographique --></monogr>
<series><!– Editeur collection, nom du cours --></series>
<idno type="doi"><!-- Liste d’identifiants du document --></idno>
<ref type="seeAlso"><!-- Complément sur le dépôt --></ref>
<ref type="publisher"><!-- Lien vers le publisher --></ref>
<relatedItem><!-- Ressources liées --></relatedItem>
</biblStruct>
Description de la source
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc/tei:biblStruct/tei:analytic
<?xml version="1.0" encoding="UTF-8"?>
<title xml:lang="en">Titre en anglais</title>
<title xml:lang="fr">Titre en français</title>
<title type="sub" xml:lang="fr">Sous-titre en français</title>
<title type="sub" xml:lang="de">Sous titre en allemand</title>
<!-- @role : fonction de l'auteur https://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:relator -->
<author role="aut">
<persName>
<forename type="first">Prénom</forename>
<forename type="middle">Autre prénom</forename>
<surname>Nom de famille</surname>
</persName>
<email>Adresse mail</email>
<ptr type="url" target="URL du site web"/>
<!-- liste des auteurs http://api.archives-ouvertes.fr/ref/author?q=*&fl=* -->
<idno type="idhal">IdHal de l'auteur dans HAL</idno>
<orgName ref="#struct-Identifiant d’une structure connue dans HAL"/>
<!-- liste des structures dans AuréHAL http://api.archives-ouvertes.fr/ref/structure?q=*&fl=* -->
<affiliation ref="#struct-Identifiant d’une structure connue dans HAL"/>
<affiliation ref="#localStruct-Identifiant interne d’une nouvelle structure à définir dans la section back"/>
</author>
Ajouter un auteur (1)
• A partir d’un identifiant d’une forme auteur
• A partir d’un idHAL
• A partir d’un identifant externe
<author role="crp">
<idno type="halauthorid">49567</idno>
</author>
<author role="aut">
<idno type="idhal" notation="string">laurentromary</idno>
<!-- ou -->
<idno type="idhal" notation="numeric">307</idno>
</author>
<author role="aut">
<idno type="ORCID">0000-0002-0756-0508</idno>
</author>
Ajouter un auteur (2)
• Créer un nouvel auteur
<author role="aut">
<persName>
<forename type="first">Laurent</forename>
<surname>Romary</surname>
</persName>
<email>laurent.romary@inria.fr</email>
<affiliation ref="#localStruct-1"/>
</author>
<author role="aut">
<idno type="halauthorid">98062</idno>
<affiliation ref="#struct-3102"/>
</author>
<author role="aut">
<idno type="idhal" notation="string">laurentromary</idno>
<affiliation ref="#struct-3102"/>
</author>
Description monographique
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc/tei:biblStruct/tei:monogr
• Ajout d’un journal à partir de son identifiant AuréHAL
ou en le créant directement dans la TEI (issn, eissn, j)
<idno type="nnt">Numéro National de Thèse</idno>
<idno type="isbn">ISBN</idno>
<idno type="eisbn">eISBN</idno>
<idno type="patentNumber">Numéro de brevet</idno>
<idno type="reportNumber">Numéro de rapport</idno>
<idno type="localRef">Référence interne</idno>
<!-- Référentiel AuréHAL des journaux https://api.archives-ouvertes.fr/ref/journal?q=*&fl=* -->
<idno type="halJournalId">Identifiant du journal dans HAL</idno>
<idno type="issn">ISSN</idno>
<idno type="eissn">eISSN</idno>
<title level="j">Nom du journal</title>
<title level="m">Titre de l'ouvrage</title>
<title level="m">Source</title>
<title level="u">Nom du cours</title>
Description monographique
<meeting>
<title>Titre de la conférence</title>
<date type="start">Date de début de la conférence</date>
<date type="end">Date de fin de la conférence</date>
<settlement>Ville</settlement>
<country key="Code Pays"/>
</meeting>
<respStmt>
<name>Organisateur de la conférence</name>
</respStmt>
<settlement>Ville</settlement>
<country key="Code Pays"/>
<editor>Editeur scientifique</editor>
<imprint>
<publisher>Editeur commercial</publisher>
<biblScope unit="serie">Série</biblScope>
<biblScope unit="volume">Volume</biblScope>
<biblScope unit="issue">Issue</biblScope>
<biblScope unit="pp">Numéro de page</biblScope>
<date type="datePub">Date de publication</date>
<date type="dateDefended">Date de soutenance</date>
<date type="dateEpub">Date de publication electronique</date>
</imprint>
<authority type="institution">Organisme de thèse, mémoire</authority>
<authority type="school">Ecole doctorale</authority>
<authority type="supervisor">Directeur de thèse</authority>
<authority type="jury">Jury</authority>
Identifiants, Liens, Ressources Liées
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc/tei:biblStruct/tei:idno | tei:ref | tei:relatedItem
• Identifiants externes
• Complément sur la ressource
• Ressources liées dans HAL
<!-- @type : doi, arxiv, bibcode, ird, pubmed, ads, pubmedcentral, irstea, sciencespo, oatao,
ensam, prodinra -->
<idno type="Type d’identifiant">Identifiant</idno>
<ref type="seeAlso">Lien vers la ressource complémentaire</ref>
<!-- @type : liste accessible https://api.archives-
ouvertes.fr/ref/metadataList?q=metaName_s:relatedType-->
<relatedItem type="Type de relation" target="Lien vers le document" >
Descriptif de la relation
</relatedItem>
Description non bibliographique
/tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:profileDesc
<profileDesc>
<langUsage>
<language ident="Code langue du texte"/>
</langUsage>
<textClass>
<keywords scheme="author">
<term xml:lang="Code langue du mot clé">Mot clé</term>
</keywords>
<classCode scheme="classification">Classification (pacs, msc, ...)</classCode>
<classCode scheme="acm">Code ACM</classCode>
<classCode scheme="mesh">Mot clé MESH</classCode>
<classCode scheme="jel">Mot clé JEL</classCode>
<!-- @n : disciplines HAL http://api.archives-ouvertes.fr/ref/domain?q=* -->
<classCode scheme="halDomain" n="Code discipline HAL"/>
<!-- @n : Type de document HAL http://api.archives-ouvertes.fr/ref/doctype?q=* -->
<classCode scheme="halTypology" n="Type de dépôt"/>
</textClass>
<abstract xml:lang="Code langue du résumé">Résumé</abstract>
<particDesc>
<org type="consortium">Collaboration</org>
</particDesc>
</profileDesc>
Disciplines et types de dépôt dépendent du portail
Métadonnées spécificités portails
• /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:editionStmt/tei:edition/tei:fs/tei:f
<editionStmt>
<edition>
<fs>
<f name="metadonnée libre">
<string>Valeur</string>
</f>
</fs>
<fs>
<f name="metadonnée liste prédéfinie">
<numeric>Valeur</numeric>
</f>
</fs>
</edition>
</editionStmt>
Annexes
/tei:TEI/tei:text/tei:back
• Définition des structures de recherches et projets
(ANR, européens) non connus du référentiel HAL
<back>
<listOrg type="structures">
<org type="researchteam" xml:id="localStruct-Identifiant de la
structure">...</org>
<org type="institution" xml:id="localStruct-Identifiant de la structure">...</org>
</listOrg>
<listOrg type="projects">
<org type="anrProject" xml:id="localProjanr-Identifiant du projet">...</org>
<org type="europeanProject" xml:id="localProjeurope-Identifiant du
projet">...</org>
</listOrg>
</back>
Structure de recherche
/tei:TEI/tei:text/tei:back/tei:listOrg[@type ="structure"]
<!-- @type : researchteam, department, laboratory, institution -->
<org type="laboratory" xml:id="localStruct-1">
<orgName>Centre pour la Communication Scientifique Directe</orgName>
<orgName type="acronym">CCSD</orgName>
<desc>
<address>
<addrLine>25 bd Pierre de Coubertin, 69100 Villeurbanne</addrLine>
<country key="FR"/>
</address>
<ref type="url">http://ccsd.cnrs.fr</ref>
</desc>
<listRelation>
<relation name="UMS3668" active="#struct-100000"/>
<relation active="#struct-100001"/>
<relation active="#localStruct-2"/>
</listRelation>
</org>
<org type="institution" xml:id="localStruct-2">
<orgName>Université de Lyon</orgName>
<orgName type="acronym">PRES de Lyon</orgName>
<desc>
<address>
<country key="FR"/>
</address>
<ref type="url">http://www.univ-lyon.fr</ref>
</desc>
</org>
Projets
/tei:TEI/tei:text/tei:back/tei:listOrg[@type ="project"]
• Projet ANR
• Projet européen
<org type="anrProject" xml:id="localProjanr-Identifiant du projet européen">
<idno type="anr">Numéro du projet</idno>
<orgName>Nom</orgName>
<orgName type="program">Programme</orgName>
<desc>Description</desc>
<date>Année</date>
</org>
<org type="europeanProject" xml:id="localProjeurope-Identifiant du projet européen">
<idno type="program">Programme</idno>
<idno type="number">Numéro de projet</idno>
<idno type="call">Code</idno>
<orgName>Nom</orgName>
<desc>Description</desc>
<date type="start">Date de début</date>
<date type="end">Date de fin</date>
</org>
Liens utiles
• Schéma XML-TEI
• https://hal.archives-ouvertes.fr/documents/aofr.xsd
• Exemples fichiers TEI
• https://github.com/CCSDForge/HAL
• Documentation API SWORD
• https://api.archives-ouvertes.fr/docs/sword

Contenu connexe

Tendances

Using RDA for Archives and Manuscripts
Using RDA for Archives and ManuscriptsUsing RDA for Archives and Manuscripts
Using RDA for Archives and Manuscripts
Adrienne Pruitt
 
Aligner vos données avec Wikidata grâce à l'outil Open Refine
Aligner vos données avec Wikidata grâce à l'outil Open RefineAligner vos données avec Wikidata grâce à l'outil Open Refine
Aligner vos données avec Wikidata grâce à l'outil Open Refine
Gautier Poupeau
 
Get to Know AtoM's Codebase
Get to Know AtoM's CodebaseGet to Know AtoM's Codebase
Get to Know AtoM's Codebase
Artefactual Systems - AtoM
 
Achieving 100k Queries per Hour on Hive on Tez
Achieving 100k Queries per Hour on Hive on TezAchieving 100k Queries per Hour on Hive on Tez
Achieving 100k Queries per Hour on Hive on Tez
DataWorks Summit/Hadoop Summit
 
Portails, présentation de l'offre de logiciels
Portails, présentation de l'offre de logicielsPortails, présentation de l'offre de logiciels
Portails, présentation de l'offre de logiciels
Marc Maisonneuve
 
Streaming sql and druid
Streaming sql and druid Streaming sql and druid
Streaming sql and druid
arupmalakar
 
Common Crawl: An Open Repository of Web Data
Common Crawl: An Open Repository of Web DataCommon Crawl: An Open Repository of Web Data
Common Crawl: An Open Repository of Web Data
huguk
 
Apache hadoop hue overview and introduction
Apache hadoop hue overview and introductionApache hadoop hue overview and introduction
Apache hadoop hue overview and introduction
BigClasses Com
 
Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"
Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"
Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"
ABES
 
HBase in Practice
HBase in Practice HBase in Practice
HBase in Practice
DataWorks Summit/Hadoop Summit
 
Introduction to Solr
Introduction to SolrIntroduction to Solr
Introduction to Solr
Erik Hatcher
 
Informatique en bibliothèque
Informatique en bibliothèqueInformatique en bibliothèque
Informatique en bibliothèque
Flora Gousset
 
JSON-LD: JSON for the Social Web
JSON-LD: JSON for the Social WebJSON-LD: JSON for the Social Web
JSON-LD: JSON for the Social Web
Gregg Kellogg
 
Apache Ranger
Apache RangerApache Ranger
Apache Ranger
Rommel Garcia
 
How Solr Search Works
How Solr Search WorksHow Solr Search Works
How Solr Search Works
Atlogys Technical Consulting
 
Découverte du SPARQL endpoint de HAL
Découverte du SPARQL endpoint de HALDécouverte du SPARQL endpoint de HAL
Découverte du SPARQL endpoint de HAL
Gautier Poupeau
 
LUX - Cross Collections Cultural Heritage at Yale
LUX - Cross Collections Cultural Heritage at YaleLUX - Cross Collections Cultural Heritage at Yale
LUX - Cross Collections Cultural Heritage at Yale
Robert Sanderson
 
ORC File - Optimizing Your Big Data
ORC File - Optimizing Your Big DataORC File - Optimizing Your Big Data
ORC File - Optimizing Your Big Data
DataWorks Summit
 
Le livre numérique en bibliothèque publique et bibliothèque universitaire.
Le livre numérique en bibliothèque publique et bibliothèque universitaire.Le livre numérique en bibliothèque publique et bibliothèque universitaire.
Le livre numérique en bibliothèque publique et bibliothèque universitaire.
Dujol Lionel
 
Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0
Cloudera, Inc.
 

Tendances (20)

Using RDA for Archives and Manuscripts
Using RDA for Archives and ManuscriptsUsing RDA for Archives and Manuscripts
Using RDA for Archives and Manuscripts
 
Aligner vos données avec Wikidata grâce à l'outil Open Refine
Aligner vos données avec Wikidata grâce à l'outil Open RefineAligner vos données avec Wikidata grâce à l'outil Open Refine
Aligner vos données avec Wikidata grâce à l'outil Open Refine
 
Get to Know AtoM's Codebase
Get to Know AtoM's CodebaseGet to Know AtoM's Codebase
Get to Know AtoM's Codebase
 
Achieving 100k Queries per Hour on Hive on Tez
Achieving 100k Queries per Hour on Hive on TezAchieving 100k Queries per Hour on Hive on Tez
Achieving 100k Queries per Hour on Hive on Tez
 
Portails, présentation de l'offre de logiciels
Portails, présentation de l'offre de logicielsPortails, présentation de l'offre de logiciels
Portails, présentation de l'offre de logiciels
 
Streaming sql and druid
Streaming sql and druid Streaming sql and druid
Streaming sql and druid
 
Common Crawl: An Open Repository of Web Data
Common Crawl: An Open Repository of Web DataCommon Crawl: An Open Repository of Web Data
Common Crawl: An Open Repository of Web Data
 
Apache hadoop hue overview and introduction
Apache hadoop hue overview and introductionApache hadoop hue overview and introduction
Apache hadoop hue overview and introduction
 
Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"
Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"
Jabes 2021 - Session "Repenser le SI de l'Abes en période de transition(s)"
 
HBase in Practice
HBase in Practice HBase in Practice
HBase in Practice
 
Introduction to Solr
Introduction to SolrIntroduction to Solr
Introduction to Solr
 
Informatique en bibliothèque
Informatique en bibliothèqueInformatique en bibliothèque
Informatique en bibliothèque
 
JSON-LD: JSON for the Social Web
JSON-LD: JSON for the Social WebJSON-LD: JSON for the Social Web
JSON-LD: JSON for the Social Web
 
Apache Ranger
Apache RangerApache Ranger
Apache Ranger
 
How Solr Search Works
How Solr Search WorksHow Solr Search Works
How Solr Search Works
 
Découverte du SPARQL endpoint de HAL
Découverte du SPARQL endpoint de HALDécouverte du SPARQL endpoint de HAL
Découverte du SPARQL endpoint de HAL
 
LUX - Cross Collections Cultural Heritage at Yale
LUX - Cross Collections Cultural Heritage at YaleLUX - Cross Collections Cultural Heritage at Yale
LUX - Cross Collections Cultural Heritage at Yale
 
ORC File - Optimizing Your Big Data
ORC File - Optimizing Your Big DataORC File - Optimizing Your Big Data
ORC File - Optimizing Your Big Data
 
Le livre numérique en bibliothèque publique et bibliothèque universitaire.
Le livre numérique en bibliothèque publique et bibliothèque universitaire.Le livre numérique en bibliothèque publique et bibliothèque universitaire.
Le livre numérique en bibliothèque publique et bibliothèque universitaire.
 
Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0
 

Similaire à TEI HAL - import SWORD

Drupal 8, symfony
Drupal 8, symfonyDrupal 8, symfony
Drupal 8, symfonyjeUXdiCode
 
Controller_Rest.pptx
Controller_Rest.pptxController_Rest.pptx
Controller_Rest.pptx
ManalAg
 
Réseau Aramis : journée de familiarisation aux API de HAL - 25 février 2015
Réseau Aramis : journée de familiarisation aux API de HAL -  25 février 2015Réseau Aramis : journée de familiarisation aux API de HAL -  25 février 2015
Réseau Aramis : journée de familiarisation aux API de HAL - 25 février 2015
OAccsd
 
HAL : optimisation du referencement et de la diffusion des contenus
HAL : optimisation du referencement et de la diffusion des contenusHAL : optimisation du referencement et de la diffusion des contenus
HAL : optimisation du referencement et de la diffusion des contenus
OAccsd
 
Cours 8 squid.pdf
Cours 8 squid.pdfCours 8 squid.pdf
Cours 8 squid.pdf
FayalBougherbal
 
Les évolutions de HAL : présentation du 20 septembre 2017
Les évolutions de HAL : présentation du 20 septembre 2017Les évolutions de HAL : présentation du 20 septembre 2017
Les évolutions de HAL : présentation du 20 septembre 2017
OAccsd
 
Introduction à Laravel
Introduction à LaravelIntroduction à Laravel
Introduction à Laravel
Abdoulaye Dieng
 
HTML
HTMLHTML
HTML
Neovov
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API REST
Abdoulaye Dieng
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
Abdoulaye Dieng
 
Atelier : Développement rapide d&rsquo;une application basée surXWiki
Atelier : Développement rapide d&rsquo;une application basée surXWikiAtelier : Développement rapide d&rsquo;une application basée surXWiki
Atelier : Développement rapide d&rsquo;une application basée surXWiki
Korteby Farouk
 
Jug algeria x wiki-atelier
Jug algeria x wiki-atelierJug algeria x wiki-atelier
Jug algeria x wiki-atelierAlgeria JUG
 
Les API de HAL - Formation CCSD mars 2016
Les API de HAL - Formation CCSD mars 2016Les API de HAL - Formation CCSD mars 2016
Les API de HAL - Formation CCSD mars 2016
OAccsd
 
Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)
Thibaud Vibes
 
Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...
Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...
Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...
Phonothèque MMSH
 
HTML5
HTML5HTML5
HTML5
Neovov
 
Archives ouvertes et thèses en ligne : HAL et TEL
Archives ouvertes et thèses en ligne : HAL et TELArchives ouvertes et thèses en ligne : HAL et TEL
Archives ouvertes et thèses en ligne : HAL et TEL
BUPMCformM
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPjulien pauli
 
Les API de recherche de HAL
Les API de recherche de HALLes API de recherche de HAL
Les API de recherche de HAL
OAccsd
 
Apache server configuration & sécurisation -
Apache server configuration & sécurisation  -Apache server configuration & sécurisation  -
Apache server configuration & sécurisation -
achraf_ing
 

Similaire à TEI HAL - import SWORD (20)

Drupal 8, symfony
Drupal 8, symfonyDrupal 8, symfony
Drupal 8, symfony
 
Controller_Rest.pptx
Controller_Rest.pptxController_Rest.pptx
Controller_Rest.pptx
 
Réseau Aramis : journée de familiarisation aux API de HAL - 25 février 2015
Réseau Aramis : journée de familiarisation aux API de HAL -  25 février 2015Réseau Aramis : journée de familiarisation aux API de HAL -  25 février 2015
Réseau Aramis : journée de familiarisation aux API de HAL - 25 février 2015
 
HAL : optimisation du referencement et de la diffusion des contenus
HAL : optimisation du referencement et de la diffusion des contenusHAL : optimisation du referencement et de la diffusion des contenus
HAL : optimisation du referencement et de la diffusion des contenus
 
Cours 8 squid.pdf
Cours 8 squid.pdfCours 8 squid.pdf
Cours 8 squid.pdf
 
Les évolutions de HAL : présentation du 20 septembre 2017
Les évolutions de HAL : présentation du 20 septembre 2017Les évolutions de HAL : présentation du 20 septembre 2017
Les évolutions de HAL : présentation du 20 septembre 2017
 
Introduction à Laravel
Introduction à LaravelIntroduction à Laravel
Introduction à Laravel
 
HTML
HTMLHTML
HTML
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API REST
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
Atelier : Développement rapide d&rsquo;une application basée surXWiki
Atelier : Développement rapide d&rsquo;une application basée surXWikiAtelier : Développement rapide d&rsquo;une application basée surXWiki
Atelier : Développement rapide d&rsquo;une application basée surXWiki
 
Jug algeria x wiki-atelier
Jug algeria x wiki-atelierJug algeria x wiki-atelier
Jug algeria x wiki-atelier
 
Les API de HAL - Formation CCSD mars 2016
Les API de HAL - Formation CCSD mars 2016Les API de HAL - Formation CCSD mars 2016
Les API de HAL - Formation CCSD mars 2016
 
Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)Presentation solr 10 Aout 2011 (french)
Presentation solr 10 Aout 2011 (french)
 
Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...
Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...
Déposer ses articles scientifiques dans HAL-SHS et valoriser ses collections ...
 
HTML5
HTML5HTML5
HTML5
 
Archives ouvertes et thèses en ligne : HAL et TEL
Archives ouvertes et thèses en ligne : HAL et TELArchives ouvertes et thèses en ligne : HAL et TEL
Archives ouvertes et thèses en ligne : HAL et TEL
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHP
 
Les API de recherche de HAL
Les API de recherche de HALLes API de recherche de HAL
Les API de recherche de HAL
 
Apache server configuration & sécurisation -
Apache server configuration & sécurisation  -Apache server configuration & sécurisation  -
Apache server configuration & sécurisation -
 

Plus de OAccsd

Reussir mon depot HAL
Reussir mon depot HALReussir mon depot HAL
Reussir mon depot HAL
OAccsd
 
Reussir mon depot HAL
Reussir mon depot HALReussir mon depot HAL
Reussir mon depot HAL
OAccsd
 
HAL - Evolution du referentiel auteurs 2021
HAL - Evolution du referentiel auteurs 2021HAL - Evolution du referentiel auteurs 2021
HAL - Evolution du referentiel auteurs 2021
OAccsd
 
Deposer dans HAL
Deposer dans HALDeposer dans HAL
Deposer dans HAL
OAccsd
 
SciencesConf : plateforme de gestion de congres scientifiques
SciencesConf : plateforme de gestion de congres scientifiquesSciencesConf : plateforme de gestion de congres scientifiques
SciencesConf : plateforme de gestion de congres scientifiques
OAccsd
 
La moderation dans HAL
La moderation dans HALLa moderation dans HAL
La moderation dans HAL
OAccsd
 
AUReHAL : referentiel des structures de recherche. Administration des donnees
AUReHAL : referentiel des structures de recherche. Administration des donneesAUReHAL : referentiel des structures de recherche. Administration des donnees
AUReHAL : referentiel des structures de recherche. Administration des donnees
OAccsd
 
Plugin HAL pour Wordpress
Plugin HAL pour WordpressPlugin HAL pour Wordpress
Plugin HAL pour Wordpress
OAccsd
 
Utiliser HAL pour valoriser ses travaux et renforcer son identité numérique
Utiliser HAL pour valoriser ses travaux et renforcer son identité numériqueUtiliser HAL pour valoriser ses travaux et renforcer son identité numérique
Utiliser HAL pour valoriser ses travaux et renforcer son identité numérique
OAccsd
 
Episciences, an epijournal management platform
Episciences, an epijournal management platformEpisciences, an epijournal management platform
Episciences, an epijournal management platform
OAccsd
 
Comment diffuser mes données de recherche ?
Comment diffuser mes données de recherche ?Comment diffuser mes données de recherche ?
Comment diffuser mes données de recherche ?
OAccsd
 
Les epirevues avec Episciences
Les epirevues avec EpisciencesLes epirevues avec Episciences
Les epirevues avec Episciences
OAccsd
 
Panorama des identifiants auteurs
Panorama des identifiants auteursPanorama des identifiants auteurs
Panorama des identifiants auteurs
OAccsd
 
IdHAL et CV
IdHAL et CVIdHAL et CV
IdHAL et CV
OAccsd
 
Mes statistiques dans HAL
Mes statistiques dans HALMes statistiques dans HAL
Mes statistiques dans HAL
OAccsd
 
Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...
Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...
Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...
OAccsd
 
Rechercher dans HAL et exploiter les résultats
Rechercher dans HAL et exploiter les résultatsRechercher dans HAL et exploiter les résultats
Rechercher dans HAL et exploiter les résultats
OAccsd
 
Déposer une thèse dans TEL ou HAL
Déposer une thèse dans TEL ou HALDéposer une thèse dans TEL ou HAL
Déposer une thèse dans TEL ou HAL
OAccsd
 
Déposer dans HAL mode d'emploi
Déposer dans HAL mode d'emploiDéposer dans HAL mode d'emploi
Déposer dans HAL mode d'emploi
OAccsd
 
Utiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHS
Utiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHSUtiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHS
Utiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHS
OAccsd
 

Plus de OAccsd (20)

Reussir mon depot HAL
Reussir mon depot HALReussir mon depot HAL
Reussir mon depot HAL
 
Reussir mon depot HAL
Reussir mon depot HALReussir mon depot HAL
Reussir mon depot HAL
 
HAL - Evolution du referentiel auteurs 2021
HAL - Evolution du referentiel auteurs 2021HAL - Evolution du referentiel auteurs 2021
HAL - Evolution du referentiel auteurs 2021
 
Deposer dans HAL
Deposer dans HALDeposer dans HAL
Deposer dans HAL
 
SciencesConf : plateforme de gestion de congres scientifiques
SciencesConf : plateforme de gestion de congres scientifiquesSciencesConf : plateforme de gestion de congres scientifiques
SciencesConf : plateforme de gestion de congres scientifiques
 
La moderation dans HAL
La moderation dans HALLa moderation dans HAL
La moderation dans HAL
 
AUReHAL : referentiel des structures de recherche. Administration des donnees
AUReHAL : referentiel des structures de recherche. Administration des donneesAUReHAL : referentiel des structures de recherche. Administration des donnees
AUReHAL : referentiel des structures de recherche. Administration des donnees
 
Plugin HAL pour Wordpress
Plugin HAL pour WordpressPlugin HAL pour Wordpress
Plugin HAL pour Wordpress
 
Utiliser HAL pour valoriser ses travaux et renforcer son identité numérique
Utiliser HAL pour valoriser ses travaux et renforcer son identité numériqueUtiliser HAL pour valoriser ses travaux et renforcer son identité numérique
Utiliser HAL pour valoriser ses travaux et renforcer son identité numérique
 
Episciences, an epijournal management platform
Episciences, an epijournal management platformEpisciences, an epijournal management platform
Episciences, an epijournal management platform
 
Comment diffuser mes données de recherche ?
Comment diffuser mes données de recherche ?Comment diffuser mes données de recherche ?
Comment diffuser mes données de recherche ?
 
Les epirevues avec Episciences
Les epirevues avec EpisciencesLes epirevues avec Episciences
Les epirevues avec Episciences
 
Panorama des identifiants auteurs
Panorama des identifiants auteursPanorama des identifiants auteurs
Panorama des identifiants auteurs
 
IdHAL et CV
IdHAL et CVIdHAL et CV
IdHAL et CV
 
Mes statistiques dans HAL
Mes statistiques dans HALMes statistiques dans HAL
Mes statistiques dans HAL
 
Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...
Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...
Bib2Hal, import par lot dans HAL à partir d'un fichier BibTeX -formation CCSD...
 
Rechercher dans HAL et exploiter les résultats
Rechercher dans HAL et exploiter les résultatsRechercher dans HAL et exploiter les résultats
Rechercher dans HAL et exploiter les résultats
 
Déposer une thèse dans TEL ou HAL
Déposer une thèse dans TEL ou HALDéposer une thèse dans TEL ou HAL
Déposer une thèse dans TEL ou HAL
 
Déposer dans HAL mode d'emploi
Déposer dans HAL mode d'emploiDéposer dans HAL mode d'emploi
Déposer dans HAL mode d'emploi
 
Utiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHS
Utiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHSUtiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHS
Utiliser les archives ouvertes pour valoriser ses travaux : l'exemple de HAL-SHS
 

TEI HAL - import SWORD

  • 1. Réseau Aramis – 30 mars 2017 TEI HAL import SWORD Y. Barborini
  • 3. Simple Web-service Offering Repository Deposit • Basé sur Atom Publishing Protocol (APP) • Utilisé par d’autres AO & logiciels • arXiv, Dspace, Eprints, … • API REST HTTP • Verbes HTTP : • GET : statut d’une ressource • POST : nouveau dépôt • PUT : modification des métadonnées / nouvelle version • DELETE : suppression d’une ressource http://swordapp.org/
  • 4. Entêtes HTTP (1) • Content-Type : • text/xml pour le dépôt d’un fichier XML • application/zip pour le dépôt d’une archive ZIP contenant un fichier XML + les fichiers associés • Content-Disposition : • attachment; filename=tei.xml à utiliser pour indiquer le nom du fichier XML dans le ZIP • Packaging : • http://purl.org/net/sword-types/AOfr : format AOfr - TEI HAL • http://jats.nlm.nih.gov/publishing/tag-library/ : format JATS • Content-MD5 : • Signature MD5 : vérifie l’intégrité du contenu envoyé
  • 5. Entêtes HTTP (2) • On-Behalf-Of : Dépôt pour le compte d’un utilisateur HAL • UID ou LOGIN du compte HAL • IDHAL ou ORCID (prochainement) • Export-To-Arxiv • true / false : indique si le dépôt doit être transféré sur ArXiv • Export-To-PMC • true / false : indique si le dépôt doit être transféré sur Pubmed Central • Hide-For-RePEc • true / false : permet de cacher le dépôt du réservoir accessible à RePEc dans l'archive HAL • Hide-In-OAI • true / false : permet de cacher le dépôt du réservoir OAI-PMH et du Sitemap • X-Allow-Completion : • idext : récupération des métadonnées à partir d'un identifiant externe DOI, arXivID, … • grobid : récupération des métadonnées à partir du PDF soumis via l'outil GROBID • affiliation : recherche des affiliations des auteurs en se basant sur le référentiel AURéHAL
  • 6. Statut d’une ressource • GET api.archives-ouvertes.fr/sword/[identifiant] • Réponse • HTTP/1.1 200 OK • statut : accept | verify | update | delete curl –X GET -u login:pwd https://api.archives-ouvertes.fr/sword/hal- 00000001v2 <?xml version="1.0" encoding="utf-8"?> <document id="hal-00000001" version="2"> <status>accept</status> <comment></comment> </document>
  • 7. Suppression d’une ressource • DELETE api.archives-ouvertes.fr/sword/[identifiant] • Réponse • Suppression OK : HTTP/1.1 204 No Content • Suppression NOK : Code Erreur curl –X DELETE -u login:pwd https://api.archives-ouvertes.fr/sword/hal- 01039627
  • 8. Dépôt d’une ressource (1) • POST api.archives-ouvertes.fr/sword/[portail] • Liste des portails accessible via l’API : https://api.archives- ouvertes.fr/ref/instance • Format pivot basé sur la TEI • https://hal.archives-ouvertes.fr/documents/aofr.xsd • Dépôt d’un fichier XML (Content-Type:text/xml) Notice ou Texte intégral non intégré au dépôt • Dépôt d’une archive ZIP (Content-Type:application/zip)  Texte intégral : fichier(s) intégré(s) au dépôt
  • 9. Dépôt d’une ressource (2) • Réponse • Dépôt accepté (passage diret en ligne) : HTTP/1.1 202 Accepted • Dépôt créé (en modération dans HAL) : HTTP/1.1 201 Created • Problème lors du dépôt : Code Erreur curl -X POST -u login:pwd https://api.archives-ouvertes.fr/sword/hal -H "X- Packaging:http://purl.org/net/sword-types/AOfr" -H "Content-Type:text/xml" - -data-binary @tei.xml
  • 10. Dépôt d’une ressource (3) <?xml version="1.0" encoding="utf-8"?> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sword="http://purl.org/net/sword/terms/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:hal="http://hal.archives-ouvertes.fr/"> <title>Accepted media deposit to HAL</title> <id>hal-01040864</id> <hal:password>9322one</hal:password> <hal:version>1</hal:version> <updated>2017-03-28T08:56:23+02:00</updated> <summary>A media deposit was stored in the HAL workspace</summary> <sword:treatment>stored in HAL workspace</sword:treatment> <sword:userAgent>HAL SWORD API Server</sword:userAgent> <source> <generator uri="https://api.archives-ouvertes.fr/sword" version="1.0">hal@ccsd.cnrs.fr</generator> </source> <link rel="alternate" href="https://hal.archives-ouvertes.fr/hal-01040864"/> </entry>
  • 11. Modification des métadonnées • PUT api.archives-ouvertes.fr/sword/[identifiant] • Réponse • Modification OK : HTTP/1.1 200 OK • Modification NOK : Code Erreur curl -X PUT -u login:pwd https://api.archives-ouvertes.fr/sword/hal- 01040864 -H "X-Packaging:http://purl.org/net/sword-types/AOfr" -H "Content-Type:text/xml" --data-binary @new_tei.xml
  • 12. Dépôt d’une nouvelle version • Idem modification des métadonnées + ajout du texte intégral • PUT api.archives-ouvertes.fr/sword/[identifiant] • Réponse • Dépôt OK : HTTP/1.1 201 Created • Dépôt NOK : Code Erreur curl -X PUT -u login:pwd https://api.archives-ouvertes.fr/sword/hal- 01040864 -H "X-Packaging:http://purl.org/net/sword-types/AOfr" -H "Content-Type:text/xml" --data-binary @new_tei.xml
  • 13. Gestion des erreurs (1) • HTTP/1.1 4XX • 406 Not Acceptable • Packaging non reconnu • Content-type non reconnu • Erreur dans chargement du fichier XML • 412 Precondition Failed • Problème dans la vérification du MD5 • 403 Forbidden • Problème d’authentification • 405 Method Not Allowed • Utilisation d’un verbe HTTP non accepté • 413 Request Entity Too Large • Taille du fichier supérieur à la limite (200Mo) • 400 Bad Request • Erreur d’enregistrement
  • 14. Gestion des erreurs (2) • Xpath : /sword:error/sword:verboseDescription <?xml version="1.0" encoding="utf-8"?> <sword:error xmlns:sword="http://purl.org/net/sword/error/" xmlns="http://www.w3.org/2005/Atom" href="http://purl.org/net/sword/error/ErrorBadRequest"> <title>ERROR</title> <updated>2017-03-28T10:13:50+02:00</updated> <author> <name>HAL SWORD API Server</name> </author> <source> <generator uri="https://api.archives-ouvertes.fr/sword" version="1.0">hal@ccsd.cnrs.fr</generator> </source> <summary>Some parameters sent with the request were not understood</summary> <sword:treatment>processing failed</sword:treatment> <sword:verboseDescription>{"meta":{"abstract":{"isEmpty":"Vous devez remplir ce champ"}}}</sword:verboseDescription> <link rel="alternate" href="https://api.archives-ouvertes.fr" type="text/html"/> </sword:error>
  • 16. Présentation • Text encoding Initiative • Basé sur XML, Langage de marquage qui permet d’échanger des données textuelles informatisées. • Format standard pour l’import/export dans HAL • Schéma TEI import = Schéma TEI export • https://hal.archives-ouvertes.fr/documents/aofr.xsd
  • 17. Structure TEI <TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:hal="http://hal.archives-ouvertes.fr"> <text> <body> <listBibl> <biblFull> <!-- Référence bibliographique structurée --> <titleStmt> <!-- Mention de titre (titre, personnes, responsables) --> </titleStmt> <editionStmt> <!-- Edition (Fichiers) --> </editionStmt> <publicationStmt> <!-- Publication (Licence) --> </publicationStmt> <seriesStmt> <!-- Collection --> </seriesStmt> <notesStmt> <!– Notes, commentaires --> </notesStmt> <sourceDesc> <!-- Description bibliographique --> </sourceDesc> <profileDesc> <!-- Description des aspects non bibliographiques --> </profileDesc> </biblFull> </listBibl> </body> <back> <listOrg type="structures"> <!-- Définition de nouvelles structures --> </listOrg> <listOrg type="projects"> <!-- Définition de nouveaux projets (ANR, Eur) --> </listOrg> </back> </text> </TEI>
  • 18. Mention de titre /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:titleStmt Financement • Projet ANR • Projet Européen • Autre financement <!-- Accès au référentiel https://api.archives-ouvertes.fr/ref/anrProject?q=*&fl=* --> <funder ref="#projanr-Identifiant du projet ANR dans AuréHAL"/> <funder ref="#localProjanr-Identifiant du projet défini dans la partie back du fichier"/> <!-- Accès au référentiel : http://api.archives-ouvertes.fr/ref/europeanProject?q=*&fl=* --> <funder ref="#projeurop-Identifiant du projet européen dans AuréHAL"/> <funder ref="#localProjeurop-Identifiant du projet défini dans la partie back du fichier"/> <funder>Financement</funder>
  • 19. Section Edition /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:editionStmt • Date d’écriture • Fichiers associés au dépôt <date type="whenWritten">Date d'écriture (ex: 2014-09-08)</date> <!-- @titre : référentiel type de fichier http://api.archives- ouvertes.fr/ref/metadataList?q=metaName_s:fileType --> <!-- @subtype : référentiel origine du fichier http://api.archives- ouvertes.fr/ref/metadataList?q=metaName_s:fileSource --> <ref type="file" subtype="author" target="Lien vers le pdf" n="1(principal)"> <desc>Description du fichier</desc> <date notBefore="Date d'embargo (2015-02-14)"/> </ref>
  • 20. Section Publication /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:publicationStmt • Licence <availability> <!-- @target : Référentiel des licences http://api.archives- ouvertes.fr/ref/metadataList?q=metaName_s:licence --> <licence target="Licence"/> </availability>
  • 21. Collections /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:seriesStmt • Tamponnage au moment du dépôt • Il faut être gestionnaire de collection et tamponner avec ses collections <!-- @n : identifiant de la collection. Accès à la liste https://api.archives- ouvertes.fr/search/?q=*&rows=0&facet=true&facet.field=collCode_s --> <idno type="stamp" n="Identifiant de la collection"/>
  • 22. Notes /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:notesStmt <note type="commentary">Commentaire</note> <note type="description">Description</note> <!-- @n : audience; https://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:audience --> <note type="audience" n="Audience"/> <!-- @n : conférence invitée; http://api.archives- ouvertes.fr/ref/metadataList?q=metaName_s:invitedCommunication --> <note type="invited" n="Conférence invitée"/> <!-- @n : vulgarisation; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:popularLevel --> <note type="popular" n="Vulgarisation"/> <!-- @n : Comité de lecture ; https://api.archives- ouvertes.fr/ref/metadataList?q=metaName_s:peerReviewing --> <note type="peer" n="Comité de lecture"/> <!-- @n : Actes ; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:proceedings --> <note type="proceedings" n="Acte"/> <!-- @n : Type de rapport ; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:reportType --> <note type="report" n="Type de rapport"/> <!-- @n : Type d'image ; http://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:imageType --> <note type="image" n="Type d'image"/> <!-- @n : Niveau de cours ; https://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:lectureType --> <note type="lecture" n="Niveau du cours"/>
  • 23. Description Bibliographique /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc <biblStruct> <!-- Référence bibliographique structurée --> <analytic><!-- Niveau analitique (titre, sous titre, auteurs) --></analytic> <monogr><!-- Niveau monographique --></monogr> <series><!– Editeur collection, nom du cours --></series> <idno type="doi"><!-- Liste d’identifiants du document --></idno> <ref type="seeAlso"><!-- Complément sur le dépôt --></ref> <ref type="publisher"><!-- Lien vers le publisher --></ref> <relatedItem><!-- Ressources liées --></relatedItem> </biblStruct>
  • 24. Description de la source /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc/tei:biblStruct/tei:analytic <?xml version="1.0" encoding="UTF-8"?> <title xml:lang="en">Titre en anglais</title> <title xml:lang="fr">Titre en français</title> <title type="sub" xml:lang="fr">Sous-titre en français</title> <title type="sub" xml:lang="de">Sous titre en allemand</title> <!-- @role : fonction de l'auteur https://api.archives-ouvertes.fr/ref/metadataList?q=metaName_s:relator --> <author role="aut"> <persName> <forename type="first">Prénom</forename> <forename type="middle">Autre prénom</forename> <surname>Nom de famille</surname> </persName> <email>Adresse mail</email> <ptr type="url" target="URL du site web"/> <!-- liste des auteurs http://api.archives-ouvertes.fr/ref/author?q=*&fl=* --> <idno type="idhal">IdHal de l'auteur dans HAL</idno> <orgName ref="#struct-Identifiant d’une structure connue dans HAL"/> <!-- liste des structures dans AuréHAL http://api.archives-ouvertes.fr/ref/structure?q=*&fl=* --> <affiliation ref="#struct-Identifiant d’une structure connue dans HAL"/> <affiliation ref="#localStruct-Identifiant interne d’une nouvelle structure à définir dans la section back"/> </author>
  • 25. Ajouter un auteur (1) • A partir d’un identifiant d’une forme auteur • A partir d’un idHAL • A partir d’un identifant externe <author role="crp"> <idno type="halauthorid">49567</idno> </author> <author role="aut"> <idno type="idhal" notation="string">laurentromary</idno> <!-- ou --> <idno type="idhal" notation="numeric">307</idno> </author> <author role="aut"> <idno type="ORCID">0000-0002-0756-0508</idno> </author>
  • 26. Ajouter un auteur (2) • Créer un nouvel auteur <author role="aut"> <persName> <forename type="first">Laurent</forename> <surname>Romary</surname> </persName> <email>laurent.romary@inria.fr</email> <affiliation ref="#localStruct-1"/> </author> <author role="aut"> <idno type="halauthorid">98062</idno> <affiliation ref="#struct-3102"/> </author> <author role="aut"> <idno type="idhal" notation="string">laurentromary</idno> <affiliation ref="#struct-3102"/> </author>
  • 27. Description monographique /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc/tei:biblStruct/tei:monogr • Ajout d’un journal à partir de son identifiant AuréHAL ou en le créant directement dans la TEI (issn, eissn, j) <idno type="nnt">Numéro National de Thèse</idno> <idno type="isbn">ISBN</idno> <idno type="eisbn">eISBN</idno> <idno type="patentNumber">Numéro de brevet</idno> <idno type="reportNumber">Numéro de rapport</idno> <idno type="localRef">Référence interne</idno> <!-- Référentiel AuréHAL des journaux https://api.archives-ouvertes.fr/ref/journal?q=*&fl=* --> <idno type="halJournalId">Identifiant du journal dans HAL</idno> <idno type="issn">ISSN</idno> <idno type="eissn">eISSN</idno> <title level="j">Nom du journal</title> <title level="m">Titre de l'ouvrage</title> <title level="m">Source</title> <title level="u">Nom du cours</title>
  • 28. Description monographique <meeting> <title>Titre de la conférence</title> <date type="start">Date de début de la conférence</date> <date type="end">Date de fin de la conférence</date> <settlement>Ville</settlement> <country key="Code Pays"/> </meeting> <respStmt> <name>Organisateur de la conférence</name> </respStmt> <settlement>Ville</settlement> <country key="Code Pays"/> <editor>Editeur scientifique</editor> <imprint> <publisher>Editeur commercial</publisher> <biblScope unit="serie">Série</biblScope> <biblScope unit="volume">Volume</biblScope> <biblScope unit="issue">Issue</biblScope> <biblScope unit="pp">Numéro de page</biblScope> <date type="datePub">Date de publication</date> <date type="dateDefended">Date de soutenance</date> <date type="dateEpub">Date de publication electronique</date> </imprint> <authority type="institution">Organisme de thèse, mémoire</authority> <authority type="school">Ecole doctorale</authority> <authority type="supervisor">Directeur de thèse</authority> <authority type="jury">Jury</authority>
  • 29. Identifiants, Liens, Ressources Liées /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:sourceDesc/tei:biblStruct/tei:idno | tei:ref | tei:relatedItem • Identifiants externes • Complément sur la ressource • Ressources liées dans HAL <!-- @type : doi, arxiv, bibcode, ird, pubmed, ads, pubmedcentral, irstea, sciencespo, oatao, ensam, prodinra --> <idno type="Type d’identifiant">Identifiant</idno> <ref type="seeAlso">Lien vers la ressource complémentaire</ref> <!-- @type : liste accessible https://api.archives- ouvertes.fr/ref/metadataList?q=metaName_s:relatedType--> <relatedItem type="Type de relation" target="Lien vers le document" > Descriptif de la relation </relatedItem>
  • 30. Description non bibliographique /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:profileDesc <profileDesc> <langUsage> <language ident="Code langue du texte"/> </langUsage> <textClass> <keywords scheme="author"> <term xml:lang="Code langue du mot clé">Mot clé</term> </keywords> <classCode scheme="classification">Classification (pacs, msc, ...)</classCode> <classCode scheme="acm">Code ACM</classCode> <classCode scheme="mesh">Mot clé MESH</classCode> <classCode scheme="jel">Mot clé JEL</classCode> <!-- @n : disciplines HAL http://api.archives-ouvertes.fr/ref/domain?q=* --> <classCode scheme="halDomain" n="Code discipline HAL"/> <!-- @n : Type de document HAL http://api.archives-ouvertes.fr/ref/doctype?q=* --> <classCode scheme="halTypology" n="Type de dépôt"/> </textClass> <abstract xml:lang="Code langue du résumé">Résumé</abstract> <particDesc> <org type="consortium">Collaboration</org> </particDesc> </profileDesc> Disciplines et types de dépôt dépendent du portail
  • 31. Métadonnées spécificités portails • /tei:TEI/tei:text/tei:body/tei:listBibl/tei:biblFull/tei:editionStmt/tei:edition/tei:fs/tei:f <editionStmt> <edition> <fs> <f name="metadonnée libre"> <string>Valeur</string> </f> </fs> <fs> <f name="metadonnée liste prédéfinie"> <numeric>Valeur</numeric> </f> </fs> </edition> </editionStmt>
  • 32. Annexes /tei:TEI/tei:text/tei:back • Définition des structures de recherches et projets (ANR, européens) non connus du référentiel HAL <back> <listOrg type="structures"> <org type="researchteam" xml:id="localStruct-Identifiant de la structure">...</org> <org type="institution" xml:id="localStruct-Identifiant de la structure">...</org> </listOrg> <listOrg type="projects"> <org type="anrProject" xml:id="localProjanr-Identifiant du projet">...</org> <org type="europeanProject" xml:id="localProjeurope-Identifiant du projet">...</org> </listOrg> </back>
  • 33. Structure de recherche /tei:TEI/tei:text/tei:back/tei:listOrg[@type ="structure"] <!-- @type : researchteam, department, laboratory, institution --> <org type="laboratory" xml:id="localStruct-1"> <orgName>Centre pour la Communication Scientifique Directe</orgName> <orgName type="acronym">CCSD</orgName> <desc> <address> <addrLine>25 bd Pierre de Coubertin, 69100 Villeurbanne</addrLine> <country key="FR"/> </address> <ref type="url">http://ccsd.cnrs.fr</ref> </desc> <listRelation> <relation name="UMS3668" active="#struct-100000"/> <relation active="#struct-100001"/> <relation active="#localStruct-2"/> </listRelation> </org> <org type="institution" xml:id="localStruct-2"> <orgName>Université de Lyon</orgName> <orgName type="acronym">PRES de Lyon</orgName> <desc> <address> <country key="FR"/> </address> <ref type="url">http://www.univ-lyon.fr</ref> </desc> </org>
  • 34. Projets /tei:TEI/tei:text/tei:back/tei:listOrg[@type ="project"] • Projet ANR • Projet européen <org type="anrProject" xml:id="localProjanr-Identifiant du projet européen"> <idno type="anr">Numéro du projet</idno> <orgName>Nom</orgName> <orgName type="program">Programme</orgName> <desc>Description</desc> <date>Année</date> </org> <org type="europeanProject" xml:id="localProjeurope-Identifiant du projet européen"> <idno type="program">Programme</idno> <idno type="number">Numéro de projet</idno> <idno type="call">Code</idno> <orgName>Nom</orgName> <desc>Description</desc> <date type="start">Date de début</date> <date type="end">Date de fin</date> </org>
  • 35. Liens utiles • Schéma XML-TEI • https://hal.archives-ouvertes.fr/documents/aofr.xsd • Exemples fichiers TEI • https://github.com/CCSDForge/HAL • Documentation API SWORD • https://api.archives-ouvertes.fr/docs/sword