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

 


Help: OASIS Mailing Lists Help | MarkMail Help

tosca-interop message

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


Subject: Re: [tosca-interop] RE: Background question on working assumptions about TOSCA types.


Hi Travis,

you bring up some interesting points below. I added some inline comments.

Regards,
Thomas

<tosca-interop@lists.oasis-open.org> wrote on 06.06.2013 21:44:57:

> From: "Tripp, Travis S" <travis.tripp@hp.com>
> To: Dale Moberg <dmoberg@axway.com>, "tosca-interop@lists.oasis-
> open.org" <tosca-interop@lists.oasis-open.org>,
> Date: 06.06.2013 21:46
> Subject: [tosca-interop] RE: Background question on working
> assumptions about TOSCA types.
> Sent by: <tosca-interop@lists.oasis-open.org>
>
> Hi Dale,
>
> I will provide my impressions.
>
> 1.      A type may only have one parent.  It is basically a tree
> structure.  Something of interest, I have a little program that
> prints out the SugarCRM Capability Type hierarchy.  I’ve pasted that
below.
> 2.      I’ve thought of Types that support having capabilities
> defined on them as similar to the notion of interfaces in Java,
> except that the capabilities have properties, not methods (yet).
> So, if I have a NodeType of Compute, I could actually put multiple
> capabilities on it to decorate it. So, the NodeType can effectively
> be identified through capabilities it provides rather than a
> concrete type. All the examples show a 1:1 of NodeType to
> CapabilityType, but that certainly isn’t what the spec shows as
> possible and isn’t what I think makes sense in many cases. As an
> aside, I am going to try to send out an email on Requirement and
> Capability matching by Monday.

A question that I am asking myself more and more is what kinds of types are
actually more important? I.e. are Node Types the more important thing or
Req/Cap types? For substitutability, it seems that the most important thing
a "client" is interested in are the capabilities of another component.
Likewise, for the client, its requirements are most important.
So we actually don't care if a NodeType is called "foo" as long as it has
the right capabilities (e.g. "compute").
We could think of normative NodeTypes as well-defined combinations of Reqs
and Caps to have some reasonable base system, though, to make everything
more consumable for users.

Anyway, these are just a couple of thoughts ...

> 3.      “Conflicting definitions are resolved by the rule that local
> new definitions always override derived definitions.” Each Type
> section of the document has something called “Derivation Rules”.
>
> SugarCRM Capability hierarchy:
>      RootCapabilityType  (http://docs.oasis-open.org/tosca/ns/2011/
> 12/ToscaBaseTypes)
>           ContainerCapability  (http://docs.oasis-open.org/tosca/ns/
> 2011/12/ToscaBaseTypes)
>                ServerContainerCapability  (http://docs.oasis-
> open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                OperatingSystemContainerCapability  (http://
> docs.oasis-open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                SoftwareContainerCapability  (http://docs.oasis-
> open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                WebApplicationContainerCapability  (http://
> docs.oasis-open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                     ApacheWebApplicationContainerCapability  (
> http://docs.oasis-open.org/tosca/ns/2011/12/ToscaSpecificTypes)
>                DatabaseContainerCapability  (http://docs.oasis-
> open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                     MySQLDatabaseContainerCapability  (http://
> docs.oasis-open.org/tosca/ns/2011/12/ToscaSpecificTypes)
>                ApacheModuleContainerCapability  (http://docs.oasis-
> open.org/tosca/ns/2011/12/ToscaSpecificTypes)
>           EndpointCapability  (http://docs.oasis-open.org/tosca/ns/
> 2011/12/ToscaBaseTypes)
>                IPEndpointCapability  (http://docs.oasis-open.org/
> tosca/ns/2011/12/ToscaBaseTypes)
>                     HTTPEndpointCapability  (http://docs.oasis-
> open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                     DatabaseEndpointCapability  (http://docs.oasis-
> open.org/tosca/ns/2011/12/ToscaBaseTypes)
>                          MySQLDatabaseEndpointCapability  (http://
> docs.oasis-open.org/tosca/ns/2011/12/ToscaSpecificTypes)
>           FeatureCapability  (http://docs.oasis-open.org/tosca/ns/
> 2011/12/ToscaBaseTypes)
>                PHPRuntimeCapability  (http://docs.oasis-open.org/
> tosca/ns/2011/12/ToscaSpecificTypes)
>
>
>
> From: tosca-interop@lists.oasis-open.org [mailto:tosca-
> interop@lists.oasis-open.org] On Behalf Of Dale Moberg
> Sent: Thursday, June 06, 2013 12:16 PM
> To: tosca-interop@lists.oasis-open.org
> Subject: [tosca-interop] Background question on working assumptions
> about TOSCA types.
>
> Hi,
>
> Last Monday someone brought up whether we should think about TOSCA
> types as something like JS prototypes or more like OO classes.
>
> This question made me realize that I did not know what we are/were/
> will be assuming about TOSCA types, but I hope it will be something
> simple and not involve us in something like the “Lambda cube”  and
> “Rank-N polymorphism” and the all the distinctions of the
> programming-language, type theorists behind Coq, ML, F, Haskell and the
like.
>
> Here is what I had been assuming we meant by TOSCA types:
>
> 1. types can have subtypes
> 2. there is inheritance  by subtypes.
> 3. subtypes inherit from at most one supertype (no multiple
> inheritance, no diamond)
>
> Some things unclear to me from our documentation so far:
>
> 1. can anything (method,variable,value,default,etc.) be overridden
> in a subtype?
> 2. if there are abstract types, how do we tell when a type can be
> the type of, for example, a given node template? (we have 3 levels
> now, is the first level abstract and the other two concrete enough
> to have instances?)
>
> I reserve the right to ask a few more questions depending on what
> answers I hear!
>
> [Matt, I have not finished all your slides, and maybe the answers
> were implicit somewhere, but I wasn’t smart enough to extract them.]
>
> Bye
> Dale Moberg
>
>
>
>
>


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