Skip to content

Contributing Guidelines⚓︎

The DPDS community thrives on active participation. We welcome any contributions you can make! ❤️

This document describes the most popular ways to contribute to the DPDS community.

When contributing to the DPDS community consider the Code of Conduct to better understand expected and unacceptable behavior.

Spreading the Word⚓︎

Spreading the word about the specification is a great way to help the DPDS community grow and ensure that more people are aware of the specification. Here are some ways you can help:

  • Star ⭐ the specification repository on GitHub
  • Share your experience using the specification on social media, forums, or relevant communities
  • Mention the specification in talks, articles, or blog posts you create and let us know on Slack
  • Use the specification logo or website link on your website or documentation

Asking questions⚓︎

We wholeheartedly welcome your questions! They're not just accepted, they're vital for fostering knowledge exchange within DPDS community. It's through these inquiries that the specification evolves, becoming progressively clearer and more user-friendly. Follow these steps to ask questions:

  • Search for existing discussions and issues before creating a new question
  • Post your question as a new discussion thread
  • Clearly articulate your question and provide context if needed
  • Use descriptive titles for easier searchability

Sharing your knowledge on GitHub⚓︎

The spirit of sharing is at the heart of the DPDS community. By actively participating and sharing your knowledge and experience, you play a vital role in supporting and empowering other community members. Here are some ways to get involved:

Joining the conversation on Slack⚓︎

Slack is our go-to platform for informal communication and collaboration within the DPDS community.

Joining ongoing conversations on Slack channels is a fantastic way to connect with other community members, stay in the loop on DPDS community happenings, and gain insights into the latest developments.

To join the DPDS Slack workspace follow these steps:

  • Send an email to with subject Access to the DPDS Slack to request access to DPDS Slack Workspace
  • Introduce yourself in #introduce-yourself channel
  • Check the last updates in #announcements channel
  • Join ongoing discussions in #dpds channel

Adopting the Specification⚓︎

The success of the specification is tied to its adoption. One of the most effective ways to contribute to its success is therefore to use it and share your experiences. These are some examples of how you can use the specification:

  • Adopt the specification in your data management projects
  • Make your data management tool compliant with the specification
  • Implement an adapter tool to use a DPDS document together with third-party tool (ex. importers/exporters)
  • Implement a utility tool to support the development of a DPDS document (es. linter, validator, diff, composer, etc ...)

Reporting Errors⚓︎

Effectively reporting errors like typos, imprecision, ambiguity, and contradictions is a critical contribution to the success of the specification. Follow these steps to report an error:

  • Check open issues and pull requests to ensure the error hasn't already been reported
  • If you are unsure if what you have found is an actual error or not ask in the discussion section here on GitHub or in the #dpds channel on Slack
  • Report the error
    • Open a new issue
    • Set a clear title that describes the error and facilitates search (e.g., "Typo in Expectations Object Description").
    • Explain what you found, including a reference to the part of the specification that contains the potential error
    • Suggest a change (if possible) to fix the error:
    • Specify if the proposed change is only editorial or has impacts on the specification
    • If the change to fix the error is just editorial you can also submit directly a pull request without opening an issue before

Proposing Changes⚓︎

The specification is under continuous evolution. The process for making changes is outlined in the Development process section.

Joining Contributors⚓︎

A contributor is anyone participating in the DPDS community in one of the ways described in this document.

If you've made significant contributions to the development of the DPDS specification, you have the option to be credited on GitHub in the CONTRIBUTORS document.

Just send an email to with your information and a brief description of your work to be added to the list of contributors.

Becoming a Maintainer⚓︎

A maintainer is anyone who has commit rights on the specification repository.

The Project governance section details how to apply for maintainer role and outlines the responsibilities that come with it.

Maintainers are listed on GitHub in the MAINTAINERS document.

Joining the Technical Steering Committee⚓︎

A TSC member is anyone who has the right to vote to approve or reject changes to specifications or its governance model.

The Project governance section details how to apply for the TSC member role and outlines the responsibilities that come with it.

TSC members are listed on GitHub in the TSC document.