Skip to content

Publishing instructions out of date #188

Open

Description

@elharo

Affected version

HEAD

Bug description

Per Gemini:

To discover, aggregate, or publish RDF metadata describing open-source software projects (using DOAP—Description of a Project—or similar ontologies), the current ecosystem relies on decentralized hosting and modern web registries rather than centralized DOAP-specific directories.

Here is how you can publish or locate this metadata today:

1. Publishing Open-Source Metadata

Instead of registering a project in a standalone directory, publish the DOAP file directly within the project's ecosystem and rely on standard Web of Data mechanisms:

  • Host in the Root Repository: Store the project's doap.rdf or doap.ttl directly in the root of its public repository (e.g., GitHub, GitLab, or Codeberg).
  • Embed Structured Data (JSON-LD): Embed project metadata using JSON-LD with the [schema.org SoftwareApplication](https://schema.org/SoftwareApplication?utm_source=gemini) or [SoftwareSourceCode](https://schema.org/SoftwareSourceCode?utm_source=gemini) vocabularies in the HTML head of the project's documentation or landing page:
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "SoftwareSourceCode",
  "name": "ProjectName",
  "codeRepository": "https://github.com/example/project",
  "programmingLanguage": "Java",
  "license": "https://www.apache.org/licenses/LICENSE-2.0"
}
</script>

Search engine crawlers automatically index schema.org metadata.

2. Discovering and Querying Open-Source Metadata

To retrieve structured metadata across open-source software without defunct directories:

  • Wikidata SPARQL Endpoint: Wikidata maintains structured metadata on thousands of open-source software projects, including properties like homepages, repository locations, software licenses, programming languages, and developers.
  • Endpoint: [https://query.wikidata.org/](https://query.wikidata.org/)
  • Example SPARQL query for open-source Java projects on Wikidata:
SELECT ?item ?itemLabel ?repo WHERE {
  ?item wdt:P31 wd:Q7397;          # instance of software
        wdt:P275 ?license;        # has a license
        wdt:P277 wd:Q251;         # programming language: Java
        wdt:P1324 ?repo.          # source code repository
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
LIMIT 100
  • Package Manager Registries & APIs: Ecosystem-specific package managers expose structured metadata natively via REST APIs (e.g., Maven Central Search API, PyPI JSON API, or npm Registry API).
  • Software Heritage Graph: The Software Heritage project archives public source code repositories along with their metadata, accessible via their Web API and public datasets.

Activity

  1. added
    bugSomething isn't working
    documentationImprovements or additions to documentation
    on Sep 22, 2026
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

    bugSomething isn't workingdocumentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions