> For the complete documentation index, see [llms.txt](https://docs.snomed.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-extension-guide/5-key-steps/5.2-preparation.md).

# Preparation

Prior to creating the components or reference sets in an extension, some preliminary steps must be completed. These tasks include:

1. Obtaining a namespace identifier from SNOMED International
   * A namespace identifier is required to generate component identifiers (SCTIDs)
2. Acquiring the appropriate tools to support the creation, management, and distrbution of the extension
   * Which tools, functionalities and services are required will depend on the content of the extension
   * For more information please refer to [Tooling Requirements](/snomed-ct-practical-guides/snomed-ct-extension-guide/5-key-steps/5.2-preparation/5.2.1-tooling-requirements.md)
   * Note that these tools will be used to complete the steps listed below
3. Creating module(s)
   * At least one module concept is required
   * Components and reference sets which belong to the extension are assigned to the approriate module
4. Specifying module dependencies
   * These dependencies are specified using the [Module Dependency Reference Set](/snomed-ct-practical-guides/snomed-ct-extension-guide/4-logical-design/4.2-modules/4.2.2-module-dependencies.md#module-dependency-reference-set)
   * This informs the consumers of the extension as to which additional modules are required to use/process the content of the extension
     * Note that some of these modules will come from other editions (such as the International Edition) and possibly, other extensions

The diagram below illustrates these key steps during the initial stage of extension creation.

<figure><img src="https://3979592733-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3RKZIWpWFT0ocCgNT16E%2Fuploads%2Fgit-blob-814f2bf289c06540913c3bf95a908b389ca8c1fe%2F57815376.png?alt=media" alt=""><figcaption><p>Prerequisites to creating an extension</p></figcaption></figure>

<a href="https://docs.google.com/forms/d/e/1FAIpQLScTmbZIf0UEQwYDkY27EEWBkaiYkHSbR0_9DmFrMLXoQLyL7Q/viewform?usp=pp_url&#x26;entry.1767247133=Extension+Guide&#x26;entry.670899847=5.2%20Preparation" class="button primary">Provide Feedback</a>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-extension-guide/5-key-steps/5.2-preparation.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
