{"id":72,"date":"2023-01-05T18:36:41","date_gmt":"2023-01-05T18:36:41","guid":{"rendered":"http:\/\/wp2.esdl.nl\/?page_id=72"},"modified":"2024-12-12T15:41:19","modified_gmt":"2024-12-12T15:41:19","slug":"software-ontwikkelaars","status":"publish","type":"page","link":"https:\/\/www.esdl.nl\/en\/software-ontwikkelaars\/","title":{"rendered":"Software developers"},"content":{"rendered":"<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/8BFDB967-F186-4F77-9567-8DCEF5B9ED77.jpeg\" alt=\"\" class=\"wp-image-67\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>How can you use ESDL in your own model?<\/strong><\/h2>\n\n\n\n<p>ESDL is an XML-based language, developed in the Eclipse Modelling Framework (EMF). EMF makes it very easy to generate code in Java or Python, for example, with which you can make your own model \u201cESDL enabled\u201d.<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<h4 class=\"wp-block-heading\"><strong>Learn more about the ESDL language<\/strong><\/h4>\n\n\n\n<p>The structure, the concepts and the relationships<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/4D8021C3-2578-4052-889E-63B4D5CE99AD-1024x578.png\" alt=\"Class hierarchy\" class=\"wp-image-91\" srcset=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/4D8021C3-2578-4052-889E-63B4D5CE99AD-1024x578.png 1024w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/4D8021C3-2578-4052-889E-63B4D5CE99AD-300x169.png 300w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/4D8021C3-2578-4052-889E-63B4D5CE99AD-768x433.png 768w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/4D8021C3-2578-4052-889E-63B4D5CE99AD.png 1076w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h4 class=\"wp-block-heading\"><a rel=\"noreferrer noopener\" href=\"https:\/\/energytransition.github.io\/\" target=\"_blank\">ESDL Model Reference documentation<\/a><\/h4>\n\n\n\n<h6 class=\"wp-block-heading\"><a href=\"https:\/\/energytransition.github.io\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/energytransition.github.io<\/a><\/h6>\n\n\n\n<p>Graphical representation of the ESDL model, with options to drill down, search, view attributes and relationships<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"507\" src=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/D80445D2-EF6C-4746-B644-2A337B9E14EA-1024x507.png\" alt=\"\" class=\"wp-image-81\" srcset=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/D80445D2-EF6C-4746-B644-2A337B9E14EA-1024x507.png 1024w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/D80445D2-EF6C-4746-B644-2A337B9E14EA-300x149.png 300w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/D80445D2-EF6C-4746-B644-2A337B9E14EA-768x380.png 768w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/D80445D2-EF6C-4746-B644-2A337B9E14EA.png 1076w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h4 class=\"wp-block-heading\"><strong><a href=\"https:\/\/www.esdl.nl\/en\/ESDL_hoofdstructuur.html\/\"><strong>ESDL Model explanation<\/strong><\/a><\/strong><\/h4>\n\n\n\n<p>Brief explanation of the main structure of the ESDL model. What are the main classes and how are they related<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"721\" height=\"475\" src=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/58C30832-5E2F-43C6-A004-99E6117C0547.png\" alt=\"\" class=\"wp-image-80\" srcset=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/58C30832-5E2F-43C6-A004-99E6117C0547.png 721w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/58C30832-5E2F-43C6-A004-99E6117C0547-300x198.png 300w\" sizes=\"auto, (max-width: 721px) 85vw, 721px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h4 class=\"wp-block-heading\"><strong>Programming in Python with ESDL<\/strong><\/h4>\n\n\n\n<p>To make programming with ESDL in Python easier, we have developed the pyESDL pip package. This pip package contains all generated ESDL classes and an EnergySystemHandler that allows you to easily open, manipulate and write ESDL files.&nbsp;<br><a href=\"https:\/\/pypi.org\/project\/pyESDL\/\" target=\"_blank\" rel=\"noreferrer noopener\">More information<\/a><\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"781\" height=\"428\" src=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/8949B3B3-FA85-43BB-B373-C6650C663FAD.png\" alt=\"\" class=\"wp-image-79\" srcset=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/8949B3B3-FA85-43BB-B373-C6650C663FAD.png 781w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/8949B3B3-FA85-43BB-B373-C6650C663FAD-300x164.png 300w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/8949B3B3-FA85-43BB-B373-C6650C663FAD-768x421.png 768w\" sizes=\"auto, (max-width: 781px) 85vw, 781px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h4 class=\"wp-block-heading\"><strong>Generating an ESDL with an Excel file<\/strong><\/h4>\n\n\n\n<p>To generate an ESDL file from an Excel file, a sample project was created and published on Github.<br><a href=\"https:\/\/github.com\/EnergyTransition\/excel-2-esdl\" target=\"_blank\" rel=\"noreferrer noopener\">More information<\/a><\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"704\" src=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/22ABCEDD-8F5B-4C4A-8253-0554248BADBE-1024x704.png\" alt=\"\" class=\"wp-image-78\" srcset=\"https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/22ABCEDD-8F5B-4C4A-8253-0554248BADBE-1024x704.png 1024w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/22ABCEDD-8F5B-4C4A-8253-0554248BADBE-300x206.png 300w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/22ABCEDD-8F5B-4C4A-8253-0554248BADBE-768x528.png 768w, https:\/\/www.esdl.nl\/wp-content\/uploads\/2023\/01\/22ABCEDD-8F5B-4C4A-8253-0554248BADBE.png 1076w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h4 class=\"wp-block-heading\"><strong>Create a web service that accepts ESDLs<\/strong><\/h4>\n\n\n\n<p>If you are interested in creating a web service to which you can send an ESDL and then do something with it, start with this project on github. This service can then be controlled from the ESDL MapEditor, for example. Calculate statistics, aggregate information in the ESDL or create an ESDL-based simulator. The possibilities are endless!<br><a href=\"https:\/\/github.com\/EnergyTransition\/Flask-ESDL-service\" target=\"_blank\" rel=\"noreferrer noopener\">More information<\/a><\/p>\n<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Hoe kun je ESDL in je eigen model gebruiken? ESDL is een XML-gebaseerde taal, die ontwikkeld is in het Eclipse Modelling Framework (EMF). EMF maakt het heel makkelijk mogelijk om code in bijvoorbeeld Java of Python te genereren, waarmee je je eigen model &#8220;ESDL enabled&#8221; kunt maken. Leer meer over de ESDL taal De structuur, &hellip; <a href=\"https:\/\/www.esdl.nl\/en\/software-ontwikkelaars\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Software ontwikkelaars&#8221;<\/span><\/a><\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-72","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/pages\/72","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/comments?post=72"}],"version-history":[{"count":0,"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/pages\/72\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esdl.nl\/en\/wp-json\/wp\/v2\/media?parent=72"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}