Here's the result of a test

nl_query = 'How many open transactions for the component PP-SFC-ADB'
allWords, required_values, target, conditions, tables, question_type, Proper_Nouns = nlp_nlidb.nlp_nlidb(nl_query)
allWords
<b><i>set(['pp', 'PP-SFC-ADB', 'transactions', 'PP-SFC', 'component', 'number', 'How_quantity', 'open'])</i></b>
required_values
<b><i>''</i></b>
target
<b><i>set(['component'])</i></b>
conditions
<b><i>set([])</i></b>
tables
<b><i>set(['transactions_table', 'components_table'])</i></b>
question_type
<b><i>'How_quantity'</i></b>
Proper_Nouns
<b><i>[]</i></b>

The component name is indeed added to <b>allWords</b>, but it's also splitted in <b>pp</b> and <b>PP-SFC</b>. Please make sure that only the component name is returned and not any other variant of it.

In a further discussion it would be interesting to discuss the possibility of returning the component name outside of allWords because this is used by the classifier while training and we don't want to train on specific component name. If it's separated from allWords (or any other variable) it would be easier to discard. Food for thought. To be continued in another topic.