\label{doc_decisions_capabilities_md_md_doc_decisions_capabilities}%
\Hypertarget{doc_decisions_capabilities_md_md_doc_decisions_capabilities}%
 \hypertarget{doc_decisions_capabilities_md_autotoc_md1692}{}\doxysection{Problem}\label{doc_decisions_capabilities_md_autotoc_md1692}
Only plugins like {\ttfamily dump} and {\ttfamily quickdump} are able to represent any Key\+Set (as they are designed to do so). Limitations of other storage plugins are e.\+g., that not every structure of configuration is allowed.

Some of these limitations were documented {\ttfamily infos/status}, others were not.\hypertarget{doc_decisions_capabilities_md_autotoc_md1693}{}\doxysection{Constraints}\label{doc_decisions_capabilities_md_autotoc_md1693}
\hypertarget{doc_decisions_capabilities_md_autotoc_md1694}{}\doxysection{Assumptions}\label{doc_decisions_capabilities_md_autotoc_md1694}
\hypertarget{doc_decisions_capabilities_md_autotoc_md1695}{}\doxysection{Considered Alternatives}\label{doc_decisions_capabilities_md_autotoc_md1695}

\begin{DoxyItemize}
\item Implementing plugins that work around the limitations (e.\+g. escape the characters or rewrite directory values) is too complex and lead to new problems (e.\+g. escaping of the rewritten values and interactions of plugins, e.\+g. renaming and notification).
\item Capabilities API was also found too complex, as application developers usually do not exactly know the requirements of their underlying format, especially if some parts of the configuration is extensible or derived from user-\/input.
\end{DoxyItemize}\hypertarget{doc_decisions_capabilities_md_autotoc_md1696}{}\doxysection{Decision}\label{doc_decisions_capabilities_md_autotoc_md1696}
Add {\ttfamily infos/features/storage} to document limitations of storage plugins. Ideally, storage plugins should throw an error in {\ttfamily kdb\+Set} for unrepresentable Key\+Sets.

Elektra cannot guarantee that any configuration file format can be mounted anywhere. Developers, maintainers and administrators are responsible for what they mount. They need to test the setup.\hypertarget{doc_decisions_capabilities_md_autotoc_md1697}{}\doxysection{Rationale}\label{doc_decisions_capabilities_md_autotoc_md1697}
\hypertarget{doc_decisions_capabilities_md_autotoc_md1698}{}\doxysection{Implications}\label{doc_decisions_capabilities_md_autotoc_md1698}
\hypertarget{doc_decisions_capabilities_md_autotoc_md1699}{}\doxysection{Related Decisions}\label{doc_decisions_capabilities_md_autotoc_md1699}

\begin{DoxyItemize}
\item \mbox{\hyperlink{doc_decisions_base_name_md}{Base Name}}
\end{DoxyItemize}\hypertarget{doc_decisions_capabilities_md_autotoc_md1700}{}\doxysection{Notes}\label{doc_decisions_capabilities_md_autotoc_md1700}
See also \href{https://issues.libelektra.org/3504}{\texttt{ \#3504}}\+: 