> For the complete documentation index, see [llms.txt](https://vostok.gitbook.io/configuration/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://vostok.gitbook.io/configuration/concepts-and-basics/settings-nodes-scoping.md).

# Settings nodes scoping

Scoping is the operation of navigating a [settings node](/configuration/concepts-and-basics/settings-nodes.md) tree by accessing child nodes of [objects](/configuration/concepts-and-basics/settings-nodes/object-nodes.md) via names in a case-insensitive manner. A sequence of names resembling a path in the object structure, such as `["property1", "property2"]` is called a *scope*.

Scoping does not work on [value](/configuration/concepts-and-basics/settings-nodes/value-nodes.md) and [array](/configuration/concepts-and-basics/settings-nodes/array-nodes.md) nodes (always results in `null`).

Scoping is used to map object fields/properties to nodes of settings tree during [binding](/configuration/concepts-and-basics/binding-nodes-to-models.md). It also allows to [scope sources](/configuration/basic-scenarios/scope-sources.md) — create a source that returns a subtree of settings returned by the original source.

### Examples

* `{A: 1}` scoped to `a` is just a value of `1`.
* `{A: 1}` scoped to `b` is `null`.&#x20;
* `{A: {B: [1, 2]}}` scoped to `A` is `{B: [1, 2]}`
* `{A: {B: [1, 2]}}` scoped to `[A, B]` is `[1, 2]`
* `{A: {B: [1, 2]}}` scoped to `[A, B, C]` is `null`.

### Related pages

{% content-ref url="/pages/-M6UVluEtzPV2Wnw3ecH" %}
[Scope sources](/configuration/basic-scenarios/scope-sources.md)
{% endcontent-ref %}

{% content-ref url="/pages/-M6UQlGKGPuVt1P3lsHf" %}
[Binding nodes to models](/configuration/concepts-and-basics/binding-nodes-to-models.md)
{% endcontent-ref %}
