class ProcessPropertyWriter extends BasePropertyWriter implements ElementContainer {

    public void addChildElement(BasePropertyWriter p) {
        Processes.addChildElement(
                p,
                childElements,
                process,
                simulationParameters,
                itemDefinitions,
                rootElements);

        addChildShape(p.getShape());
        addChildEdge(p.getEdge());

        if (p instanceof SubProcessPropertyWriter) {
            addSubProcess((SubProcessPropertyWriter) p);
        } else if (p instanceof DataObjectPropertyWriter) {
            process.getFlowElements().addAll(((DataObjectPropertyWriter)p).getDataObjects());
        }
    }

    public  ProcessPropertyWriter(Process process, VariableScope variableScope);

}