[kepler-dev] "getting started" questions

Chad Berkley berkley at nceas.ucsb.edu
Thu Jun 4 11:12:22 PDT 2009


Hi Ken,

We're currently trying to build better collaboration support for 
projects similar to yours.  We've started a system of "interest groups" 
https://kepler-project.org/developers/interest-groups and "development 
teams" https://kepler-project.org/developers/task-groups which allow 
people to work on kepler-related projects and contribute back to the 
project.  We've significantly changed the architecture in the last year 
to be more modular so that it is easier for developers to customize 
kepler without disrupting the work of others.

We have done a lot of work, but a lot of work still remains to truly 
make kepler have an easily extendable system.  The best place to look 
for the stuff we're currently working on is in our bugzilla database:

http://bugzilla.ecoinformatics.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=Kepler&content=

The bugs currently targeted at 2.0.0 are the ones we are working on 
right now or in the near future.  To see those bugs, you'll need to 
"Change Columns" link at the bottom of the page, then choose the "Target 
Milestone" column.  You can then sort the list by that field and see the 
2.0.0 bugs at the top.  The red "critical" or "blocker" bugs are the 
ones that we feel are required to have a 2.0 release.  They are also the 
bugs that most hinder collaboration on the modular level right now.

We welcome contributions from anyone who is interested.  We're working 
hard to get better software systems and documentation to make it easier 
for people such as yourself to figure out how to best contribute to the 
project.  Unfortunately, progress has been slower than we would like. 
We currently only have 2 full time developers on the kepler project.  We 
are making progress though and we're always around to answer questions. 
Our main source of communications are the kepler-dev and kepler-users 
mailing lists as well as the #kepler IRC channel at irc.ecoinformatics.org.

Most of our documentation on our mid-long term goals are in documents in 
our infrastructure team site: https://kepler-project.org/developers/teams
Right now, there are only two teams for infrastructure, but I see that 
expanding as the project gets more broad, probably after the 2.0 release.

Hope this helps you get started.  Again, let us know if you want any 
additional info.

chad


Kenneth Jones wrote:
> Chad,
> 
> To tell you the truth, I didn't check very closely for error messages 
> when I did the build.  Everything compiled, so I thought I was golden.  
> It is very likely that this was nothing more than a case of pilot 
> error.  I'll do the build again and let you know if I have any difficulties.
> 
> I want to try to build a system I envisioned the late 80's/early 90's.  
> At the time I was working for a company called Thinking Machines that 
> did some pioneering work in massively parallel computing.  I was working 
> on the use of massively parallel computing in scientific and engineering 
> applications (I have a Ph.D. in physics and a strong background in 
> computing).  I was working with users who were interesting in solving 
> problems in their domains and to them computing was nothing more than a 
> necessary evil.  I wanted to create a system that was as simple as 
> possible for them to use.  I had some concrete ideas about how to go 
> about creating the system, but the building blocks I needed simply 
> weren't available at the time and I realized that what I wanted to do 
> was not something that a single person could create.  So I waited 
> patiently and kept tabs on the evolution of the technologies I would 
> need to build the system and I think the time to try to knit together 
> the pieces has finally arrived.  It seems to me that the Kepler team has 
> some of the same goals I have.  I am now doing business-oriented 
> computing and my goals have shifted to the creation of a system that 
> business people find easy to use, but the basic ideas are essentially 
> the same; it's just the domain that has changed.
> 
> I want to try to build a system that allows a nonprogrammer to create an 
> application by using a tightly integrated mix of a controlled natural 
> language and a visual language.  The visuall language will employs 
> actors and data types that are created by programmers (initially I plan 
> to focus on the creation of workflows with SDF semantics, but other 
> domains of computaion might be added later).  The glue that I want to 
> use to bind the two representations together is logic, imperative 
> commands with functional semantics, and queries that are expressed in 
> full classical FOL when neccesary and, when they offer sufficient 
> expressivity, the more restrictive description logics.  I would like to 
> use a customized version of Kepler for the framework that supports the 
> definition of actors and data types and the syntactical and semantics 
> aspects of the visual language.  I plan to use the work of the Attempto 
> group <http://attempto.ifi.uzh.ch/site/description/> for the framework 
> that supports the definition of the lexical elements (which correspond 
> to Kepler's tokens and actors), syntax definition, parsing, and 
> translation to Discourse Representation Structures (which can be 
> translated to statements in FOL) and OWL of a controlled natural 
> language.  If, in my attempt to create this system, I am able to create 
> anything useful to either the Attempto group are the Kepler project, I 
> would like to donate it to the appropriate project.
> 
> With these goals in mind, I was very happy to see that the Kepler team 
> had moved from Ptolemy II's XML format for actor classification to one 
> based on OWL.  I would like to see if I can develop my software to 
> conform to your achitectural plans and coding style so I can donate 
> anything you might find useful.  I have found the style guide on the 
> Kepler website, but I get the impression that some elements of the 
> architecture are in a state of flux.  Might I be able to make a 
> contribution?  Are there some docs that outline your goals and what 
> you've done so far?  Are there specific classes I should study?  Can you 
> point me to the prototyping you've done, even if the code doesn't work?  
> Are there other specific team members I should correspond with?  If 
> there's anything I can do to make a contribution, please let me know.  I 
> also understand that the timing might not be right because the team 
> might have it's hands full preparing for the 2.0 release.  If that's the 
> case, let me know and I'll wait to bug you until after the release.
> 
> Thanks,
> 
> -- Ken
> 
> On Wed, Jun 3, 2009 at 12:42 PM, Chad Berkley <berkley at nceas.ucsb.edu 
> <mailto:berkley at nceas.ucsb.edu>> wrote:
> 
>     Hi Ken,
> 
>     Were you running off of a kepler-1.0 release checked out from SVN or
>     one you downloaded (with and installer) from the web?  In any case,
>     it's weird that you didn't have those files unless maybe the
>     checkout failed half way through or something.
> 
>     We're not currently doing any reasoning with the actor library
>     ontologies, but we're laying the groundwork for kepler to be able to
>     suggest possible workflow component connections between actors and
>     to do semantic type checking between inputs and outputs.  Some of
>     this functionality has been implemented as prototypes, though I'm
>     not sure how much (if any) of it currently works.
> 
>     The plan originally was to let different domains classify their
>     actors the way that made sense to them in the actor library.  Since
>     we haven't had the tools to easily create the ontologies required,
>     it's been hard to get people to actually build new classifications.
>      The 4 ontologies currently in kepler will stay and possibly more
>     will be added.  I could also see in the future that the ontologies
>     themselves could be uploaded to the component repository and shared
>     amongst users.  I don't think there are any concrete plans for that
>     though.
> 
>     We were trying to shoot for the middle of June for the 2.0 release,
>     but it's probably not going to happen as we envisioned it.  I'm
>     guessing the end of the summer or fall at this point, however, we
>     should have some alpha and beta releases sooner.
> 
>     Let me know if you have any other questions.
> 
>     chad
> 
> 
>     Kenneth Jones wrote:
> 
>         Chad,
> 
>         Thanks for the timely and detailed response.
> 
>         None of the actors display icons and the reason seems to be that
>         I don't have a svgIconDefaults.properties file in any of the
>         projects in my workspace.  I see that you have created a newer,
>         more detailed, set of build instructions and pointed to them in
>         the most recent Kepler Newsletter.  I think I'll wipe out my
>         current workspace and start again from scratch using the most
>         current build instructions.  That may do the trick.
> 
>         The fact that you are using OWL to categorize your actors opens
>         up some interesting possibilities.  Are you doing any reasoning
>         over these categories, or do you plan to do so?  Also, are there
>         any plans to use OWL to define the Kepler data type hierarchy?
>          Will the simpler method of creating actor categories be built
>         on top of this OWL ontology or are you planning to remove the
>         ontology and replacing it with something else?
> 
>         One more question -- do you have a tentative release date for
>         version 2.0?
> 
>         Thanks!
> 
>         -- Ken
> 
>         On Tue, Jun 2, 2009 at 1:46 PM, Chad Berkley
>         <berkley at nceas.ucsb.edu <mailto:berkley at nceas.ucsb.edu>
>         <mailto:berkley at nceas.ucsb.edu <mailto:berkley at nceas.ucsb.edu>>>
>         wrote:
> 
>            Hi Ken,
> 
>            See my responses below.
> 
> 
>            Kenneth Jones wrote:
> 
>                I would like to build a custom version of Kepler.  I have
>         used
>                the Kepler build system (which is really great, btw) to
>         download
>                the latest version from the svn repository and I've followed
>                your tutorial and successfully built the "Hello World"
>         actor.  I
>                now have four packages in my workspace:
> 
>                hello-world
>                kepler-1.0
>                kepler-1.0-jar-tag
>                loader-for-kepler-1.0
> 
>                Everything seems to work just fine except for one thing
>         -- the
>                actors don't display icons.  They just show up as boxes with
>                black borders and white interiors.  Any idea what I did wrong
>                and how to go about fixing it?
> 
> 
>            Are you talking about the helloWorld actor or all of the
>         actors in
>            the actor library?  You can set icons in the file
>          
>          kepler-1.0/kepler-1.0-jar-tag/configs/ptolemy/configs/kepler/uiSVGIconMappingsByClass.properties
> 
>            You just need to provide the class name and the SVG icon you
>         want to
>            use.  You can also assign icons by LSID (if you have given your
>            actor a unique LSID) with the file
>            uiSVGIconMappingsByLSID.properties in the same directory.
> 
> 
> 
> 
>                One more question: I only want to display a subset of the
>         Kepler
>                actors (and some others that I will create) and organize
>         them in
>                a taxonomy that is different from the default Kepler
>         taxonomy.
>                 How do I go about creating a custom taxonomy, filled with
>                custom sets of actors and display it in the Components tab of
>                the Components and Data View of Vergil?
> 
> 
>            We're currently in the process of making this easier, however
>         it is
>            currently not an easy thing to do (especially in Kepler 1.0).
>          The
>            actor library is laid out using an ontology of the actors.
>          You can
>            find the current ontologies in
>          
>          kepler-1.0/kepler-1.0-jar-tag/configs/ptolemy/configs/kepler/ontologies
> 
>            The ontology itself defines the categories into which the
>         actors are
>            placed.  Each actor then gives itself one or more semantic types
>            which are defined in the ontology.  When the actor library is
>            rendered, the actors are then placed into the categories for
>         which
>            they have a type defined.
> 
>            In order for you to make your own classification, you would
>         need to
>            create your own OWL ontology, then add semantic types to the
>         actors
>            you want to categorize that link into your custom ontology.
> 
>            Like I said, we're in the process of making this easier in the
>            future Kepler 2.0 (or whatever the version turns out to be).
>          Let me
>            know if you want further details.
> 
>            Thanks,
>            chad
> 
> 
> 


More information about the Kepler-dev mailing list