2017. június 19., hétfő

Re: [KATALIST] Signposting: tudományos weboldalak HTTP alapú szemantikus linkelése

Kedves Péter,

a Magyar Nemzeti Múzeum Központi Könyvtára az online olvasói katalógusánba a BIBFRAME leírással is rendelkező rekordok esetén, mint például ennel a rekordnál:



az alábbi link tageket helyezi el. Ezt megoldást egyébként még mint "link discovery service" ismertem meg. A cél az lenne, hogy a robotokat átirányítsuk a géppel jobban olvasható formátumok felé. Nem tudom, hogy a robotok (pl. Google) használja-e? Erre nincs egyértelmű bizonyíték. Valószínűleg igen. A link tageket a Mongúz kft. helyzete el az oldalainkon. És akkor itt vannak az általunk használt link tagek, melyek mind az adott MARC rekord különböző formátumú BIBFRAME-es verzióihoz vezetnek el:










Üdvözlettel:
Horváth Ádám



2017. június 19. 15:27 Péter Király írta, <kirunews@gmail.com>:
Tisztelt Katalist,

egy bő lére eresztett prezentáció ismertető következik. Herbert van de
Sompel, az OAI-PMH, OAI-ORE, SFX link resolver, ResourceSync, Open
Annotations, Memento és más jóságok kitalálója-társzerzője ma
publikálta Signposting the Scholarly Web: An Overview című előadásának
diáit https://www.slideshare.net/hvdsomp/signposting-overview. Az
általa javasolt technológia a tudományos weboldalak (pl. intézményi
vagy országos repozitóriumok, kutatási adat-archívumok, folyóiratok)
információinak összekapcsolásában segít.

Ezen oldalak tipikusan a következő összetevőkből állnak:
- full text szövegek (néha több formátumban, helyben vagy linkelve)
- bibliográfiai leírás(ok) (néha szintén több formátumban, pl. Bibtex,
RIS, JSON-LD stb.)
- szerzők oldalai (pl. ORCID, VIAF, authority rekordok oldalai)
- perzisztens URL (pl. URN, PID, DOI, Handle)
- külső bibligráfiai leírások (pl. a Crossref.org-on)
- "landing page" (az a felső szintű oldal, amire pl. egy perzisztens
URL mutat, és ami opcionálisan HTML linkeket biztosít az egyes
összetevőkre, lásd http://mek.oszk.hu/00000/00075/ - a MEK-ben
található OSZK Tezaurusz főoldala, innen el lehet érni mind a
bibliográfiai leírást több változatban, a tartalom különféle formátumú
változatait, és sok minden mást).

A Signposting a HTTP fejrészét (Header) használja ezen információk
összekapcsolására. Amikor a weben a HTTP protokol segítségével egy
kérést küldünk egy webszervernek, akkor a válasz két részből áll. A
válasz eleje az ú.n. header metaadatokat tartalmaz a szóban forgó
erőforrásról, pl. mi a tartalom típusa (mime cintent type), mekkora a
mérete, az utolsó módosítás dátuma, a gyorstár elévülésének ideje, a
webszerver típusa stb. és csak ezen fejrész után jön a tulajdonképpeni
tartalom pl. egy HTML oldal, egy PDF fájl, vagy egy TIFF kép. A
böngésző (vagy más kliens) a header alapján jeleníti meg számunkra a
dokumentumot, vagy ajánlja fel a letöltést. De a header információit
sok más eszköz használja: keresőrobotok, tartalombegyüjtő és -elemző
robotok, stb. Szinte minden programnyelv tartalmaz eszközlészletet
ezen információk olvasására és írására. A metaadatoknak van egy
szabányos sémájuk, aminek karbantartását az Internet Engineering Task
Force (IETF) nevű testület vállalta. Ez a séma az újabb igények
tökrében folytonosan változik, 2010-ben javasolták a "Link" elem
felvételét, ami a "Web Linking" szabvány néven híresült el. Az a
szabvány azt teszi lehetővé, hogy linkeket biztosítsunk a tetszőleges
URL-ekhez a HTTP headeren belül. Lássunk egy példát:

A http://dbpedia.org/data/Reykjavik URL a következő linkeket biztosítja

Link: <http://creativecommons.org/licenses/by-sa/3.0/>;
         rel="license",
      <http://dbpedia.org/data/Reykjavik>;
         rel="alternate";
         type="application/rdf+xml";
         title="Structured Descriptor Document (RDF/XML format)",
      <http://dbpedia.org/data/Reykjavik>;
         rel="alternate";
        type="text/n3";
         title="Structured Descriptor Document (N3/Turtle format)",
      <http://dbpedia.org/data/Reykjavik>;
         rel="alternate";
         type="application/json";
         title="Structured Descriptor Document (RDF/JSON format)",
      <http://dbpedia.org/data/Reykjavik>;
         rel="alternate"; type="application/atom+xml";
         title="OData (Atom+Feed format)",
      <http://dbpedia.org/data/Reykjavik>;
         rel="alternate"; type="application/odata+json";
         title="OData (JSON format)",
      <http://dbpedia.org/page/Reykjavik>;
         rel="alternate"; type="text/html"; title="XHTML+RDFa",
      <http://mementoarchive.lanl.gov/dbpedia/timegate/http://dbpedia.org/data/Reykjavik>;
         rel="timegate"

Az elem szintaxisa egyszerű: a linkeket kacsacsőrben kell megadni,
egymástól vesszővel elválasztva. A linkekhez opcionálisan metaadatok
kapcsolahatók, ezeket kettősponttal különítjük el. A fenti példában
három féle metaadattal találkozunk:

A "rel" a link típusát jelenti. A "license" jelentése, hogy a link a
tartalom licenszinformációjára mutat. A "alternate" egy alternatív
dokumentumtípusra mutat, a "timegate" pedig a Memento link (ez egy
sajátos időbélyeg, szintén Van de Sompel találmánya, lásd
http://mementoweb.org/about/).
A "type" jelöli a MIME (vagy dokumetum-) típust, a "title" pedig egy
emberi fogyasztásra szánt címke.

A Web Linking szintaxisa és általános szemantikája tehát 2010 óta
adott, a Signposing ezt a keretet egészíti ki a tudományos weboldalak
elemei összekapcsolásának szemantikájával, úgy hogy a "rel" attribútum
értékkészletét további lehetőségekkel gazdagítja a következő
típusokkal:

author - szerző
collection - a cikket alkotó fájlok összessége (cikk szövege, ábrák,
kiegészítő anyagok stb.)
describedby - a dolgot leíró bibliográfiai rekord
describes - annak a dolognak az azonosítója amiről a bibliográfiai leírás szól
item - a gyűjtemény egy darabja
identifier - az azonosító
type - típus (schema.org vagy más névtérből vett jelölő)

Mivel a signposting létező szabványokra épít a tartalomtípus
tekintetében a MIME szabvány az irányadó, amiben szerepel néhány
bibliográfiai formátum:

BibTeX - "application/x-bibtex"
CiteProc JSON - "application/vnd.citationstyles.csl+json"
RIS  - "application/x-research-info-systems"

Azonban számos bibliográfiai szabvány formátuma az XML
("application/xml"), amiket nem lehet a MIME-on belül
megkölönböztetni, ezért a szerzők egy további attribútum, a "profile"
használatát javasolják ilyen esetekben (a type kiegészítéseként és nem
helyett):

MARC XML - "http://www.loc.gov/MARC21/slim"
MODS - "application/xml http://www.loc.gov/mods/"
Simple Dublin Core - "application/xml http://purl.org/dc/elements/1.1/"
Qualified Dublin Core - "application/xml
http://dublincore.org/documents/dcmi-terms/"

Mivel mindez így meglehetősen abszrakt, lássunk néhány típuspéldát. A
példákban a nyíl jelentése: A erőforrásról szeretnénk linket
biztosítani B erőforrásra, vagyis Link-kel kezdődő sorok az A
erőforrás HTTP headerjében szerepelnek.

Szerző:

Viaf azonosító linkelése:
Link: <http://viaf.org/viaf/31835361/>
      ; rel="author"

Több szerző ORCID oldalának linkelése:
Link: <http://orcid.org/0000-0002-0715-6126>
      ; rel="author",
      <http://orcid.org/0000-0003-3749-8116>
      ; rel="author"

Bibliográfiai metaadatok linkelése:

Perzisztens azonosító ➞ Bibliográfiai leírás

Link: <https://doi.org/10.1007/s10958-016-2844-8>
      ; rel="describedby"
      ; type="application/vnd.citationstyles.csl+json"

Bibliográfiai leírás ➞ Perzisztens azonosító

Link: <https://doi.org/10.1007/s10958-016-2844-8>
      ; rel="describes"

Landing page ➞ Bibliográfiai leírás

Link: <http://citation-needed.services.springer.com/v2/references/10.1007/s10958-016-2844-8?format=refman&flavour=citation>
      ; rel="describedby"
      ; type="application/x-research-info-systems",
      <http://citation-needed.services.springer.com/v2/references/10.1007/s10958-016-2844-8?format=bibtex&flavour=citation>
      ; rel="describedby"
      ; type="application/x-bibtex",
      <https://doi.org/10.1007/s10958-016-2844-8>
      ; rel="describedby"
      ; type="application/vnd.citationstyles.csl+json"

Teljes szöveg ➞ Bibliográfiai leírás

Link: <http://journals.plos.org/plosone/article/citation/ris?id=10.1371%2Fjournal.pone.0115253>
      ; rel="describedby"
      ; type="application/x-research-info-systems",
      <http://journals.plos.org/plosone/article/citation/bibtex?id=10.1371%2Fjournal.pone.0115253>
      ; rel="describedby"
      ; type="application/x-bibtex",
      <https://doi.org/10.1371/journal.pone.0115253>
      ; rel="describedby"
      ; type="application/vnd.citationstyles.csl+json"

Landing page/cikk ➞ Perzisztens azonosító
Link: <https://doi.org/10.1017/jns.2015.28>
      ; rel="identifier"

Szerzői oldal (pl. egyetemi honlapon)  ➞ Szerzői azonosító
Link: <https://orcid.org/0000-0003-1419-2405>
      ; rel="identifier"

Landing page ➞ cikk különféle formátumokban ill. kiegészítő anyagok
Link: <http://nar.oxfordjournals.org/content/44/9/4005.full>
      ; rel="item"
      ; type="text/html",
      <http://nar.oxfordjournals.org/content/44/9/4005.full.pdf>
      ; rel="item"
      ; type="application/pdf",
      <http://nar.oxfordjournals.org/content/suppl/2016/04/12/gkw229.DC1/nar-00308-f-2016-File002.pdf>
      ; rel="item"
      ; type="application/pdf"

cikk különféle formátumokban ill. kiegészítő anyagok ➞ Landing page
Link: <http://nar.oxfordjournals.org/content/early/2016/06/07/nar.gkw501>
       ; rel="collection"

Perzisztens azonosító típusának megadása

cikk:
Link: <http://schema.org/ScholarlyArticle>
      ; rel="type"

adattár:
Link: <http://schema.org/Dataset>
      ; rel="type"

Szerző:
Link: <http://schema.org/Person>
      ; rel="type"

Ezekben az adatokban persze szemantikailag nincs nagy újdonság, mivel
a szerzőre való linket a bibliográfiai leírás amúgy is tartalmazza. A
cikk fizikai hordozói és a bibliográfiai leírás már bonyolultabb
feladat, és ritkán találkozni teljes körű megoldással, de az OAI-ORE
és a ResourceSync ezt is megoldja. A gond akkor van, amikor mondjuk
kapunk egy linket egy PDF fájlra vagy a cikkben szereplő táblázatra
amiben semmiféle kontextuális információ nincs. Továbbá: a metadatok
megadható tetszőleges HTML oldalon, de más dokumentumtípusban már nem,
vagy nem szabályosan, és még ha a HTML-t használjuk is, a különféle
rendelkezésre álló szabványokhoz képest (HTML header, RDFa, RDF Lite,
Microformats) a HTTP header szintaxisa egyszerűbb, így könnyebben
feldolgozható. A HTTTP headernek ezen felül még van egy további
előnye: lekérhető a teljes tartalom nélkül is, amivel a kliens és
kiszolgáló oldalon erőforrást, a hálózaton pedig átviteli méretet
spórolunk.
A javaslat banalitása ellenére eme szétszórt információk összegyűjtése
nem triviális feladat. Saját tapasztalatból tudom, hogy a vontakozó
információk összeszedése egyetemi méretben igencsak nehéz és
manuálisan szinte lehetetlen feladat, nem beszélve az elérhető
információk minőségéről. Még a nagyon drága fizetős adatbázisokban
(Web of Science, Scopus) is találkozunk nagyon komoly bibliográfiai
hiányosságokkal, rossz minőségű adatokkal.
A Signposting egy komoly infrastrukturális előrelépés, ami segíti az
adatszolgáltatókat, hogy a felhasználók könnyebben elérhessék az
adataikat. A MEK esetében úgy látom, hogy adatszinten minden adott az
implementációhoz, ugyanakkor pont az ő esetükben, tekintve hogy ezeket
az adatokat számos egyéb csatornán is eljuttatják a felhasználókhoz,
kevesebb a gyakorlati haszna, mint teszem azt a MTMT vagy más
tudományos repozitórium esetében.

Nem tudom, hogy van-e magyar szolgáltatás, ami használja a
technológiát, ha van, akkor örömmel látnám a készítők tapasztalatát.

Bővebb információ:
http://signposting.org/

Irodalom:
* Van de Sompel, H., and Nelson, M.L. (2015) Reminiscing About 15
Years of Interoperability Efforts. D-Lib Magazine, 21(11/12).
DOI:10.1045/november2015-vandesompel,
https://doi.org/10.1045/november2015-vandesompel
* Van de Sompel, H., Rosenthal, D., and Nelson, M.L. (2016) Web
Infrastructure to Support e-Journal Preservation (and More). Arxiv
preprint. arXiv:1605.06154 ; http://arxiv.org/abs/1605.06154
* Van de Sompel, H., and Nelson, M.L. (2015) Achieving Meaningful
Interoperability for Web-Based Scholarship.
http://www.slideshare.net/hvdsomp/interoperability-for-web-based-scholarship


A legjobbakat!
Király Péter

--
Péter Király
software developer
GWDG, Göttingen - Europeana - eXtensible Catalog - The Code4Lib Journal
http://linkedin.com/in/peterkiraly

_______________________________________________
Katalist mailing list
Katalist@listserv.niif.hu
https://listserv.niif.hu/mailman/listinfo/katalist