//////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2010, 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[]

:leveloffset: -2

[[tools-cif2cif-chapter-remove-cif-svg-decls]]
== Remove CIF/SVG declarations

indexterm:[CIF to CIF transformer,remove CIF/SVG declarations]
indexterm:[remove CIF/SVG declarations]
indexterm:[CIF/SVG declaration,remove]
This CIF to CIF transformation removes <<lang-tut-svg-chapter-visualization-cifsvg,CIF/SVG declarations>> from the specification.
This may reduce the size of the specification.
It may also lead to the specification being supported by more tools, as the CIF/SVG declarations may use features of the CIF language that certain tools don't support.

This CIF to CIF transformation removes only CIF/SVG declarations.
The <<tools-cif2cif-chapter-remove-io-decls>> CIF to CIF transformation removes them as well, but additionally also removes the other I/O declarations.

=== Supported specifications

This transformation supports all CIF specifications.

=== Preprocessing

n/a

indexterm:[remove CIF/SVG declarations,implementation]

=== Implementation details

All CIF/SVG declarations are removed from the specification.

=== Renaming

n/a

indexterm:[remove CIF/SVG declarations,size considerations]

=== Size considerations

Since information is removed from the specification, the specification can only become smaller as a result of this transformation.

=== Optimality

n/a

=== Annotations

This transformation does not process, add, or remove any annotations.
