<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>randomice.net &#187; Eclipse</title>
	<atom:link href="http://www.randomice.net/category/all/eclipse/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.randomice.net</link>
	<description>by Enrico Schnepel</description>
	<lastBuildDate>Fri, 30 Jul 2010 06:58:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Eclipse DemoCamp Nov 2009 in Berlin</title>
		<link>http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-berlin/</link>
		<comments>http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-berlin/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 07:25:08 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[My Projects]]></category>
		<category><![CDATA[Nice stuff]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://www.randomice.net/?p=200</guid>
		<description><![CDATA[After the Eclipse DemoCamp in Leipzig a few days ago I went to the Berlin DemoCamp and presented emf.observables a second time. &#8220;Prezing&#8221; is fun! But step by step&#8230;
We arrived just early enough to get one seat of around 60 seats and see Ralph Müller with his key note. He incited us to become a [...]]]></description>
			<content:encoded><![CDATA[<p>After the <a href="http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-leipzig/" >Eclipse DemoCamp in Leipzig a few days ago</a> I went to the Berlin DemoCamp and presented <a href="http://emf-observables.randomice.net/" >emf.observables</a> a second time. &#8220;Prezing&#8221; is fun! But step by step&#8230;</p>
<p>We arrived just early enough to get one seat of around 60 seats and see Ralph Müller with his key note. He incited us to become a Eclipse Foundation member and to visit the Eclipse Summit Europe 2010. He hadn&#8217;t any free tickets&#8230; <img src='http://www.randomice.net/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/01RalphMueller1.JPG" alt="Ralph Müller | Key note" class="size-full" />
<p>Kristian Duske showed us a really cool use case for <a href="http://www.eclipse.org/gef3d/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">GEF3D</a>. He used it to work with GMF mapping models (which can get really complex) in a very intuitive way. This is completly different way of handling GMF complexity in comparison to <a href="http://gengmf.randomice.net/" >GenGMF</a>.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/02KristianDuske.JPG" alt="Kristian Duske | GEF3D based GMFMap editor" class="size-full" />
<p>Nothing is impossible! Arc lines between connections in a GMF based editor have been implemented! For a variability editor it is an essential feature and I know from my diploma thesis that such features are really hard to achieve with GMF.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/03MartinEsser.JPG" alt="Martin Esser | Variability Editor with GMF" class="size-full" />
<p><a href="http://www.eclipse.org/Xtext/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">Xtext</a> is a project presented since the <a href="http://wiki.eclipse.org/Hamburg_DemoCamp" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">early days of Eclipse DemoCamps</a> and this time done by Peter Friese. There are some <a href="http://blog.efftinge.de/2009/08/xtext-road-to-helios.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/blog.efftinge.de');">new features on the roadmap for the next 0.8</a> release.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/04PeterFriese.JPG" alt="Peter Friese | Xtext" class="size-full" />
<p><strong>Break:</strong> During the breaks we talked about what we have seen and raided the delicious buffet.</p>
<p>Despite the original order we&#8217;ve got the one and only double feature now &#8212; two presenters using two beamers. Joachim Hänsel and Jaroslav Svacina made us aware of <a href="http://www.evotest.eu/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.evotest.eu');" class="broken_link">EVOTest</a> a framework for evolutionary testing. It uses optimization search algorithms for finding problematic input parameter.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/05Haensel_Svacina.JPG" alt="Joachim Hänsel and Jaroslav Svacina | EvoTest" class="size-full" /><br />(The second beamer was too dark for the picture.)
<p>Do I have created a good model? How does it conform to the guidelines? Answers to such queries can give <a href="http://www.modelbus.org/modelbus/index.php/metrino" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.modelbus.org');">Metrino</a> which has been presented by Marcus Engelhardt. There is also an adapter for the EMF validation framework so you could see the results in the problems view.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/06MarcusEngelhardt.JPG" alt="Marcus Engelhardt | Metrino" class="size-full" />
<p>Matthias Köster created an IDE for Clojure and used the <a href="http://www.eclipse.org/dltk/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">DLTK</a> to do that. He showed us how easy it is to get fast results with the DLTK.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/07MatthiasKoester.JPG" alt="Matthias Köster | DLTK based IDE for Clojure" class="size-full" />
<p><strong>Break:</strong> Do I have said already that the food was delicious? Thanks to Tom for organizing the DemoCamp!</p>
<p>Stephan Herrmann showed ObjectTeams and a adapted version of EclipseLink to persist next to the objects the associated teams and roles.</p>
<p class="center">I&#8217;m sorry, the is no picture available</p>
<p><a href="http://www.eclipse.org/smila/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">SMILA</a> is system for extracting semantic information from arbitrary media. It e.g. extracts images from PDF files and makes them searchable. You can also search for similar images like with <a href="http://similar-images.googlelabs.com/" onclick="javascript:pageTracker._trackPageview('/outbound/article/similar-images.googlelabs.com');">google</a>! Presented by Igor Novakovic.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/09IgorNovakovic.JPG" alt="Igor Novakovic | SMILA" class="size-full" />
<p>Now it was my turn to present <a href="http://emf-observables.randomice.net/" >emf.observables</a>. It is my last project and generates IObservable wrapper classes for EMF model classes. The wrappers provide an easy and type save access to the EMFObservables hierarchies.</p>
<p class="center"><img src="http://www.randomice.net/files/2009/11/10EnricoSchnepel.JPG" alt="Enrico Schnepel | emf.observables" class="size-full" />
<p>I have used &#8220;<a href="http://www.prezi.com/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.prezi.com');">prezi</a>&#8221; instead of some slide based software and presenting it was much fun. Creating a prezi is relative easy and intuitive but the software to do that is very feature-limited.</p>
<p>All in all it was a very nice evening where I have seen many interesting projects and talked to many interesting people during the breaks.</p>
<p>Many thanks to Lars for giving me a lift to Berlin and to <a href="http://www.mftech.org/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.mftech.org');">Martin</a> for the short stay.</p>
<p>Check also Jevopi&#8217;s blog with his <a href="http://jevopisdeveloperblog.blogspot.com/2009/11/yesterday-i-attended-eclipse-democamp.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/jevopisdeveloperblog.blogspot.com');">retrospective</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-berlin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse DemoCamp Nov 2009 in Leipzig</title>
		<link>http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-leipzig/</link>
		<comments>http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-leipzig/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 20:35:58 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[My Projects]]></category>
		<category><![CDATA[Nice stuff]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://www.randomice.net/?p=187</guid>
		<description><![CDATA[Yesterday itemis had organized an Eclipse DemoCamp in Leipzig once again. Like in the many Eclipse DemoCamps I have seen before &#8211; it was once again a happening with many interesting projects.
emf.observables
The planned first presenter had some technical problems with the beamer so I filled in and showed my &#8220;prezi&#8221; instead. &#8220;emf.observables&#8221; is a new [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday itemis had organized an Eclipse DemoCamp in Leipzig once again. Like in the many Eclipse DemoCamps I <a href="/2007/11/camping-in-the-shade-of-the-solar-eclipse/">have</a> <a href="/2007/12/do-you-see-the-difference/">seen</a> <a href="/2009/06/eclipse-democamp-galileo-review/">before</a> &#8211; it was once again a happening with many interesting projects.</p>
<h3><a href="http://emf-observables.randomice.net/" >emf.observables</a></h3>
<p>The planned first presenter had some technical problems with the beamer so I filled in and showed my &#8220;prezi&#8221; instead. &#8220;emf.observables&#8221; is a new project of mine and can be used to aid in the programming of RCP applications. It generates type safe wrapper classes for IObservable Objects. It was the first time that I used <a href="http://www.prezi.com/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.prezi.com');">Prezi</a> for my presentation and I have to admit that presenting it was fun. From the questions I had to answer and the personal chats afterwards I got the impression that it was interesting to the audience.</p>
<h3>&#8220;Und heute generier&#8217; ich&#8221; by Alexander Nittka</h3>
<p>Alex showed a nice demo from a RCP application he uses for his voluntary work at the <a href="http://www.dgob.de/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.dgob.de');">Deutscher Go Bund</a>. He uses a DSL developed with <a href="http://www.eclipse.org/Xtext/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">Xtext</a> for entering and validating withdrawals and their rejects for all associated members. It was interesting to see <a href="http://www.eclipse.org/Xtext/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">Xtext</a> in an application without the generation of source code.</p>
<h3>Break</h3>
<p>During the break we had some time to chat to each other while eating delicious Soljanka as well as potato soup.</p>
<h3>&#8220;<a href="http://www.eclipse.org/eclipselink/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">JPA (EclipseLink) in OSGI Anwendungen</a>&#8221; by Karsten Voigt</h3>
<p>Karsten got the beamer working and showed us how easy it is to use the Java Persistence API 2.0 reference implementation &#8220;EclipseLink&#8221; in an OSGI context. The Eclipse JPA tooling allows you to generate the complete JPA infrastructure from an existing SQL database and to administrate it. OSGI declarative services are used to wrap queries. It was quite interesting but I can&#8217;t use it in my current projects because they don&#8217;t use a database.</p>
<h3><a href="http://www.featuremapper.org" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.featuremapper.org');">FeatureMapper</a> by Florian Heidenreich</h3>
<p>The FeatureMapper is a tooling to connect arbitrary existing EMF based models with features in a product line context. The existing <a href="http://www.eclipse.org/modeling/emf/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">EMF</a>, <a href="http://www.eclipse.org/modeling/gmf/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">GMF</a> and <a href="http://www.emftext.org/index.php/EMFText" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.emftext.org');">EMFText</a> editors are extended by the tooling and display which model objects a selected feature configuration covers. They also want to implement support for <a href="http://www.eclipse.org/Xtext/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">Xtext</a>.</p>
<h3><a href="http://deftproject.org/" onclick="javascript:pageTracker._trackPageview('/outbound/article/deftproject.org');">Konsistente Software-Dokumentation</a> by Andreas Bartho</h3>
<p>The DEFT (Development Environment For Tutorials) project is really interesting because it allows you to keep your documentation current as you change your code. Code snippets are copied into your documentation with code formatting. The Tuba project does the same but for models which is also very neat. They want to combine both projects and want to support screen shots from RCP applications running in a JUnit context.</p>
<p>I am looking forward to the next <a href="http://wiki.eclipse.org/Eclipse_DemoCamps_November_2009/Berlin" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">Eclipse DemoCamp in Berlin</a> where I will talk about <a href="http://emf-observables.randomice.net/2009/11/eclipse-democamp-nov-2009/" >emf.observables</a> too. See you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2009/11/eclipse-democamp-nov-2009-in-leipzig/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Eclipse Stammtisch</title>
		<link>http://www.randomice.net/2009/08/eclipse-stammtisch/</link>
		<comments>http://www.randomice.net/2009/08/eclipse-stammtisch/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 05:18:43 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[It's me]]></category>

		<guid isPermaLink="false">http://www.randomice.net/?p=178</guid>
		<description><![CDATA[I can&#8217;t ressist to attend on a new Eclipse Stammtisch on Modelling which will take place in Berlin on the 19th August as mentioned by Ed. If you are interested in Modelling or not &#8211; it will be a happening and you are welcome to mark your attendance (preferably &#8220;Yes&#8221;) and get a eclipse-foundation driven [...]]]></description>
			<content:encoded><![CDATA[<p>I can&#8217;t ressist to attend on a new Eclipse Stammtisch on Modelling which will take place in Berlin on the 19th August as mentioned by <a href="http://ed-merks.blogspot.com/2009/08/berlin-there-i-go-again.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/ed-merks.blogspot.com');">Ed</a>. If you are interested in Modelling or not &#8211; it will be a happening and you are welcome to <a href="http://www.doodle.com/qwpp6p8wtcq78t2i" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.doodle.com');">mark your attendance</a> (preferably &#8220;Yes&#8221;) and get a eclipse-foundation driven beer (or other drinks as you like) for free as promised by Ralph. See you there&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2009/08/eclipse-stammtisch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse DemoCamp Galileo Review</title>
		<link>http://www.randomice.net/2009/06/eclipse-democamp-galileo-review/</link>
		<comments>http://www.randomice.net/2009/06/eclipse-democamp-galileo-review/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 10:02:07 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[It's me]]></category>
		<category><![CDATA[Other]]></category>

		<guid isPermaLink="false">http://www.randomice.net/?p=144</guid>
		<description><![CDATA[The DemoCamp which has been organized by b+m (my self) in cooperation with FOKUS (Tom Ritter) was a full success. We had seven talks &#8211; each about 20 minutes:

Ralph Mueller gave us some infos about the Eclpse Foundation and the Eclipse eco system in Europe (PDF)
Alex Koderman talked about the verinice project, an open source [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.randomice.net/2009/05/eclipse-democamp-galileo/" >DemoCamp</a> which has been organized by <a href="http://www.bmiag.de/b-m-engineering/news/news/article/3182/b-m-organisi.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.bmiag.de');">b+m (my self)</a> in cooperation with FOKUS (Tom Ritter) was a full success. We had seven talks &#8211; each about 20 minutes:</p>
<ol>
<li>Ralph Mueller gave us some infos about the Eclpse Foundation and the Eclipse eco system in Europe (<a href="http://www.randomice.net/files/2009/06/1_mueller_eclipse.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/1_mueller_eclipse.pdf');">PDF</a>)</li>
<li>Alex Koderman talked about the <a href="http://www.verinice.org/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.verinice.org');">verinice</a> project, an open source solution for <a href="http://de.wikipedia.org/wiki/ISMS" onclick="javascript:pageTracker._trackPageview('/outbound/article/de.wikipedia.org');">Information Security Management</a> (<a href="http://www.randomice.net/files/2009/06/2_koderman_verinice.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/2_koderman_verinice.pdf');">PDF</a>)<br /><strong>Break</strong></li>
<li>Tom Ritter spoke about Model Sharing in a Distributed Model-Driven Development (<a href="http://www.randomice.net/files/2009/06/3_ritter_modelbus.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/3_ritter_modelbus.pdf');">PDF</a>)</li>
<li>Martin Flügge showed us <a href="http://mftech.org/dawn/index.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/mftech.org');">Dawn</a>, a web-based collaborative extension for GMF editors (<a href="http://www.randomice.net/files/2009/06/4_fluegge_dawn.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/4_fluegge_dawn.pdf');">PDF</a>)</li>
<li>Eike Stepper gave us a talk about the <a href="http://wiki.eclipse.org/Net4j" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">Net4j</a> signalling platform (<a href="http://www.randomice.net/files/2009/06/5_stepper_net4j.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/5_stepper_net4j.pdf');">PDF</a>)<br /><strong>Break</strong></li>
<li>My talk was about how to <a href="http://cope.in.tum.de/" onclick="javascript:pageTracker._trackPageview('/outbound/article/cope.in.tum.de');">COPE</a> with long term metamodel evolution (<a href="http://www.randomice.net/files/2009/06/6_schnepel_cope.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/6_schnepel_cope.pdf');">PDF</a>) and</li>
<li>Max Bureck spoke about a graphical <a href="http://wiki.eclipse.org/M2M/Relational_QVT_Language_(QVTR)" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">QVT/R</a>-Editor (<a href="http://www.randomice.net/files/2009/06/7_bureck_visual_qvtr.pdf" onclick="javascript:pageTracker._trackPageview('/downloads/files/2009/06/7_bureck_visual_qvtr.pdf');">PDF</a>)</li>
</ol>
<p>There was some kind of running gag due to the unawareness of the speakers to actually show a demo because of miscellaneous technical reasons.</p>
<p>In the beginning and during the breaks we had the opportunity to have nice chat and the advantage of a delicious buffet. Thanks to the sponsors.</p>
<p>After the camp some of us moved into a <a href="http://www.timeless-restaurant.eu/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.timeless-restaurant.eu');">timeless restaurant</a> for celebrating an Eclipse Stammtisch which was also very nice.</p>
<p>All together it was a long but very nice day.</p>
<p><strong>Please note:</strong> There will be a second Eclipse Stammtisch on the 16th June where you will have the possibility to meet some members of the Eclipse Board of Directors. Please have a look at <a href="http://thegordian.blogspot.com/2009/06/meet-eclipse-directors-in-berlin.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/thegordian.blogspot.com');">Eikes post</a> announcing the Stammtisch. If you want to participate please enter your name into the <a href="http://www3.doodle.com/xsfdcb8rugnzpe4d" onclick="javascript:pageTracker._trackPageview('/outbound/article/www3.doodle.com');">Doodle poll</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2009/06/eclipse-democamp-galileo-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse DemoCamp Galileo</title>
		<link>http://www.randomice.net/2009/05/eclipse-democamp-galileo/</link>
		<comments>http://www.randomice.net/2009/05/eclipse-democamp-galileo/#comments</comments>
		<pubDate>Mon, 04 May 2009 20:29:13 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[It's me]]></category>
		<category><![CDATA[Nice stuff]]></category>

		<guid isPermaLink="false">http://www.randomice.net/?p=123</guid>
		<description><![CDATA[Like in the previos year I am one of the two organizers of the Eclipse DemoCamp Galileo 2009 in Berlin. It will take place on the 9th June here. I will give a talk about COPE and how to use it to evolute a meta model and migrate the corresponding instance models (as I have [...]]]></description>
			<content:encoded><![CDATA[<p>Like in the <a href="http://gengmf.randomice.net/2008/10/eclipse-democamps/" >previos year</a> I am one of the two organizers of the <a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Galileo_2009/Berlin" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">Eclipse DemoCamp Galileo 2009 in Berlin</a>. It will take place on the 9th June <a href="http://maps.google.de/maps?f=q&amp;source=s_q&amp;hl=de&amp;geocode=&amp;q=Kaiserin-Augusta-Allee+31+10589+Berlin&amp;sll=52.524603,13.310623&amp;sspn=0.019217,0.04755&amp;ie=UTF8&amp;z=16&amp;iwloc=r1" onclick="javascript:pageTracker._trackPageview('/outbound/article/maps.google.de');">here</a>. I will give a talk about <a href="http://cope.in.tum.de/" onclick="javascript:pageTracker._trackPageview('/outbound/article/cope.in.tum.de');">COPE</a> and how to use it to evolute a meta model and migrate the corresponding instance models (as I have done it for <a href="http://gengmf.randomice.net/" >GenGMF</a>). <del>If you don&#8217;t have the time to visit the <a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Galileo_2009/Berlin" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">Berlin DemoCamp</a> you will get a second chance to hear my voice in <a href="http://wiki.eclipse.org/Eclipse_DemoCamps_Galileo_2009/Leipzig" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">Leipzig</a> on the 23rd June.</del> Sorry, I can&#8217;t be in Leipzig on this day because I will be in Kiel&#8230; But if you would like to chat with me and some members of the Eclipse Board of Directors at an Eclipse Stammtisch have a look at <a href="http://thegordian.blogspot.com/2009/06/meet-eclipse-directors-in-berlin.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/thegordian.blogspot.com');">Eikes Post</a>. See you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2009/05/eclipse-democamp-galileo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Copying EMF objects accross namespaces</title>
		<link>http://www.randomice.net/2008/11/copying-emf-objects-accross-namespaces/</link>
		<comments>http://www.randomice.net/2008/11/copying-emf-objects-accross-namespaces/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 11:51:48 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://www.randomice.net/2008/11/copying-emf-objects-accross-namespaces/</guid>
		<description><![CDATA[I am currently preparing a new release for my GenGMF project. Because the new meta model contains important but incompatible changes I have migrated the GenGMF tooling to a new name space and created a migration script for converting the specific editor models. The new meta model is much smaller than the old one which [...]]]></description>
			<content:encoded><![CDATA[<p>I am currently preparing a new release for my <a href="http://gengmf.randomice.net/" >GenGMF</a> project. Because the new meta model contains important but incompatible changes I have migrated the GenGMF tooling to a new name space and created a migration script for converting the specific editor models. The new meta model is much smaller than the old one which results in smaller models &#8212; I&#8217;ve eliminated the need for the mapping elements in the templates. To make the migration as easy as possible I&#8217;ve created some helper functions to <a href="http://www.xaption.net/sap/bc/docu?name=ABAPMOVE-CORRESPONDING_SHORTREF" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.xaption.net');">move</a> <a href="http://www.cse.ohio-state.edu/~sgomori/314/langref.html#corr" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.cse.ohio-state.edu');">corresponding</a> attributes and references. Only the &#8220;real&#8221; changes in the meta model are migrated using a Xtend script.</p>
<p>To demonstrate the facilities of the <code>CrossNamespaceCopier</code> I&#8217;ve created a small meta model&#8230;</p>
<p><a href="http://www.randomice.net/files/2008/11/crossnscopierdemomm.png" ><img width='500px' src='http://www.randomice.net/files/2008/11/crossnscopierdemomm.png' alt='Demo meta model' /></a></p>
<p>As you see the <code>Class2</code> from the &#8220;<code>http://source.namespace</code>&#8221; has been eliminated in the &#8220;<code>http://target.namespace</code>&#8221; and both attributes have been moved &#8211; <code>attribute2</code> to <code>Class1</code> and <code>attribute3</code> to <code>Class3</code>. In order to migrate a model instance one has to call the <code>CrossNamespaceCopier</code> which copies the objects while migrating the name spaces according to rules previously set. <code>OtherClass</code> objects from the &#8220;<code>http://other.namespace</code>&#8221; will be copied as they are. All references and attributes which could not be automatically migrated need to copied in a small script manually. </p>
<p><code>extension CrossNamespaceCopier;</code><br />
<code></code><br />
<code>namespace::target::Class1 migrate(namespace::source::Class1 sc1)</code><br />
<code>:&nbsp;&nbsp;&nbsp;let tc1 =</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// initialization for the copier, but the</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// let statement needs to be in the beginning</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;(&nbsp;&nbsp;&nbsp;crossNsInitStaticInstance()</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;-&gt;&nbsp;&nbsp;crossNsSetupNamespaceMapping(</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"http://source.namespace",</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"http://target.namespace")</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// the content for the tc1 variable</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;-&gt;&nbsp;&nbsp;(&nbsp;&nbsp;&nbsp;(namespace::target::Class1)</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;crossNsCopy(sc1)))</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// skipping Class2 in source</code><br />
<code>:&nbsp;&nbsp;&nbsp;tc1.setClass3Reference(</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(namespace::target::Class3)</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sc1.class2Reference.class3Reference</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.crossNsCopy())</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// pull up attribute2</code><br />
<code>-&gt;&nbsp;&nbsp;tc1.setAttribute2(</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sc1.class2Reference.attribute2)</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// pull down attribute3</code><br />
<code>-&gt;&nbsp;&nbsp;tc1.class3Reference.setAttribute3(</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sc1.class2Reference.attribute3)</code><br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;// uninitializing</code><br />
<code>-&gt;&nbsp;&nbsp;crossNsReleaseStaticInstance()</code><br />
<code>-&gt;&nbsp;&nbsp;tc1</code><br />
<code>;</code></p>
<p>You will find the <code>CrossNamespaceCopier</code> as well as the demo files contained in a <a href="http://www.randomice.net/files/CrossNamespaceCopier.zip" onclick="javascript:pageTracker._trackPageview('/downloads/files/CrossNamespaceCopier.zip');">zip file</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2008/11/copying-emf-objects-accross-namespaces/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GMF toolkits</title>
		<link>http://www.randomice.net/2008/08/gmf-toolkits/</link>
		<comments>http://www.randomice.net/2008/08/gmf-toolkits/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 11:39:15 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[My Projects]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://www.randomice.net/2008/08/gmf-toolkits/</guid>
		<description><![CDATA[GMF, the Graphical Modeling Framework supports the creation of graphical editors. For beginners it is very hard to learn. The included wizard has a lot of disadvantages, but it is o.k. for a start. Furthermore the GMF models are very complex and hard to handle. There are different solutions to shorten the time needed for [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.eclipse.org/gmf" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">GMF</a>, the Graphical Modeling Framework supports the creation of graphical editors. For beginners it is very hard to learn. The included wizard has a lot of disadvantages, but it is o.k. for a start. Furthermore the GMF models are very complex and hard to handle. There are different solutions to shorten the time needed for creating a graphical editor:</p>
<dl>
<dt><a href="http://epsilonlabs.wiki.sourceforge.net/EuGENia" onclick="javascript:pageTracker._trackPageview('/outbound/article/epsilonlabs.wiki.sourceforge.net');">EuGENia</a></dt>
<dd>&#8230; supports the development of GMF based editors using annotations in your metamodel (<code>*.ecore</code>) &#8211; preferably generated using <a href="http://wiki.eclipse.org/Emfatic" onclick="javascript:pageTracker._trackPageview('/outbound/article/wiki.eclipse.org');">Emfatic</a>. Dimitrios Kolovos has written a nice <a href="http://epsilonblog.wordpress.com/2008/08/04/eugenia-kick-start-your-gmf-editor-development/" onclick="javascript:pageTracker._trackPageview('/outbound/article/epsilonblog.wordpress.com');">tutorial</a> and created a <a href="http://live.eclipse.org/node/575" onclick="javascript:pageTracker._trackPageview('/outbound/article/live.eclipse.org');">screencast</a>.</dd>
<dt><a href="http://opensource.urszeidler.de/ATLflow/html1/samples/generateGMF.html" onclick="javascript:pageTracker._trackPageview('/outbound/article/opensource.urszeidler.de');">ATLflow</a></dt>
<dd>Like in EuGENia &#8211; annotations in the metamodel are used to create a graphical editor. It is part of a complete tool chain for model transformations based on ATL. It is used for bootstrapping parts of ATLflow itself.</dd>
<dt><a href="http://gengmf.randomice.net" >GenGMF</a></dt>
<dd>&#8230; uses a completely different approach. The GMF models are created from template-like tree structures. A template consist of GMF elements &#8211; just ready for duplicating for each metamodel element it is associated with. It is recommended to have some experience with the GMF models, before starting with <a href="http://gengmf.randomice.net" >GenGMF</a>. I developed it to support the creation of editors with a lot of metamodel elements.</dd>
</dl>
<p>Both annotation based solutions are not able to cover all the features possible with GMF, because the GMF models are created using the information stored in the metamodel. The template based approach <a href="http://gengmf.randomice.net" >GenGMF</a> offers a lot more flexibility at the cost of a more complex model.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2008/08/gmf-toolkits/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>xtext with external references</title>
		<link>http://www.randomice.net/2008/02/xtext-with-external-references/</link>
		<comments>http://www.randomice.net/2008/02/xtext-with-external-references/#comments</comments>
		<pubDate>Mon, 18 Feb 2008 12:05:35 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Nice stuff]]></category>

		<guid isPermaLink="false">http://www.randomice.net/2008/02/xtext-with-external-references/</guid>
		<description><![CDATA[I have just seen, that by now xText supports external references out of the box. This is a long awaited and really useful feature. Thanks a lot.
]]></description>
			<content:encoded><![CDATA[<p>I have just seen, that by now <a href="http://apps.itemis.de/roller/itemislabkiel/entry/xtext_support_for_references" onclick="javascript:pageTracker._trackPageview('/outbound/article/apps.itemis.de');">xText supports external references</a> out of the box. This is a long awaited and really useful feature. Thanks a lot.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2008/02/xtext-with-external-references/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MDSD in 5 minutes</title>
		<link>http://www.randomice.net/2008/02/mdsd-in-5-minutes/</link>
		<comments>http://www.randomice.net/2008/02/mdsd-in-5-minutes/#comments</comments>
		<pubDate>Mon, 18 Feb 2008 11:52:43 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[My Projects]]></category>

		<guid isPermaLink="false">http://www.randomice.net/2008/02/mdsd-in-5-minutes/</guid>
		<description><![CDATA[Step 1 (real live): You have the wish to get a cup of tea of &#8220;Pai Mu Tan&#8221;.
Step 2 (model): You are creating a wish-model containing an element of type &#8220;Cup&#8221; which has an attribute named &#8220;content&#8221; of type string and the value &#8220;Pai Mu Tan&#8221;. The model is the digital representation of a real-life-wish.
Step [...]]]></description>
			<content:encoded><![CDATA[<p>Step 1 (real live): You have the wish to get a cup of tea of &#8220;Pai Mu Tan&#8221;.</p>
<p>Step 2 (model): You are creating a wish-model containing an element of type &#8220;Cup&#8221; which has an attribute named &#8220;content&#8221; of type string and the value &#8220;Pai Mu Tan&#8221;. The model is the digital representation of a real-life-wish.</p>
<p>Step 3 (metamodel): You want to create other wishes too and you are designing a metamodel. The wish-metamodel contains a the root element &#8220;Wishes&#8221; containing a many-containment reference &#8220;wishes&#8221; to the type &#8220;Wish&#8221;. The abstract type &#8220;Wish&#8221; is derived by the types &#8220;Cup&#8221;, &#8220;Book&#8221;, &#8220;FreshAir&#8221; and &#8220;OtherWish&#8221;. &#8220;Cup&#8221; has an attribute &#8220;content&#8221; while &#8220;Book&#8221; has an attribute &#8220;title&#8221; of type String. &#8220;FreshAir&#8221; does not need an attribute and &#8220;OtherWish&#8221; has no meaningful attributes. Using the wish-metamodel you could express a lot of wishes.</p>
<p>Step 4 (editor): You want others to express their wishes. Let&#8217;s create an editor, they could use to do that. Using Eclipse and your metamodel it is really simple to create an EMF based tree editor. You are happy.</p>
<p>Step 5 (great models): Your models grow (you have extended your metamodel with other wish-types) and you want to group your wishes by occasion (Birthday, Christmas, other) if they are of long-term, short-term or just-now. You are doing that by extending the metamodel with other types (AbstractOccasion, Birthday, Christmas, AbstractWhen, LongTerm, ShortTerm, JustNow) and some connection types connecting your wish with when they should be active. it is hard to keep the overview about all your wishes &#8211; you want a better editor (which is a wish-type of it&#8217;s own).</p>
<p>Step 6 (graphical editor): You have chosen <a href="http://www.eclipse.org/gmf/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">GMF</a> as your editor framework. It is great &#8211; you could express all you want &#8211; your wishes, the occasions and whether your wishes are more short- or long-term in a model driven way and without writing one single line of java-code. Now you have the overview about all the wishes.</p>
<p>Step 7 (more wish-types): Every time you create a new wish-type in your metamodel you have to copy-and-paste-and-change some parts of the GMF-models to express the editor object for your new type. You want more abstraction like a templating engine for GMF-models.</p>
<p>I am currently developing such a model-templating engine called <a href="http://gengmf.randomice.net/" >GenGMF</a>. You could create a template-tree for the GMF-Graph and for the GMF-Map models having place-holders for the type-names you want to instantiate (e.g. &#8220;__TYPENAME__NodeFigure&#8221;) and some modelled instructions how to instantiate the tree in the GMF-models. It is even possible to change the instantiated trees on-the-fly. For example &#8211; I reengineered the sample editor from <a href="http://www.randomice.net/2008/01/diving/" >one of my last posts</a>. The rectangle and the elliptic nodes are instantiated from the same template (which only knows rectangles). A <a href="http://www.eclipse.org/gmt/oaw/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.eclipse.org');">XTend</a>-based creation Filter changes the Rectangle to Ellipse &#8211; the rest of the tree is the same. Post processing (also via XTend) is also available to insert more stuff into the generated models.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2008/02/mdsd-in-5-minutes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Diving</title>
		<link>http://www.randomice.net/2008/01/diving/</link>
		<comments>http://www.randomice.net/2008/01/diving/#comments</comments>
		<pubDate>Thu, 24 Jan 2008 11:31:57 +0000</pubDate>
		<dc:creator>Enrico Schnepel</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Nice stuff]]></category>

		<guid isPermaLink="false">http://www.randomice.net/2008/01/diving/</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.randomice.net/files/2008/01/default.png" alt="I am currently diving into the secrets of GMF - and it's cool" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.randomice.net/2008/01/diving/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
