SlideShare ist ein Scribd-Unternehmen logo
1 von 22
NBN:URN Generator andNBN:URN Generator and
ResolverResolver
ERPANET Workshop on PersistentERPANET Workshop on Persistent
IdentifiersIdentifiers
Cork, 17-18 June, 2004.Cork, 17-18 June, 2004.
Ádám HorváthÁdám Horváth
National Széchényi LibraryNational Széchényi Library
HungaryHungary
NBN:URN Generator and Resolver - ERPANET Workshop,
ContentsContents
PreparationPreparation
ProtocolProtocol
Design principlesDesign principles
NBN:URN generationNBN:URN generation
NBN:URN resolutionNBN:URN resolution
The web interfaceThe web interface
Technical backgroundTechnical background
Intended usersIntended users
NBN:URN Generator and Resolver - ERPANET Workshop,
PreparationPreparation
Looked for persistent identifierLooked for persistent identifier
– URN was chosenURN was chosen
Studied the relevant standardsStudied the relevant standards
http://http://wwwwww..uriuri..netnet//
Studied the existing implementationsStudied the existing implementations
– FinnishFinnish
– NorwegianNorwegian
– GermanGerman
NBN:URN Generator and Resolver - ERPANET Workshop,
ProtocolProtocol
THTTP protocol (RFC 2169)THTTP protocol (RFC 2169)
Implemented featuresImplemented features
– N2LN2L
– N2LSN2LS
– L2NL2N
NBN:URN Generator and Resolver - ERPANET Workshop,
Design principlesDesign principles
SimplicitySimplicity
– User friendly generationUser friendly generation
– Administration freeAdministration free
ReliabilityReliability
– The uniqueness of URN is guaranteedThe uniqueness of URN is guaranteed
– Only the owner of the document canOnly the owner of the document can
request a URNrequest a URN
NBN:URN Generator and Resolver - ERPANET Workshop,
The owner of the documentThe owner of the document
Who is the owner?Who is the owner?
– Who has the right to write into theWho has the right to write into the
documentdocument
AdvantagesAdvantages
– SimpleSimple
– Can be automatedCan be automated
– There is no problem with passwordsThere is no problem with passwords
NBN:URN Generator and Resolver - ERPANET Workshop,
Requesting URN - Step 1Requesting URN - Step 1
HTTP requestHTTP request
– http://nbn.oszk.hu/GetNBN?
url=http://solanum.oszk.hu/proba.ht
ml
The server checksThe server checks
– Does the document exist?Does the document exist?
– Is it an HTML document?Is it an HTML document?
– Is there already a URN for this document?Is there already a URN for this document?
– Has anyone placed a transaction for it?Has anyone placed a transaction for it?
NBN:URN Generator and Resolver - ERPANET Workshop,
AnswerAnswer
– The server places the requestThe server places the request
– OK:0:urn:nbn:hu-3006
tid:3291d4fcf5b5fce1d0
– Error:-9: Error message
Requesting URN - Step 1 (cont’d)Requesting URN - Step 1 (cont’d)
NBN:URN Generator and Resolver - ERPANET Workshop,
Writing the URN into the documentWriting the URN into the document
– It is the requester’s taskIt is the requester’s task
– <head>
...
<meta name="dc.identifier”
scheme="urn”
content="urn:nbn:hu-3006">
...
</head>
Requesting URN - Step 2Requesting URN - Step 2
NBN:URN Generator and Resolver - ERPANET Workshop,
Finalizing the requestFinalizing the request
– http://nbn.oszk.hu/GetNBN?
url=http://solanum.oszk.hu/proba.ht
ml
&urn=urn:nbn:hu-3006
&tid=3291d4fcf5b5fce1d0
Requesting URN - Step 3Requesting URN - Step 3
NBN:URN Generator and Resolver - ERPANET Workshop,
The server checksThe server checks
– Has the request already been placedHas the request already been placed
– Does the document existDoes the document exist
– Is it an HTML documentIs it an HTML document
– Does it contain the URNDoes it contain the URN
AnswerAnswer
– OKOK
– Error messageError message
Requesting URN - Step 3 (cont’d)Requesting URN - Step 3 (cont’d)
NBN:URN Generator and Resolver - ERPANET Workshop,
N2L (URN to URL)N2L (URN to URL)
– HTTP requestHTTP request
• http://nbn.oszk.hu/N2L?urn:nbn:hu-3006
– HTTP coded answerHTTP coded answer
• 303 (SEE OTHER): redirects to the appropriate URL.
• 404 (NOT FOUND): if the URN does not exist
Resolving URNResolving URN
NBN:URN Generator and Resolver - ERPANET Workshop,
L2N (URL to URN)L2N (URL to URN)
– HTTP requestHTTP request
• http://nbn.oszk.hu/L2N?
http://solanum.oszk.hu/proba.html
– HTTP coded answerHTTP coded answer
• Text (eg. urn:nbn:hu-3006).
• 404 ( FOUND): if it does not exist.
Resolving URN (cont’d)Resolving URN (cont’d)
NBN:URN Generator and Resolver - ERPANET Workshop,
N2Ls (URN to URLs)N2Ls (URN to URLs)
– HTTP requestHTTP request
• http://nbn.oszk.hu/N2Ls? urn:nbn:hu-3006
– HTTP coded answerHTTP coded answer
• HTML page with a list of URLs
• text/uri-list MIME type (if explicitly requested).
• 404 ( FOUND): if it does not exist.
Resolving URN (cont’d)Resolving URN (cont’d)
NBN:URN Generator and Resolver - ERPANET Workshop,
Changing the URN - URL assignmentChanging the URN - URL assignment
– This is also a three step processThis is also a three step process
• The document must exist in both the old and theThe document must exist in both the old and the
new URLnew URL
Deleting the URN - URL assignmentDeleting the URN - URL assignment
– This is also a three step processThis is also a three step process
• The document itself can only be deleted after theThe document itself can only be deleted after the
deletion of the URN - URL assignmentdeletion of the URN - URL assignment
Other functionsOther functions
NBN:URN Generator and Resolver - ERPANET Workshop,
Request and modification for dynamicRequest and modification for dynamic
pagespages
– http://nbn.oszk.hu/GetNBN
?
url=http://solanum.oszk.hu/proba.ht
ml
&nocheck=1
ServerServer
– Does not check the existence of theDoes not check the existence of the
documentdocument
Other functions (cont’d)Other functions (cont’d)
NBN:URN Generator and Resolver - ERPANET Workshop,
Bulk generation of URN’s is alsoBulk generation of URN’s is also
possiblepossible
– Sample scripts written in Python areSample scripts written in Python are
provided for the usersprovided for the users
Other functions (cont’d)Other functions (cont’d)
NBN:URN Generator and Resolver - ERPANET Workshop,
The functions can be invoked from aThe functions can be invoked from a
web interfaceweb interface
– Test request is also possibleTest request is also possible
– The interface is bilingual: Hungarian andThe interface is bilingual: Hungarian and
EnglishEnglish
The web interface also containsThe web interface also contains
background material: user guide, thebackground material: user guide, the
source of the application, sample scriptsource of the application, sample script
etc.etc.
Web interfaceWeb interface
NBN:URN Generator and Resolver - ERPANET Workshop,
PHP for the interfacePHP for the interface
Java servlets for the functionsJava servlets for the functions
PostgreSql is the databasePostgreSql is the database
It is an open source applicationIt is an open source application
Technical backgroundTechnical background
NBN:URN Generator and Resolver - ERPANET Workshop,
HungariansHungarians
– How can we ensure thisHow can we ensure this
• Only the Hungarian interface works on theOnly the Hungarian interface works on the
production databaseproduction database
• The English interface works on the developmentThe English interface works on the development
database. The purpose of the English interface isdatabase. The purpose of the English interface is
to make our results more widely available.to make our results more widely available.
Intended usersIntended users
NBN:URN Generator and Resolver - ERPANET Workshop,
Copies of the same object should haveCopies of the same object should have
the same URNthe same URN
 Different versions of the same object,Different versions of the same object,
e.g. in MS Word and HTML shall havee.g. in MS Word and HTML shall have
different URNs.different URNs.
If an object is changed, a new URN onlyIf an object is changed, a new URN only
needs to be assigned if the intellectualneeds to be assigned if the intellectual
content of the object changes. Editorialcontent of the object changes. Editorial
changes (e.g. changes to fonts etc.) dochanges (e.g. changes to fonts etc.) do
not necessitate a change of URN.not necessitate a change of URN.
Guidelines for the requestGuidelines for the request
NBN:URN Generator and Resolver - ERPANET Workshop,
adam@oszk.huadam@oszk.hu
Thank you for your attentionThank you for your attention

Weitere ähnliche Inhalte

Ähnlich wie NBN:URN Generator and Resolver

Openlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionOpenlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sion
Ccie Light
 
Functional training day1
Functional training day1Functional training day1
Functional training day1
Satyamitra maan
 
PLNOG15 - IRR Lockdown - Job Snijders
PLNOG15 - IRR Lockdown - Job SnijdersPLNOG15 - IRR Lockdown - Job Snijders
PLNOG15 - IRR Lockdown - Job Snijders
PROIDEA
 
The RNA workbench - Galaxy User Conference 2018
The RNA workbench - Galaxy User Conference 2018The RNA workbench - Galaxy User Conference 2018
The RNA workbench - Galaxy User Conference 2018
Florian Eggenhofer
 

Ähnlich wie NBN:URN Generator and Resolver (20)

Splunk Ninja: New Features, Pivot and Search Dojo
 Splunk Ninja: New Features, Pivot and Search Dojo Splunk Ninja: New Features, Pivot and Search Dojo
Splunk Ninja: New Features, Pivot and Search Dojo
 
Splunk Ninjas: New Features, Pivot and Search Dojo
Splunk Ninjas: New Features, Pivot and Search DojoSplunk Ninjas: New Features, Pivot and Search Dojo
Splunk Ninjas: New Features, Pivot and Search Dojo
 
Keep Calm and Use Parser
Keep Calm and Use ParserKeep Calm and Use Parser
Keep Calm and Use Parser
 
ENUM Applications and Network at Work
ENUM Applications and Network at WorkENUM Applications and Network at Work
ENUM Applications and Network at Work
 
Huawei rnp work flow
Huawei rnp work flowHuawei rnp work flow
Huawei rnp work flow
 
Modern Interface to Mainframe - The Compuware Workbench (B. Ebner)
Modern Interface to Mainframe - The Compuware Workbench (B. Ebner)Modern Interface to Mainframe - The Compuware Workbench (B. Ebner)
Modern Interface to Mainframe - The Compuware Workbench (B. Ebner)
 
wcdma-paging-problem-analysis
wcdma-paging-problem-analysiswcdma-paging-problem-analysis
wcdma-paging-problem-analysis
 
Openlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionOpenlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sion
 
Functional training day1
Functional training day1Functional training day1
Functional training day1
 
2017 dagstuhl-nfv-rothenberg
2017 dagstuhl-nfv-rothenberg2017 dagstuhl-nfv-rothenberg
2017 dagstuhl-nfv-rothenberg
 
Search Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer PerspectiveSearch Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer Perspective
 
Key topics when migrating from FAST to Solr, EuroCon 2010
Key topics when migrating from FAST to Solr, EuroCon 2010Key topics when migrating from FAST to Solr, EuroCon 2010
Key topics when migrating from FAST to Solr, EuroCon 2010
 
OSMC 2010 | Monitoring mit Icinga by Icinga Team
OSMC 2010 | Monitoring mit Icinga by Icinga TeamOSMC 2010 | Monitoring mit Icinga by Icinga Team
OSMC 2010 | Monitoring mit Icinga by Icinga Team
 
PLNOG15 - IRR Lockdown - Job Snijders
PLNOG15 - IRR Lockdown - Job SnijdersPLNOG15 - IRR Lockdown - Job Snijders
PLNOG15 - IRR Lockdown - Job Snijders
 
Search Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer PerspectiveSearch Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer Perspective
 
My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009My Opera meets Varnish, Dec 2009
My Opera meets Varnish, Dec 2009
 
Oracle no sql release 3 4 overview
Oracle no sql release 3 4 overviewOracle no sql release 3 4 overview
Oracle no sql release 3 4 overview
 
The RNA workbench - Galaxy User Conference 2018
The RNA workbench - Galaxy User Conference 2018The RNA workbench - Galaxy User Conference 2018
The RNA workbench - Galaxy User Conference 2018
 
Headaches and Breakthroughs in Building Continuous Applications
Headaches and Breakthroughs in Building Continuous ApplicationsHeadaches and Breakthroughs in Building Continuous Applications
Headaches and Breakthroughs in Building Continuous Applications
 
Spark + AI Summit 2019: Headaches and Breakthroughs in Building Continuous Ap...
Spark + AI Summit 2019: Headaches and Breakthroughs in Building Continuous Ap...Spark + AI Summit 2019: Headaches and Breakthroughs in Building Continuous Ap...
Spark + AI Summit 2019: Headaches and Breakthroughs in Building Continuous Ap...
 

Mehr von horvadam

TELplus és EDLnet úton az Európai Digitális Könyvtár felé - Múzeumok az EURO...
TELplus és EDLnet úton az EurópaiDigitális Könyvtár felé - Múzeumok az EURO...TELplus és EDLnet úton az EurópaiDigitális Könyvtár felé - Múzeumok az EURO...
TELplus és EDLnet úton az Európai Digitális Könyvtár felé - Múzeumok az EURO...
horvadam
 

Mehr von horvadam (20)

A szemantikus web és a könyvtárak, különös tekintettel a BIBFRAME formátumra
A szemantikus web és a könyvtárak, különös tekintettel a BIBFRAME formátumraA szemantikus web és a könyvtárak, különös tekintettel a BIBFRAME formátumra
A szemantikus web és a könyvtárak, különös tekintettel a BIBFRAME formátumra
 
Szemantikus web
Szemantikus webSzemantikus web
Szemantikus web
 
Személynevek a szemantikus térben
Személynevek a szemantikus térbenSzemélynevek a szemantikus térben
Személynevek a szemantikus térben
 
Az aggregáció általános modellje : Synergy modell
Az aggregáció általános modellje : Synergy modellAz aggregáció általános modellje : Synergy modell
Az aggregáció általános modellje : Synergy modell
 
Urn oszkkm 01
Urn oszkkm 01Urn oszkkm 01
Urn oszkkm 01
 
TELplus és EDLnet úton az Európai Digitális Könyvtár felé - Múzeumok az EURO...
TELplus és EDLnet úton az EurópaiDigitális Könyvtár felé - Múzeumok az EURO...TELplus és EDLnet úton az EurópaiDigitális Könyvtár felé - Múzeumok az EURO...
TELplus és EDLnet úton az Európai Digitális Könyvtár felé - Múzeumok az EURO...
 
RDA
RDARDA
RDA
 
ZING: the Next Generation of Z39.50
ZING: the Next Generation of Z39.50ZING: the Next Generation of Z39.50
ZING: the Next Generation of Z39.50
 
Automation at the National Széchényi Library
Automation at the National Széchényi LibraryAutomation at the National Széchényi Library
Automation at the National Széchényi Library
 
FRBR in a simplified way : Status report
FRBR in a simplified way : Status reportFRBR in a simplified way : Status report
FRBR in a simplified way : Status report
 
WEB2 developments at the National Széchényi Library
WEB2 developments at the National Széchényi LibraryWEB2 developments at the National Széchényi Library
WEB2 developments at the National Széchényi Library
 
Semantic web: where are we now?
Semantic web: where are we now? Semantic web: where are we now?
Semantic web: where are we now?
 
LibriVision via the OpenSocial protocol
LibriVision via the OpenSocial protocolLibriVision via the OpenSocial protocol
LibriVision via the OpenSocial protocol
 
Catalogue enrichment in LibriVision
Catalogue enrichment in LibriVision Catalogue enrichment in LibriVision
Catalogue enrichment in LibriVision
 
Az RFID bevezetésének kérdései
Az RFID bevezetésének kérdéseiAz RFID bevezetésének kérdései
Az RFID bevezetésének kérdései
 
Linked Data at the National Széchényi Library : road to the publication
Linked Data at the National Széchényi Library : road to the publicationLinked Data at the National Széchényi Library : road to the publication
Linked Data at the National Széchényi Library : road to the publication
 
RDF and Open Linked Data, a first approach
RDF and Open Linked Data, a first approachRDF and Open Linked Data, a first approach
RDF and Open Linked Data, a first approach
 
Szemantikus web és a könyvtárak
Szemantikus web és a könyvtárakSzemantikus web és a könyvtárak
Szemantikus web és a könyvtárak
 
Szemantikus web és a könyvtárak
Szemantikus web és a könyvtárakSzemantikus web és a könyvtárak
Szemantikus web és a könyvtárak
 
Linked Open Data
Linked Open DataLinked Open Data
Linked Open Data
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 

NBN:URN Generator and Resolver

  • 1. NBN:URN Generator andNBN:URN Generator and ResolverResolver ERPANET Workshop on PersistentERPANET Workshop on Persistent IdentifiersIdentifiers Cork, 17-18 June, 2004.Cork, 17-18 June, 2004. Ádám HorváthÁdám Horváth National Széchényi LibraryNational Széchényi Library HungaryHungary
  • 2. NBN:URN Generator and Resolver - ERPANET Workshop, ContentsContents PreparationPreparation ProtocolProtocol Design principlesDesign principles NBN:URN generationNBN:URN generation NBN:URN resolutionNBN:URN resolution The web interfaceThe web interface Technical backgroundTechnical background Intended usersIntended users
  • 3. NBN:URN Generator and Resolver - ERPANET Workshop, PreparationPreparation Looked for persistent identifierLooked for persistent identifier – URN was chosenURN was chosen Studied the relevant standardsStudied the relevant standards http://http://wwwwww..uriuri..netnet// Studied the existing implementationsStudied the existing implementations – FinnishFinnish – NorwegianNorwegian – GermanGerman
  • 4. NBN:URN Generator and Resolver - ERPANET Workshop, ProtocolProtocol THTTP protocol (RFC 2169)THTTP protocol (RFC 2169) Implemented featuresImplemented features – N2LN2L – N2LSN2LS – L2NL2N
  • 5. NBN:URN Generator and Resolver - ERPANET Workshop, Design principlesDesign principles SimplicitySimplicity – User friendly generationUser friendly generation – Administration freeAdministration free ReliabilityReliability – The uniqueness of URN is guaranteedThe uniqueness of URN is guaranteed – Only the owner of the document canOnly the owner of the document can request a URNrequest a URN
  • 6. NBN:URN Generator and Resolver - ERPANET Workshop, The owner of the documentThe owner of the document Who is the owner?Who is the owner? – Who has the right to write into theWho has the right to write into the documentdocument AdvantagesAdvantages – SimpleSimple – Can be automatedCan be automated – There is no problem with passwordsThere is no problem with passwords
  • 7. NBN:URN Generator and Resolver - ERPANET Workshop, Requesting URN - Step 1Requesting URN - Step 1 HTTP requestHTTP request – http://nbn.oszk.hu/GetNBN? url=http://solanum.oszk.hu/proba.ht ml The server checksThe server checks – Does the document exist?Does the document exist? – Is it an HTML document?Is it an HTML document? – Is there already a URN for this document?Is there already a URN for this document? – Has anyone placed a transaction for it?Has anyone placed a transaction for it?
  • 8. NBN:URN Generator and Resolver - ERPANET Workshop, AnswerAnswer – The server places the requestThe server places the request – OK:0:urn:nbn:hu-3006 tid:3291d4fcf5b5fce1d0 – Error:-9: Error message Requesting URN - Step 1 (cont’d)Requesting URN - Step 1 (cont’d)
  • 9. NBN:URN Generator and Resolver - ERPANET Workshop, Writing the URN into the documentWriting the URN into the document – It is the requester’s taskIt is the requester’s task – <head> ... <meta name="dc.identifier” scheme="urn” content="urn:nbn:hu-3006"> ... </head> Requesting URN - Step 2Requesting URN - Step 2
  • 10. NBN:URN Generator and Resolver - ERPANET Workshop, Finalizing the requestFinalizing the request – http://nbn.oszk.hu/GetNBN? url=http://solanum.oszk.hu/proba.ht ml &urn=urn:nbn:hu-3006 &tid=3291d4fcf5b5fce1d0 Requesting URN - Step 3Requesting URN - Step 3
  • 11. NBN:URN Generator and Resolver - ERPANET Workshop, The server checksThe server checks – Has the request already been placedHas the request already been placed – Does the document existDoes the document exist – Is it an HTML documentIs it an HTML document – Does it contain the URNDoes it contain the URN AnswerAnswer – OKOK – Error messageError message Requesting URN - Step 3 (cont’d)Requesting URN - Step 3 (cont’d)
  • 12. NBN:URN Generator and Resolver - ERPANET Workshop, N2L (URN to URL)N2L (URN to URL) – HTTP requestHTTP request • http://nbn.oszk.hu/N2L?urn:nbn:hu-3006 – HTTP coded answerHTTP coded answer • 303 (SEE OTHER): redirects to the appropriate URL. • 404 (NOT FOUND): if the URN does not exist Resolving URNResolving URN
  • 13. NBN:URN Generator and Resolver - ERPANET Workshop, L2N (URL to URN)L2N (URL to URN) – HTTP requestHTTP request • http://nbn.oszk.hu/L2N? http://solanum.oszk.hu/proba.html – HTTP coded answerHTTP coded answer • Text (eg. urn:nbn:hu-3006). • 404 ( FOUND): if it does not exist. Resolving URN (cont’d)Resolving URN (cont’d)
  • 14. NBN:URN Generator and Resolver - ERPANET Workshop, N2Ls (URN to URLs)N2Ls (URN to URLs) – HTTP requestHTTP request • http://nbn.oszk.hu/N2Ls? urn:nbn:hu-3006 – HTTP coded answerHTTP coded answer • HTML page with a list of URLs • text/uri-list MIME type (if explicitly requested). • 404 ( FOUND): if it does not exist. Resolving URN (cont’d)Resolving URN (cont’d)
  • 15. NBN:URN Generator and Resolver - ERPANET Workshop, Changing the URN - URL assignmentChanging the URN - URL assignment – This is also a three step processThis is also a three step process • The document must exist in both the old and theThe document must exist in both the old and the new URLnew URL Deleting the URN - URL assignmentDeleting the URN - URL assignment – This is also a three step processThis is also a three step process • The document itself can only be deleted after theThe document itself can only be deleted after the deletion of the URN - URL assignmentdeletion of the URN - URL assignment Other functionsOther functions
  • 16. NBN:URN Generator and Resolver - ERPANET Workshop, Request and modification for dynamicRequest and modification for dynamic pagespages – http://nbn.oszk.hu/GetNBN ? url=http://solanum.oszk.hu/proba.ht ml &nocheck=1 ServerServer – Does not check the existence of theDoes not check the existence of the documentdocument Other functions (cont’d)Other functions (cont’d)
  • 17. NBN:URN Generator and Resolver - ERPANET Workshop, Bulk generation of URN’s is alsoBulk generation of URN’s is also possiblepossible – Sample scripts written in Python areSample scripts written in Python are provided for the usersprovided for the users Other functions (cont’d)Other functions (cont’d)
  • 18. NBN:URN Generator and Resolver - ERPANET Workshop, The functions can be invoked from aThe functions can be invoked from a web interfaceweb interface – Test request is also possibleTest request is also possible – The interface is bilingual: Hungarian andThe interface is bilingual: Hungarian and EnglishEnglish The web interface also containsThe web interface also contains background material: user guide, thebackground material: user guide, the source of the application, sample scriptsource of the application, sample script etc.etc. Web interfaceWeb interface
  • 19. NBN:URN Generator and Resolver - ERPANET Workshop, PHP for the interfacePHP for the interface Java servlets for the functionsJava servlets for the functions PostgreSql is the databasePostgreSql is the database It is an open source applicationIt is an open source application Technical backgroundTechnical background
  • 20. NBN:URN Generator and Resolver - ERPANET Workshop, HungariansHungarians – How can we ensure thisHow can we ensure this • Only the Hungarian interface works on theOnly the Hungarian interface works on the production databaseproduction database • The English interface works on the developmentThe English interface works on the development database. The purpose of the English interface isdatabase. The purpose of the English interface is to make our results more widely available.to make our results more widely available. Intended usersIntended users
  • 21. NBN:URN Generator and Resolver - ERPANET Workshop, Copies of the same object should haveCopies of the same object should have the same URNthe same URN  Different versions of the same object,Different versions of the same object, e.g. in MS Word and HTML shall havee.g. in MS Word and HTML shall have different URNs.different URNs. If an object is changed, a new URN onlyIf an object is changed, a new URN only needs to be assigned if the intellectualneeds to be assigned if the intellectual content of the object changes. Editorialcontent of the object changes. Editorial changes (e.g. changes to fonts etc.) dochanges (e.g. changes to fonts etc.) do not necessitate a change of URN.not necessitate a change of URN. Guidelines for the requestGuidelines for the request
  • 22. NBN:URN Generator and Resolver - ERPANET Workshop, adam@oszk.huadam@oszk.hu Thank you for your attentionThank you for your attention

Hinweis der Redaktion

  1. Csak az első lépés ellenőrzése marad el, csak scriptből hívható meg, a véglegesítő scriptet is meg kell hívni.
  2. Csak az első lépés ellenőrzése marad el, csak scriptből hívható meg, a véglegesítő scriptet is meg kell hívni.
  3. Csak az első lépés ellenőrzése marad el, csak scriptből hívható meg, a véglegesítő scriptet is meg kell hívni.
  4. Csak az első lépés ellenőrzése marad el, csak scriptből hívható meg, a véglegesítő scriptet is meg kell hívni.
  5. Csak az első lépés ellenőrzése marad el, csak scriptből hívható meg, a véglegesítő scriptet is meg kell hívni.
  6. Csak az első lépés ellenőrzése marad el, csak scriptből hívható meg, a véglegesítő scriptet is meg kell hívni.