# [NTG-context] Building a Component

Malte Stien malte at stien.de
Mon Sep 12 13:03:10 CEST 2016

```Hi all,

I am just familiarising myself with projects/products/components. I have a number of documents that all belong to a large set of Reference Manuals and so far I have built them all separately and have relied a lot on the simple \input... statement. I assume with projects/products/components I might be able to do something much smarter. Let’s see.

I get stuck quite early on, though. I have created a minimal component file ‘component-1.tex’ and when I build it, context runs into what seems to be an infinite recursion. Here is the file:

\project test-project
\product reference-manual-1
\startcomponent component-1
\starttext

\section[c1-s1]{Component 1 Section 1}
This is a paragraph in Component 1 Section 1

\stoptext
\stopcomponent

...and here is the console when I run it:

> context component-1.tex
...
...
...
open source     > 196 > 198 > component-1.tex
open source     > 197 > 199 > reference-manual-1.tex
open source     > 198 > 200 > component-1.tex
open source     > 199 > 201 > reference-manual-1.tex
open source     > 200 > 202 > component-1.tex
open source     > 201 > 203 > reference-manual-1.tex

tex error       > tex error on line 2 in file reference-manual-1.tex: ! TeX capacity exceeded, sorry [text input levels=600]

\m_syst_action_nop #1 ->\clf_startproduct {#1}

l.11 \startproduct reference-manual-1

1     % \project test-project
2 >>  \startproduct reference-manual-1
3
4     \component component-1
5
6     \stopproduct
7

Here is reference-manual-1.tex:

\project test-project
\startproduct reference-manual-1

\component component-1

\stopproduct