{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,13]],"date-time":"2025-11-13T12:36:03Z","timestamp":1763037363894,"version":"3.38.0"},"reference-count":26,"publisher":"SAGE Publications","issue":"1","license":[{"start":{"date-parts":[[2019,10,11]],"date-time":"2019-10-11T00:00:00Z","timestamp":1570752000000},"content-version":"unspecified","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["journals.sagepub.com"],"crossmark-restriction":true},"short-container-title":["Data Science"],"published-print":{"date-parts":[[2020,6,12]]},"abstract":"<jats:p> FAIR data requires unique and persistent identifiers. Persistent Uniform Resource Locators (PURLs) are one common solution, introducing a mapping layer from the permanent identifier to a target URL that can change over time. Maintaining a PURL system requires long-term commitment and resources, and this can present a challenge for open projects that rely heavily on volunteers and donated resources. When the PURL system used by the Open Biological and Biomedical Ontologies (OBO) community suffered major technical problems in 2015, OBO developers had to migrate quickly to a new system. We describe that migration, the new OBO PURL system that we built, and the key factors behind our design. The OBO PURL system is low-cost and low-maintenance, built on well-established open source software, customized to the needs of the OBO community, and shows how key FAIR principles can be supported on a tight budget. <\/jats:p>","DOI":"10.3233\/ds-190022","type":"journal-article","created":{"date-parts":[[2019,10,11]],"date-time":"2019-10-11T19:33:27Z","timestamp":1570822407000},"page":"3-13","update-policy":"https:\/\/doi.org\/10.1177\/sage-journals-update-policy","source":"Crossref","is-referenced-by-count":3,"title":["String of PURLs\u00a0\u2013 frugal migration and maintenance of persistent identifiers"],"prefix":"10.1177","volume":"3","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-5139-5557","authenticated-orcid":false,"given":"James A.","family":"Overton","sequence":"first","affiliation":[{"name":"Knocean Inc., Canada. E-mail:\u00a0"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4477-5601","authenticated-orcid":false,"given":"Michael","family":"Cuffaro","sequence":"additional","affiliation":[{"name":"Knocean Inc., Canada."}]},{"name":"The OBO Foundry Operations Committee Technical Working Groupc","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6601-2165","authenticated-orcid":false,"given":"Christopher J.","family":"Mungall","sequence":"additional","affiliation":[{"name":"Lawrence Berkeley National Laboratory, USA. E-mail:\u00a0"}]}],"member":"179","published-online":{"date-parts":[[2019,10,11]]},"reference":[{"unstructured":"Ansible is simple IT automation, https:\/\/www.ansible.com (last visited June 1, 2019).","key":"ref001"},{"unstructured":"Apache HTTP server project, https:\/\/httpd.apache.org (last visited June 1, 2019).","key":"ref002"},{"doi-asserted-by":"publisher","key":"ref003","DOI":"10.1038\/75556"},{"unstructured":"August 2018 web server survey, https:\/\/news.netcraft.com\/archives\/2018\/08\/24\/august-2018-web-server-survey.html (last visited June 1, 2019).","key":"ref004"},{"doi-asserted-by":"publisher","key":"ref005","DOI":"10.1371\/journal.pone.0154556"},{"unstructured":"CodeMirror, https:\/\/codemirror.net (last visited June 1, 2019).","key":"ref006"},{"unstructured":"Git, https:\/\/git-scm.com (last visited June 1, 2019).","key":"ref007"},{"unstructured":"GitHub, https:\/\/github.com (last visited June 1, 2019).","key":"ref008"},{"unstructured":"GNU Make, https:\/\/www.gnu.org\/software\/make\/ (last visited June 1, 2019).","key":"ref009"},{"unstructured":"GoAccess, Visual web log analyzer, https:\/\/goaccess.io (last visited June 1, 2019).","key":"ref010"},{"unstructured":"P.\u00a0Hitzler, M.\u00a0Kr\u00f6tzsch, B.\u00a0Parsia and S.\u00a0Rudolph, OWL 2 web ontology language primer, https:\/\/www.w3.org\/TR\/owl2-overview\/, 2009.","key":"ref011"},{"unstructured":"JSON Schema, https:\/\/json-schema.org (last visited June 1, 2019).","key":"ref012"},{"unstructured":"S.\u00a0Jupp, T.\u00a0Burdett, C.\u00a0Leroy and H.E.\u00a0Parkinson, A new ontology lookup service at EMBL-EBI, in: SWAT4LS, 2015, pp.\u00a0118\u2013119, http:\/\/ceur-ws.org\/Vol-1546\/paper_29.pdf.","key":"ref013"},{"unstructured":"OBO Foundry identifier policy, http:\/\/obofoundry.org\/id-policy.html (last visited June 1, 2019).","key":"ref014"},{"unstructured":"OBO Foundry principle\u00a03 \u201cURI\/identifier space\u201d, http:\/\/obofoundry.org\/principles\/fp-003-uris.html (last visited June 1, 2019).","key":"ref015"},{"unstructured":"OCLC, Worldwide, member-driven library cooperative, https:\/\/oclc.org (last visited June 1, 2019).","key":"ref016"},{"doi-asserted-by":"publisher","key":"ref017","DOI":"10.1093\/nar\/gkw918"},{"unstructured":"Python jsonschema library, https:\/\/github.com\/Julian\/jsonschema (last visited June 1, 2019).","key":"ref018"},{"doi-asserted-by":"publisher","key":"ref019","DOI":"10.1038\/nbt1346"},{"unstructured":"The offical YAML website, https:\/\/yaml.org (last visited June 1, 2019).","key":"ref020"},{"unstructured":"Travis CI, Test and deploy with confidence, https:\/\/travis-ci.com (last visited June 1, 2019).","key":"ref021"},{"unstructured":"Travis false positive on schema validation, https:\/\/github.com\/OBOFoundry\/purl.obolibrary.org\/issues\/290 (last visited June 1, 2019).","key":"ref022"},{"unstructured":"Ubuntu Linux, https:\/\/www.ubuntu.com (last visited June 1, 2019).","key":"ref023"},{"unstructured":"Vagrant by HashiCorp, https:\/\/www.vagrantup.com (last visited June 1, 2019).","key":"ref024"},{"unstructured":"w3id.org, Permanent identifiers for the web, http:\/\/w3id.org (last visited June 1, 2019).","key":"ref025"},{"doi-asserted-by":"publisher","key":"ref026","DOI":"10.1038\/sdata.2016.18"}],"container-title":["Data Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.3233\/DS-190022","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/journals.sagepub.com\/doi\/full-xml\/10.3233\/DS-190022","content-type":"application\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.3233\/DS-190022","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,11]],"date-time":"2025-03-11T07:09:59Z","timestamp":1741676999000},"score":1,"resource":{"primary":{"URL":"https:\/\/journals.sagepub.com\/doi\/10.3233\/DS-190022"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,10,11]]},"references-count":26,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2020,6,12]]}},"alternative-id":["10.3233\/DS-190022"],"URL":"https:\/\/doi.org\/10.3233\/ds-190022","relation":{},"ISSN":["2451-8484","2451-8492"],"issn-type":[{"type":"print","value":"2451-8484"},{"type":"electronic","value":"2451-8492"}],"subject":[],"published":{"date-parts":[[2019,10,11]]}}}