First, I’ve not used that part of EDG so cannot really answer the details but 
here are a few thoughts.

> On 12 May 2020, at 13:07, Sjoerd Rongen <sjoerdron...@gmail.com> wrote:
> 
> 
> Hi Tim,
> 
> I think it would be difficult to have a different class for different levels 
> of process steps.

While you can see some logic to not doing so, many standards/tools for process 
modelling do exactly that. I understand that part of the rationale is that 
there are different constraints/relations/properties depending on the level of 
abstraction/detail. For example, a class at a lower level of abstraction might 
be where things can have an actual human assigned to perform them whereas that 
relation does not make sense at the higher levels of abstractions/aggregation. 
I’ve seen the class breakdown be Process/Activity/Task, for example. 

>From Wikipedia on BPMN:

Task
A task represents a single unit of work that is not or cannot be broken down to 
a further level of business process detail. It is referred to as an atomic 
activity. A task is the lowest level activity illustrated on a process diagram. 
A set of tasks may represent a high-level procedure. 
Sub-process
Used to hide or reveal additional levels of business process detail. When 
collapsed, a sub-process is indicated by a plus sign against the bottom line of 
the rectangle; when expanded, the rounded rectangle expands to show all flow 
objects, connecting objects, and artifacts. A sub-process is referred to as a 
compound activity.

FWIW the edg:ProcessActivity says:

A Process Acrtivity corresponds to a 'Business Process Modeling (BPM)' notiion 
of activity, and is distinguished from a Business Activity.

> Manufacturing processes usually consist of a varying number of sub processes 
> and depending on who you ask there are more or less processes to model.

Yep - similar issue wrt Assembly vs Part in Mfg, but you see that distinction 
made in data models too for similar reasons even though an assembly to one org 
is a part to another.

> 
> Would it not be possible to have a class 'ProcessStep', which is a 
> rdf:subClassOf itself?
> That way you can have instances of a process step with all the attributes of 
> a process step for every subprocess. The overall parent process would then be 
> recognized by it not being the subclass of any other process. This subclass 
> relation represents the conceptual grouping of manufacturing steps.

Subclass does not mean that, so please don’t do that in EDG. I think you really 
mean something like isSubProcessOf here, not subClassOf.

> Another relation can be used to model which process comes after this process. 
> Representing the fysical manufacturing process a product goes through. This 
> relationship could indicate that step 1 takes place before step 2, which 
> takes place before step 3. The subclasses of step 3 (3a and 3b) also have a 
> relation between them to indicate 3b follows 3a.
> 
> I hope I've been able to help you a little

WRT the questions:

> However, this leaves open three questions:
> 1.  What predicate do I use to specify the first step in Parent Process?
> 2.  What predicate do I use to specify that Step3a is the first subActivity 
> in Step3?
> 3.  Is there a better way to model this?

It seems that 1 and 2  are likely the same question really. 

FWIW there is a class-based approach: Some process/activity data models have an 
explicit “Start” activity which is always the first, and some also have an 
explicit “End” too. I think UML does that. 

Not ideal, but seems that “first” property could be derived as “the subProcess 
that has no successor referencing it” - probably better to extend EDG if you 
find you need a property to store but then the question is where does that 
property belong? Not sure if that’s better than the explicit Start or not.

WRT 3 I guess that depends on if you need to interoperate with anyone? Do you 
need to explain this to others outside your organisation who use EDG or use 
some other tool? Does your organisation already use some other data model for 
activity models with which you need to align? Is this just an experiment?

FWIW it is a design feature or EDG that it is relatively easy to extend the 
data model, so feel free to extend in areas where you find gaps and also please 
report that as a feature request for a future release of EDG. 

Me too :-)

Cheers,
David

> Regards,
> Sjoerd
> 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "TopBraid Suite Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to topbraid-users+unsubscr...@googlegroups.com 
> <mailto:topbraid-users+unsubscr...@googlegroups.com>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/topbraid-users/2db4c384-cef6-4013-8bbc-a5328a90bb6c%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/topbraid-users/2db4c384-cef6-4013-8bbc-a5328a90bb6c%40googlegroups.com?utm_medium=email&utm_source=footer>.

UK +44 (0) 7788 561308
US +1 (336) 283-0808‬

-- 
You received this message because you are subscribed to the Google Groups 
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to topbraid-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/topbraid-users/FCA4CE1E-5818-4843-985B-1F8333DA320C%40topquadrant.com.

Reply via email to