We need a mechanism to describe custom format variants, its main usage being for the TEI subformats. The mediatype, root element, schemas (either relaxng, schematro, xml schema or dtd) must be testable with a common Turing complete language for full power. A new profile should require just adding a new file with a lambda function taking the list of features and returning a new format (for a match) or empty result (for non match).
We need a mechanism to describe custom format variants, its main usage being for the TEI subformats. The mediatype, root element, schemas (either relaxng, schematro, xml schema or dtd) must be testable with a common Turing complete language for full power. A new profile should require just adding a new file with a lambda function taking the list of features and returning a new format (for a match) or empty result (for non match).