\label{doc_decisions_arbitrary_metadata_md_md_doc_decisions_arbitrary_metadata}%
\Hypertarget{doc_decisions_arbitrary_metadata_md_md_doc_decisions_arbitrary_metadata}%
 \hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md717}{}\doxysection{Problem}\label{doc_decisions_arbitrary_metadata_md_autotoc_md717}
To make storage-\/plugins suitable for {\ttfamily spec} they need to be able to store all the metadata as specified in \href{/home/jenkins/workspace/libelektra_master@3/doc/METADATA.ini}{\texttt{ M\+E\+T\+A\+D\+A\+T\+A.\+ini}}. Most file formats do not have support for that.\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md718}{}\doxysection{Constraints}\label{doc_decisions_arbitrary_metadata_md_autotoc_md718}
\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md719}{}\doxysection{Assumptions}\label{doc_decisions_arbitrary_metadata_md_autotoc_md719}
\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md720}{}\doxysection{Considered Alternatives}\label{doc_decisions_arbitrary_metadata_md_autotoc_md720}

\begin{DoxyItemize}
\item store metadata in the comments like the {\ttfamily ini} plugin\+: this exposes internal metadata into the comments and can drastically affect the readability of a storage file. Comments should never be touched by a parser.
\end{DoxyItemize}\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md721}{}\doxysection{Decision}\label{doc_decisions_arbitrary_metadata_md_autotoc_md721}
Use different storage plugins, or plugins with different configurations, for the {\ttfamily spec} namespace\+:


\begin{DoxyItemize}
\item {\ttfamily ni}
\item T\+O\+ML with {\ttfamily meta} configuration
\end{DoxyItemize}\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md722}{}\doxysection{Rationale}\label{doc_decisions_arbitrary_metadata_md_autotoc_md722}

\begin{DoxyItemize}
\item We do not need a storage plugin suitable for everything.
\item The problems that internal metadata ends up in configuration files disappears.
\end{DoxyItemize}\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md723}{}\doxysection{Implications}\label{doc_decisions_arbitrary_metadata_md_autotoc_md723}
We need to have different default plugins in {\ttfamily spec} than in the other namespaces.\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md724}{}\doxysection{Related Decisions}\label{doc_decisions_arbitrary_metadata_md_autotoc_md724}
\hypertarget{doc_decisions_arbitrary_metadata_md_autotoc_md725}{}\doxysection{Notes}\label{doc_decisions_arbitrary_metadata_md_autotoc_md725}
