Extending BPMN: opinions

Hi everyone!

I’m working on an extension to BPMN, maybe a bit more. I’d love your feedback about it!
I’m still in the early phases of this, so for the moment it’s all going to be a bit fuzzy.

What I want to do is to add some information to tasks. This information will be useful in a work environment to determine the state of the task by looking at the data of the project.
Keep in mind I will be mostly working with informative processes.

I’m envisioning something similar to the following:
Task 1 takes in input Document X and Information Y, and outputs Document Z.

Using this information, I can infer some stuff about the state of the project. For example, if I see that Document X is present but Information Y isn’t, the process cannot start yet. On the contrary, if all 3 are present the task has ended.

How would you go about implementing an extension like this?

Moreover, these informations will be displayed by some logic. Hence, I’m thinking that the tasks only point to an identifier of these documents/informations and that they have some more data attached in an external document, maybe a UML or something.

I’ll keep updating this post with what I come up with, I’d very much like some feedback.
At the moment I very much like this idea, but it still needs lots of work.

What I want to achieve is something like the following XML, but possibly have it standard-compliant. Which I honestly have very little idea of how to do at the moment

<bpmn:task id="Activity_1nnj3re" name="Test Process">
      <bpmn:incoming>Flow_03ta79k</bpmn:incoming>
      <bpmn2:dataInput id="DataInput_1" itemSubjectRef="_ItemDefinition_2" isCollection="true" name="Input 1"/> 
      <bpmn2:dataInput id="DataInput_2" itemSubjectRef="_ItemDefinition_3" isCollection="false" name="Input 2"/> 
      <bpmn2:dataOutput id="DataOutput_2" itemSubjectRef="_ItemDefinition_4" isCollection="true" name="Output 1"/> 
      <bpmn:outgoing>Flow_1yevdjh</bpmn:outgoing>
</bpmn:task>

Can anybody offer suggestions on how it would be best to do this?
I’d like the inputs to point to the ID of some external objects that are described in an outside UML.

Sounds like a work-in-progress PR on BPMN spec I/O mapping could be something you want to have a look into.