DMN Model failing deployment

Camunda Run version 8.9.9

I’m trying to deploy this DMN model - which I’m quite positive it used to work on Camunda 8.6 - but I’m getting a parsing error that does not say much:

Response code 400 (Bad Request) - {“type”:“about:blank”,“title”:“INVALID_ARGUMENT”,“status”:400,“detail”:“Command ‘CREATE’ rejected with code ‘INVALID_ARGUMENT’: Expected to deploy new resources, but encountered the following errors:\n’DiscountCalculation_8_9.dmn’: Failed to parse DMN: org.camunda.bpm.model.dmn.DmnModelException: Unable to parse model”,“instance”:“/v2/deployments”}. Enhanced stack trace available as error.source. [ deploy-error ]

DiscountCalculation_8_9.dmn (9.0 KB)

If I remove the top Decision (“Discount Calculation”) and Input Data “Purchase Amount” , the deployment works fine:

DiscountCalculation_8_9_Test.dmn (4.6 KB)

I think I found the reason but I don’t know if it is an expected behavior.

When a DMN model is created and the data type of the input data is not specified, the elements look like this:

  <inputData id="InputData_0ny0kuw" name="Account Streaming Tenure" />
  <inputData id="InputData_0cmuehn" name="Account Cable Tenure" />
  <inputData id="InputData_1h2agge" name="Purchase Amount"/>

If I set specific data types for any of the Input Data elements

  <inputData id="InputData_0ny0kuw" name="Account Streaming Tenure" />
  <inputData id="InputData_0cmuehn" name="Account Cable Tenure">
    <variable id="InformationItem_1xkqoqq" typeRef="number" />
  </inputData>
  <inputData id="InputData_1h2agge" name="Purchase Amount" />

The deployment fails.

Even if I change it back to Any it fails. I have to manually remove the “variable” elements in order to have a successful deployment.

The file attached that works also has Input Data elements with data type specified but I noticed that the “variable” elements have a “name” attribute:

  <inputData id="InputData_00br8b0" name="Account Streaming Tenure">
    <variable id="InformationItem_1ywulwm" name="Account Streaming Tenure" typeRef="number" />
  </inputData>
  <inputData id="InputData_0enr4u0" name="Account Cable Tenure">
    <variable id="InformationItem_1p7ozt3" name="Account Cable Tenure" typeRef="number" />
  </inputData>

If I manually add the attribute “name” to each Input Data elements:

  <inputData id="InputData_0ny0kuw" name="Account Streaming Tenure">
    <variable id="InformationItem_0qndhu9" name="Account Streaming Tenure" typeRef="number" />
  </inputData>
  <inputData id="InputData_0cmuehn" name="Account Cable Tenure">
    <variable id="InformationItem_0psutgy" name="Account Cable Tenure" typeRef="number" />
  </inputData>
  <inputData id="InputData_1h2agge" name="Purchase Amount">
    <variable id="InformationItem_0ff9d0p" name="Purchase Amount" typeRef="number" />
  </inputData>

The deployment succeeds and the decision works as expected.

I downloaded Camunda Modeler 5.50.1 and it creates the attribute “name” as expected. I’m closing this topic.