//////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2023, 2026 Contributors to the Eclipse Foundation
//
// See the NOTICE file(s) distributed with this work for additional
// information regarding copyright ownership.
//
// This program and the accompanying materials are made available
// under the terms of the MIT License which is available at
// https://opensource.org/licenses/MIT
//
// SPDX-License-Identifier: MIT
//////////////////////////////////////////////////////////////////////////////

include::../_part_attributes.asciidoc[]

indexterm:[annotation, controller]
indexterm:[controller, annotation]

:leveloffset: -2

[[lang-tut-annotations-controller]]
== Controller properties annotations

A controller properties <<lang-tut-annotations,annotation>> can be added to a CIF specification that represents a controller that satisfies certain properties.
The annotation should not be manually added to specifications.
Instead, it should be added by tools such as the <<tools-chapter-controller-checker,CIF controller properties checker>> tool, once the tool has checked that the properties hold for the specification.
For instance, such a tool may add the following to a CIF specification that has <<tools-controller-checker-bounded-response,bounded response>>:

[source, cif]
----
@@controller:properties(boundedResponse: true, uncontrollablesBound: 2, controllablesBound: 5)
----

For more detailed information on controller properties annotations, see the <<lang-ref-annotations-controller,reference manual>>.
