Hi Sebastian,

users@ is for those who use the framework "as-is" to develop their own
applications, while dev@ is for those who would like to contribute to the
further development of the framework itself.  From your extensive notes, I
suspect that dev@ is probably closer to the mark.

Thanks for those notes, there's obviously a hell of a lot of thought that
you've put into it.  I must admit to not being able to follow it that
clearly, it reads more like a brain dump and I don't recognise every term.
You ask: does this sound possible?  I guess my answer is, "it depends on
what you really mean".  I can see ideas in there that sound very similar to
the Apache Isis world view, but then again it's possible that I'm just
noticing some words and filtering out others that are incompatible.

I do find it interesting that you've called out the DCI concept.  I
recently did a talk a muCon 2019 (video at [1]), where I decided to
demonstrate our particular interpretation of DCI, through the use of
mixins.  Maybe it resonates?

However, here's one possible difference between your vision and what Apache
Isis provides.  I see you talk about a "dynamic" model, whereas at the
moment the metamodel that Isis builds is static, in that it is built up
using Java reflection rather than something else.  The caching of the
metamodel is therefore build around types rather than objects.  You'll see
that our mixins are bound to the "mixee" through the types that the mixee
implements.

I don't know if that's a blocker for you.  If it is, then I suppose one
could find a way to not cache the metamodel by type and simply build a
"throw-away" metamodel for each object as it is interacted with; it only
takes a few 10s of milliseconds to create the metamodel for any given
object, after all.  But at any rate, at the moment this is the one big
possible difference in vision.

Fundamentally, Apache Isis is about a creating a metamodel around the
object being interacted with, and then leveraging that metamodel to
automatically provide projections of the object for various purposes.  The
most obvious project are the viewers (wicket, Rest and the wrapper), but
others include inferred commands/domain events, and cross-cutting concerns
such as security (authorisation and auditing).

Thanks for your interest in the framework, and look forward to your further
thoughts

Cheers
Dan

[1]
https://skillsmatter.com/skillscasts/13788-leveraging-metamodels-and-dci-to-build-modular-monoliths







On Wed, 17 Jul 2019 at 16:44, Sebastian Samaruga <ssama...@gmail.com> wrote:

> Hi, wonder if this are the correct lists. I'm a Java developer in the
> quest of finding declarative means for enterprise applications merging and
> integration. In my first attempts I've found Semantic Web models (RDF /
> OWL) as a valuable cornerstone for what is called "ontology matching".
>
> Now I realize I need a "runtime" / container for all those models and
> their "reactive" interactions. Skimming through the docs I'm considering
> Apache Isis as an option for deployment. From my part, now I'm only trying
> to keep updated some fuzzy analysis documents in a GitHub repo:
>
> https://github.com/snxama/scrapbook
>
> The idea is applications (services / data sources) are "glued together"
> homogenizing their contexts data and interactions (roles / IO events) in a
> common event bus driven metamodel with "smart" dispatch of events due the
> "signatures" (state) of client / consumer actors.
>
> If one could feed Isis with such a "dynamic" model, it will be great for
> prototyping, to use it as Web / REST Facade or as an Interaction Protocol
> layer with "dialog" semantics.
>
> I'm currently planning a "metamodel" in terms of layers of (aggregated /
> inferred from lower layers) data, schema and behavior which may map to some
> of the components I've seen so far.
>
> Please allow me to paste two documents (the rest are in the repository).
> They are not finished or completed. The purpose is to read between lines
> and to see if some of this sounds possible.
>
> Best Regards,
> Sebastián.
>
>

Reply via email to