lib/config-parser.js
function handleAttributeContext(attrNode, context) {
    if (!attrNode.type && attrNode.inherit !== 'inherit') attrNode.type = 'string';

    if (attrNode.map) {
        Object.keys(attrNode.map).forEach(mappingName => {
            const mapping = attrNode.map[mappingName];

            Object.keys(mapping).forEach(dataSourceName => {
                if (!context.dataSourceAttributes[dataSourceName]) {
                    throw new ImplementationError(
                        `Unknown DataSource "${dataSourceName}" in map${context.errorContext}`
                    );
                }

                context.dataSourceAttributes[dataSourceName].push(mapping[dataSourceName]);
            });
        });

        if ('value' in attrNode) {
            throw new ImplementationError(
                'Static "value" in combination with "map" makes no sense' + context.errorContext
            );
        }
    }
}
function handleAttributeContext(attrNode, context) {
    if (!attrNode.type && attrNode.inherit !== 'inherit') attrNode.type = 'string';

    if (attrNode.map) {
        Object.keys(attrNode.map).forEach(mappingName => {
            const mapping = attrNode.map[mappingName];

            Object.keys(mapping).forEach(dataSourceName => {
                if (!context.dataSourceAttributes[dataSourceName]) {
                    throw new ImplementationError(
                        `Unknown DataSource "${dataSourceName}" in map${context.errorContext}`
                    );
                }

                context.dataSourceAttributes[dataSourceName].push(mapping[dataSourceName]);
            });
        });

        if ('value' in attrNode) {
            throw new ImplementationError(
                'Static "value" in combination with "map" makes no sense' + context.errorContext
            );
        }
    }
}
function handleAttributeContext ( attrNode , context ) { if ( ! attrNode . type && attrNode . inherit !== 'inherit' ) attrNode . type = 'string' ; if ( attrNode . map ) { Object . keys ( attrNode . map ) . forEach ( mappingName => { const mapping = attrNode . map [ mappingName ] ; Object . keys ( mapping ) . forEach ( dataSourceName => { if ( ! context . dataSourceAttributes [ dataSourceName ] ) { throw new ImplementationError ( ` ${ dataSourceName } ${ context . errorContext } ` ) ; } context . dataSourceAttributes [ dataSourceName ] . push ( mapping [ dataSourceName ] ) ; } ) ; } ) ; if ( 'value' in attrNode ) { throw new ImplementationError ( 'Static "value" in combination with "map" makes no sense' + context . errorContext ) ; } } }
Handle special cases and checks for options in attribute context.

@private
Handle special cases and checks for options in attribute context .