OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

plcs-dex message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Dex compilation and capabilities (referencing vs representation).


All,

Probably due to my own ignorance, I have the following up for
clarification/discussion/shoot-out :- ) !


It seems (painfully) evident that when trying to use many of the
"referencing" capabilities in a dex, that these are insufficient when it
comes to compilation. This is because either the capability does not pull in
enough of the required entities through it's dependancy list, or it's entity
usage section is incomplete.

Adding entities to the capability usage list means (to my understanding)
that this then needs to be discussed in the body of the capability. However,
many of those have been left out because they pull in even more entities
which begins to defeat the objective of providing a reference.

The alternative is to resort to pulling in the corresponding
"representating" capability. Other capabilities bring in the same as those
defining the representation in the first place, but only document those
aspects needed to identify key parts. If you need to both describe the
representation and how to reference (the PIF), then you have to pull in both
capabilities. However, at the Express level this is meaningless since (in
most cases) the former covers the entities of the latter. Some capabilities
will need to become smaller in scope in the future (e.g.
representing_breakdown_structures) where it is evident that many exchanges
will only need to use certain aspects (e.g. system_breakdown).

Many "referencing" capabilities are not referencing mechanisms as one would
normally expect. I (for one) would expect that a reference is just that -
like reference to a library book or to some point in an RDL - you have a
string. These capabilities are making the assumption that a database (or the
like) exists and that an exchange has already occurred, and that to identify
something in that database you need to follow the guidance in the
referencing capability.

IMHO we should NOT make ANY assumptions about the implementation, because
that should be immaterial from what we are doing. Hence if we are to produce
Data Exchange Standards (DEXs) the building blocks we use to create them
must explicitly define each of the entities used, or pull in a building
block which does.

I think that what is in these referencing capabilities is useful and have a
place in what we're doing, but they have made the whole architecture more
complex than necessary.

IMHO, I would suggest that this information would be really useful within
the Dex Information Model Overview section since it guides the user into
understanding how to identify the design, planned or realized item
in-the-context-of the domain - such as the design configuration, the design
assembly, the design breakdown (i.e. the capability). Other examples include
the product_as_planned in-the-context-of the domains - such as the planned
configuration, the planned assembly, the planned breakdown etc., and on to
the realized contexts. The reader has the requirement(s) to be able to find
these items in the mass of information we are delivering and needs to know
that the mechanism is accurate, dependable and scaleable.

When the user/reader understands at that level, how to access the
information he/she needs, their next question is going to be - how do I
generate a representation that allows this? The answer, of course, is in the
capabilities that hopefully provide the enough guidance to the implementor
to understand the nuances of the model and what is required to produce a
valid representation.

Kind regards,
Tim

NB If we want to reference something  from another exchange, or another Dex
then lets create the mechanism to do it without making the product/process
any more complicated. I have a suggestion on this for another email!




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]