---
title: "Berlioz file organization"
source: https://dev.pageseeder.com/reference/advanced/website/berlioz/berlioz_file_anatomy.html
last_updated: 2026-08-11T16:31:24+10:00
tokens: ~567
---

# Berlioz file organization

This document describes the file organization within a Berlioz-powered Website.

## Public and private files

Berlioz distinguishes two types of files:

| Public files | Are directly available on the Website (though they might also be protected at a different level). |
| --- | --- |
| Private files | Are only accessible by the application. They are located within the `/WEB-INF` directory. |

There are no restrictions on how public files are organized, so this document deals essentially with how private files are organized.

## Public folder structure

The following table describes the folder structures under `/` that are directly accessible by the Web Application.

| **`/`** | Public files – directly accessible by the Web server. The only files directly under this folder are usually robots.txt, favicon.ico, etc. |
| --- | --- |
| **`/script`** | Container for all the scripts |
| **`/style`** | Container for all the styles, CSS images should also be stored here |
| **`/WEB-INF`** | Private files – only accessible by the Web application, see following table |

## Private folder structure

The following table describes the folder structures under `/WEB-INF` that are only accessible by the Web Application.

| **`/web.xml`** | Web descriptor for the application as specified by J2EE |
| --- | --- |
| **`/classes`** | Classes and resources used by the class loader; it might be empty if no customization is required |
| **`/config`** | Configuration files for Berlioz |
| `/index` | When indexing is turned on, this is where the Lucene index is located |
| `/ixml` | Contains the templates used by the indexer to generate the index |
| `/lib` | Libraries loaded by the web container: Must include wo-berlioz and wi-bastille. |
| **`/psml`** | PSML data used by the application and generally Published by PageSeeder |
| **`/xml`** | XML data used by the application |
| `/xslt` | XSLT files used by Berlioz to transform the XML output of Generators; organized by output type (XSLT, RSS, ICAL, etc.) |

> **Note:** From PageSeeder 5.2, it is recommended that PageSeeder documents be published using the [\<ps:export\> Ant task](../../../../guide/publishing/ant_api/tasks/task_export.md) as [PSML](../../../glossary/psml.md).

