Skip to content

Unreachable DOI #26

Description

@ns-rse

The DOI 10.1289/EHP1818 no longer resolves as noted in the entry in the README.md
itself.

This is because the journal Environmental Health Perspectives disappeared
2025-12-01
.

I discovered this whilst working on #23 and as a consequence the curl query returns the following...

<!DOCTYPE html>
<html lang="en-us">
<head>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>Error: DOI Not Found</title>



    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css"
          rel="stylesheet"
          integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC"
          crossorigin="anonymous">
    <script
            src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"
            integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
            crossorigin="anonymous">
    </script>

    <script src="https://kit.fontawesome.com/731b8140c4.js" crossorigin="anonymous"></script>

    <link rel="stylesheet" href="/static/css/style.css" integrity="">

    <style>
        @import url("https://fonts.googleapis.com/css2?family=Roboto+Mono&family=Roboto:wght@100&display=swap");
    </style>

    <link rel="icon" sizes="48x48" href="/static/images/favicons/favicon.ico">
    <link rel="icon" sizes="32x32" href="/static/images/favicons/favicon-32x32.png">
    <link rel="icon" sizes="16x16" href="/static/images/favicons/favicon-16x16.png">
    <link rel="apple-touch-icon-precomposed" href="/static/images/favicons/apple-touch-icon.png">
    <link rel="apple-touch-icon-precomposed" sizes="192x192" href="/static/images/favicons/android-chrome-192x192.png">
    <link rel="apple-touch-icon-precomposed" sizes="512x512" href="/static/images/favicons/android-chrome-512x512.png">

</head>
<body class="generic-page">
<header>
    <div class="row">
        <div class="col logo">
            <a href="https://www.doi.org"><img class="header-logo" src="/static/images/logos/header_logo_cropped.svg" /></a>
        </div>
        <div class="col home-link">
            <div class="link-alt">
                <a href="https://www.doi.org">
                    <span>VISIT DOI.ORG</span>
                    <i class="fa-solid fa-arrow-right-long hover-move-right"></i>
                </a>
            </div>
        </div>
    </div>

</header>


<main aria-role="main">
    <header class="homepage-header">
    </header>
    <div class="homepage-content">

        <section class="single-top">
            <div class="row short"></div>
        </section>

        <div class="page-content">
            <article>
                <div>
                    <h2>DOI Not Found</h2>



                    <h3>10.1289/EHP1818_)</h3>




                    <p>This DOI cannot be found in the DOI System.  Possible reasons are:</p>


                    <ul>
                        <li style="padding-bottom: .5em;">The DOI is incorrect in your source. Search for the item by name, title, or other metadata using a search engine.</li>
                        <li style="padding-bottom: .5em;">The DOI was copied incorrectly. Check to see that the string includes all the characters before and after the slash and no sentence punctuation marks.</li>
                        <li style="padding-bottom: .5em;">The DOI has not been activated yet. Please try again later, and report the problem if the error continues.</li>
                    </ul>


                </div>
            </article>
        </div>

        <section class="home-infos">
            <div class="row">
                <div class="col ">
                    <h2 class="title">WHAT CAN I DO NEXT?</h2>
                    <ul>
                        <li>If you believe this DOI is valid, you may <strong>report this error</strong> to the responsible DOI Registration Agency using the form here.</li>
                        <li>If your organization is the steward of this DOI prefix, please make sure you have completed registration of this DOI with your Registration Agency.</li>
                        <li>You can try to search again from <a href="https://www.doi.org">DOI.ORG homepage</a></li>
                    </ul>
                </div>
                <div class="col form">
                    <h2 class="title"><img src="/static/images/exclamation.svg">REPORT AN ERROR</h2>
                    <form action="/notfound" method="post" enctype="application/x-www-form-urlencoded" name="notFoundForm" onsubmit="return submitDoiNotFound(event);">
                        <div class="row">
                            <div class="col"><label for="missingHandle">DOI:</label></div>
                            <div class="col"><input id="missingHandle" name="missingHandle" value="10.1289/EHP1818_)" type="text" readonly="readonly"></div>
                        </div>
                        <div class="row">
                            <div class="col"><label for="referringPage">URL of Web Page Listing the DOI:</label></div>
                            <div class="col"><input id="referringPage" name="referringPage" type="text" ></div>
                        </div>
                        <div class="row">
                            <div class="col"><label for="userEmailAddress">Your Email Address:</label></div>
                            <div class="col"><input id="userEmailAddress" name="userEmailAddress" type="text" /></div>
                        </div>
                        <div class="row">
                            <div class="col"><label for="comments">Additional Information About the Error:</label></div>
                            <div class="col"><textarea id="comments" name="comments"></textarea></div>
                        </div>
                        <div class="row">
                            <div class="col"></div>
                            <div class="col"><input class="submit" type="submit" value="Submit Error Report"></div>
                        </div>
                        <div class="row">
                            <p id="invalidDoi" style="display: none; background:#F5B7B1; border-radius: 5px;">The DOI entered is not a valid DOI: it should start with 10 followed by a dot, and contain a slash with no preceding whitespace.</p>
                            <p id="invalidEmail" style="display: none; background:#F5B7B1; border-radius: 5px;">The email address entered is invalid.</p>
                            <p id="fallback" style="display: none;">Please <a href="mailto:doi-help@doi.org?subject=DOI%20Not%20Found">contact us</a> if you wish to report this anyway.</p>
                        </div>
                    </form>
                </div>
            </div>

        </section>
    </div>


</main>

<footer>
    <div class="row">
        <div class="col footer-left">
            <a href="https://www.doi.org"><img class="footer-logo" src="/static/images/logos/footer_logo_cropped.svg" /></a>
        </div>
        <div class="col footer-right">
            <div class="row more-info-heading">
                <div class="col">
                    <h2>More information on DOI resolution:</h2>
                </div>
            </div>
            <div class="row">
                <div class="col">
                    <ul>
                        <li><a href="https://www.doi.org/the-identifier/resources/factsheets/doi-resolution-documentation">DOI Resolution Factsheet</a></li>
                    </ul>
                </div>
                <div class="col">
                    <ul>
                        <li><a href="https://www.doi.org/the-identifier/resources/handbook">The DOI Handbook</a></li>
                    </ul>
                </div>
                <div class="col">
                    <ul>
                        <li><a href="https://www.doi.org/privacy-policy/">Privacy Policy</a></li>
                    </ul>
                </div>
            </div>
        </div>

    </div>
    <div class="row">
        <div class="col copyright">
            <p>Copyright © 2023 DOI Foundation. <i class="fa-brands fa-fw fa-creative-commons"></i><i class="fa-brands fa-fw fa-creative-commons-by"></i> The content of this site is licensed under a <a href="https://creativecommons.org/licenses/by/4.0/" title="Creative Commons" target="_blank">Creative Commons Attribution 4.0 International License</a>.</p><p>DOI&reg;, DOI.ORG&reg;, and shortDOI&reg; are trademarks of the DOI Foundation.</p>
        </div>
        <div class="col socials">
            <ul class="socials-footer">

                <li><a href="https://twitter.com/DOI_Foundation"><i class="fa-brands fa-fw fa-twitter"></i></a></li>

                <li><a href="https://www.linkedin.com/company/doi-foundation-inc/"><i class="fa-brands fa-fw fa-linkedin"></i></a></li>

                <li><a href="mailto:info@doi.org"><i class="fa-solid fa-fw fa-envelope"></i></a></li>

            </ul>
        </div>
    </div>
</footer>

<script type="text/javascript">
    function submitDoiNotFound(event) {
        try {
            document.getElementById("invalidEmail").style.display = "none";
            document.getElementById("invalidDoi").style.display = "none";
            document.getElementById("fallback").style.display = "none";

            const missingHandle = document.getElementById('missingHandle').value.trim();
            const userEmailAddress = document.getElementById('userEmailAddress').value.trim();

            if (!validateDoi(missingHandle)) {
                event.preventDefault();
                document.getElementById("invalidDoi").style.display = "block";
                document.getElementById("fallback").style.display = "block";
                return false;
            }
            if (!validateEmail(userEmailAddress)) {
                event.preventDefault();
                document.getElementById("invalidEmail").style.display = "block";
                return false;
            }
        } catch (error) {
            // ignore
        }
    }

    function validateEmail(email) {
        const regEx = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
        return regEx.test(email);
    }

    function validateDoi(doi) {
        const regEx = /^10(?:\.[^\s\/]+)?\//;
        return regEx.test(doi);
    }
</script>

</body>
</html>

Which would need parsing out of the .bib file.

Possible solutions

Remove the DOI

Its useful to have the DOI included in all entries, but if they don't resolve that is a problem. To which end we might
consider removing invalid DOIs. We could perhaps incorporate this into #23 and add a comment to PRs when DOIs are found
to be invalid, perhaps even remove them if they aren't?

Improve doi2bib

We should improve the script so that queries that don't return valid BibTeX entries are dropped and only valid .bib
output that can be redirected to a file are included.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions