---
title: "Document config"
source: https://dev.pageseeder.com/guide/configuration/psml/psml_document_config.html
description: "Document config is an XML file that defines how PSML documents are created, edited, labeled, and published. Located in the document type folder, it specifies naming conventions, editing interfaces, available labels, content roles, and publishing options."
last_updated: 2026-09-08T13:58:14+10:00
tokens: ~488
---

# Document config

When PSML documents of any type are created, the options specified in the **document config** are applied. Where some or all of the document config has not been specified for a particular [document type](/guide/configuration/psml.md), any missing values are inherited from the [default](/reference/glossary/builtin_document_types.md).

The following articles describe the key XML document config elements and their relationship to PSML documents:

- [\<creation\>](/guide/configuration/psml/psml_document_config/document_creation.md) – where the documents are saved and what conventions are used to name them.
- [\<editing\>](/guide/configuration/psml/psml_document_config/document_editing.md) – which editing interface should be configured to open the content.
- [\<labeling\>](/guide/configuration/psml/psml_document_config/document_labeling.md) – which labels are available in this document.
- [\<roles\>](/guide/configuration/psml/psml_document_config/document_roles.md) – which content roles are available in this document (different to user roles).
- [\<publishing\>](/guide/configuration/psml/psml_document_config/document_publishing.md) – which publishing options should be available to a particular type.

## File location

The document config is located in the folder for the document type that it describes and must be named `document-config.xml`:

`/WEB-INF/config/template/[project]/psml/[document type]/document-config.xml`

It can be created in the **template configuration page** or by import on the **template files page**.

> **Note:** When editing this config file in PageSeeder, pressing **ctrl-space** displays autocomplete options to make editing easier.

## File content

The document config follows this structure:

```xml

<document-config>
  <creation> ... </creation>
  <editing> ... </editing>
  <labeling> ... </labeling>
  <roles> ... </roles>
  <publishing> ... </publishing>
</document-config>
```

