diff --git a/lib/config-parser.js b/lib/config-parser.js
index <HASH>..<HASH> 100644
--- a/lib/config-parser.js
+++ b/lib/config-parser.js
@@ -207,15 +207,17 @@ function handleResourceContext(attrNode, context) {
     }
 
     if (attrNode.childKey) {
-        for (dataSourceName in attrNode.childKey) {
-            if (!context.dataSourceAttributes[dataSourceName]) {
-                throw new ImplementationError(
-                    'Unknown DataSource "' + dataSourceName + '" in childKey' + context.errorContext);
-            }
+        if (!attrNode.resource) { // DataSource attributes can only be resolved for inline-resources
+            for (dataSourceName in attrNode.childKey) {
+                if (!context.dataSourceAttributes[dataSourceName]) {
+                    throw new ImplementationError(
+                        'Unknown DataSource "' + dataSourceName + '" in childKey' + context.errorContext);
+                }
 
-            attrNode.childKey[dataSourceName].forEach(function (attribute) {
-                context.dataSourceAttributes[dataSourceName].push(attribute);
-            });
+                attrNode.childKey[dataSourceName].forEach(function (attribute) {
+                    context.dataSourceAttributes[dataSourceName].push(attribute);
+                });
+            }
         }
     }
config-parser: DataSource attributes can only be resolved for inline-resources