Consider an API whose normative specification is maintained in an XML
file describing enum values, entrypoints, etc. The XML file is covered
under Apache 2.0. I write a python script to parse that XML and emit a
C header describing that API. What license options do I have for that
My amateur reading of Apache 2.0 Section 4 (Redistribution) is that I
can choose whatever I want for the generated header. The last paragraph
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions for
use, reproduction, or distribution of Your modifications, or for any
such Derivative Works as a whole, provided Your use, reproduction,
and distribution of the Work otherwise complies with the conditions
stated in this License.
The header is the Derivative Work, and I need not distribute the source
XML at all. On the other hand, my amateur reading of the definition of
"Derivative Work" in Apache 2.0:
"Derivative Works" shall mean any work, whether in Source
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other
modifications represent, as a whole, an original work of authorship.
For the purposes of this License, Derivative Works shall not include
works that remain separable from, or merely link (or bind by name) to
the interfaces of, the Work and Derivative Works thereof.
Suggests that such a header file would not count as a Derivative Work;
I'm not sure what it would count as, but as it's merely a binding to
the interfaces defined by the Work...