---
title: "URI pattern"
source: https://dev.pageseeder.com/reference/glossary/uri_pattern.html
description: "A URI pattern is a URL-like notation used by PageSeeder and Berlioz to match URLs and identify which service or user interface component to invoke. It uses curly brackets for dynamic URI variables."
last_updated: 2026-08-11T16:37:11+10:00
tokens: ~460
---

# URI pattern

A URI pattern (or [URL](url.md) pattern) is simple URL-like notation to match URLs. They are used by the PageSeeder services and [Berlioz](berlioz.md) to identify the user interface to render or service to invoke from a URL.

## Usage

In PageSeeder and Berlioz, each service or user interface component is bound to one or more URI patterns. When they process incoming URLs, they try to match the URLs to these patterns to identify the process to invoke for that URL.

## Origin and notation

The URI pattern language used by PageSeeder originates from the URI templates specification. A URI template performs the opposite transformation by generating a URL from a template and replacing the URL variables inside the template.

URI templates use curly brackets to represent the dynamic components of the URI (called URI variables). For example, `{id}`.

## Pattern matching

When a URL matches a specific pattern, any URI variable is resolved and supplied to the server. For example:

The URL below

```text
/comments/123
```

matches the following pattern

```text
/comments/{id}
```

and resolves the URI variable `id` so that

```text
id=123
```

## Matching conflict

If a URL matches multiple patterns, there are several ways of resolving the conflict. In PageSeeder, the default rule is to match the longest static part of the pattern, that is the longest string without including the URI variables.

An alternative rule would be to match the first defined pattern instead.

## Further information

For more information on the URI templates project, visit:

[https://www.pageseeder.org/projects/furi.html](https://www.pageseeder.org/projects/furi.html)

The API documentation is also available at:

[https://www.pageseeder.org/apidocs/furi/latest/index.html](https://www.pageseeder.org/apidocs/furi/latest/index.html)

