-
Notifications
You must be signed in to change notification settings - Fork 2
How do m2a merge works ? (element type field should be generated once) #6
Copy link
Copy link
Open
Labels
Description
Hello B3rn475,
I try to understand how m2a work and I miss something. The following code throws "element type field should be generated once". I'd like the obj1, 2 and 3 to be merged into entity like
{
id: "entity",
type: "entity",
attributes: {
elementnames : ["myelement1","myelement2","myelement3"]
},
metadata: {}
}
var extendModel = createExtender({
type: {},
relation: {},
custom: {}
});
var buildModel = function() {
var obj1 = {
id: "partial-element-1",
type: "partial-element",
attributes: {
elementname: "myelement1"
},
metadata: {}
}
var obj2 = {
id: "partial-element-2",
type: "partial-element",
attributes: {
elementname: "myelement2"
},
metadata: {}
}
var obj3 = {
id: "partial-element-3",
type: "partial-element",
attributes: {
elementname: "myelement3"
},
metadata:{}
}
return extendModel({
elements: [obj1, obj2, obj3],
relations: [],
metadata: {}
})
}
var transformer = createTransformer({
element: [
createRule(function(element, model) {
return true;
}, function(element, model) {
var el = {
id: "entity",
type: "entity",
attributes: {
elementnames : []
},
metadata: {}
}
el.attributes.elementnames.push(element.attributes.elementname)
return {
elements: [el],
relations: [],
metadata: {}
}
})
]
}, 'm2a');
var model = buildModel();
console.log(util.inspect(model));
var modelTransformed = transformer(model);
Thank you !
Reactions are currently unavailable