Una colección es la unidad de obtención de Content: un glob, un lugar de donde
leerlo y un esquema. duxt declara una por repositorio × ref, así que un sitio
con una carpeta tiene una colección y un sitio con dos repositorios en tres refs
tiene seis.

Sus **nombres son datos**, no una constante. Un sitio con dos repositorios tiene
`docs_duxt` y `docs_workflows` y ninguna colección llamada `docs` — por eso el
tema lee el nombre de la colección del manifiesto en lugar de fijarlo en el
código, y por eso una consulta propia debería hacer lo mismo:

```vue
<script setup lang="ts">
const { collection } = useDuxtCollection();
const { data } = await useAsyncData(() =>
  queryCollection(collection.value).all()
);
</script>
```

## Qué añade el esquema

Content solo almacena lo que un esquema declara, así que cuatro cosas que el
tema necesita se declaran explícitamente. La lista completa está en la
[referencia de frontmatter](/reference/frontmatter); las razones están aquí:

- **`icon`, `layout`, `navigation`** — campos del tema. Sin el esquema, un
  `icon:` en el frontmatter se descarta en silencio antes de que la barra
  lateral llegue a verlo.
- **`rawbody`** — el Markdown tal como se escribió. Dos cosas lo necesitan: el
  botón que entrega una página a un modelo, y `llms-full.txt`.
- **`redirectFrom`** — convertido en reglas de ruta por la compilación; véase
  [Mover una página](/guides/move-a-page).
- **`sitemap`** — lo que mete estas páginas en el sitemap. Una colección tiene
  que declarar el campo, o el sitemap listará las rutas del sitio y ni una sola
  página de documentación.

## Fragmentos

`_partials/` en la carpeta de documentación de **cualquier** fuente alimenta una
colección compartida, y `:partial{name="install"}` en cualquier página de
cualquier fuente lo representa. Content no trae ninguna directiva de inclusión,
y a través de varios repositorios esa carencia no tiene solución alguna — una
nota de instalación que debe decir lo mismo en tres proyectos se copia en tres
proyectos y se desvía.

Los fragmentos llevan la misma dimensión de idioma que las páginas:
`docs/_partials/` es `duxt_partials`, `docs/de/_partials/` es
`duxt_partials_de`, y `:partial` recorre [la misma cadena de
respaldo](/concepts/localisation) que recorrió la página en la que está. Tiene
que ser la misma cadena: que una página y los bloques que incluye caigan en
idiomas distintos es justo como se acaba con una página traducida a medias sin
que nada lo indique.

Los fragmentos quedan excluidos de las colecciones de páginas. De lo contrario
cada fragmento sería también una página: en la barra lateral, en la búsqueda, en
`llms.txt`.

## Los borradores son archivos, no banderas

Un borrador es `deploying.draft.md`, no `draft: true` en el frontmatter. La
bandera es la escritura obvia y la que no puede funcionar: el contenido de una
colección se declara antes de que Content haya leído un solo archivo — en una
fuente remota, antes de que se haya descargado — así que en ese momento nada
sabe lo que dice ningún frontmatter. Un nombre de archivo sí se conoce. Content
elimina `.draft` de la URL, de modo que la página se sirve en `/deploying` en el
servidor de desarrollo y simplemente no está en la compilación.