The following has evaluated to null or missing: ==> FrontendService.media.getDMTJsonObject( coverBild.groupId?number, coverBild.uuid, locale ) [in template "252001#252047#252845" at line 128, column 37] ---- Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: dMTJsonObject = FrontendService.media... [in template "252001#252047#252845" at line 128, column 21] ----
1<#-- used @ Veranstaltung-Detailseite Intro
2 used @ Publikation-Detailseite Intro
3-->
4
5<#--
6Web content templates to display teaser on thema detail page
7
8Generic template for detail pages Intro / Teaser element
9-->
10<#--
11Display the current page title
12-->
13<#include "${fullTemplatesPath}/functions/relatedContentUtil.ftl" />
14<#include "${fullTemplatesPath}/macros/debugging.ftl" />
15
16<#include "${fullTemplatesPath}/macros/page-modules/PMIntro.ftl" />
17<#include "${fullTemplatesPath}/macros/atomic-modules/AMPublicationCarousel.ftl" />
18<#include "${fullTemplatesPath}/macros/atomic-modules/AMMetadata.ftl" />
19<#include "${fullTemplatesPath}/macros/atomic-modules/AMDatetime.ftl" />
20
21
22<#--
23 renders the Intro for nearly all Pages
24 TODO: remove Share? (was in the designs, but not anymore?)
25 TODO: check if languageSelect/filter are working (js)
26
27 - portletId
28 - data = {
29 "media": string (src from image),
30 "category": string,
31 "title": string,
32 "author": string,
33 "subheadline": string,
34 "copy": string,
35 "filter": {
36 "id": string,
37 "name": string,
38 "entries": Array<Object> ({key:value}),
39 },
40 "languageSelect": {
41 "id": string,
42 "name": string,
43 "entries": Array<Object> ({key:value}),
44 },
45 "meta": {
46 "pos"; string (top/bottom)
47 "date": string,
48 "hash": string,
49 "info": string, (url)
50 },
51 "share" : {
52 "login": string,
53 "print": string,
54 "mail": string,
55 "multishare": string?? (tbd)
56 }
57 - AMMetadata: macro
58 - position: String ("top") -> defines wether the meta-data should be rendered above or below the intro-content
59 }
60-->
61
62<#assign
63 JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")
64
65 ServiceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()
66 DLAPP = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppLocalService")
67
68 themeDisplay = ServiceContext.getThemeDisplay()
69 editmode = FrontendService.user.isPrivilegedUser(themeDisplay)
70
71 languageId = themeDisplay.getLocale()
72 groupId = themeDisplay.getScopeGroupId()
73 currentUrl = themeDisplay.getURLCurrent()
74
75 layout = themeDisplay.getLayout()
76 layouttpl = layout.getTypeSettingsProperties().getProperty("layout-template-id")
77/>
78
79<#setting locale="${languageId}">
80
81<#-- get article from url -->
82
83<#assign entry = FrontendService.article.getArticleToUrl(currentUrl, groupId?number)! >
84
85
86<#if entry?has_content>
87
88 <#if entry.resourcePrimKey??>
89 <#assign primaryKey = entry.resourcePrimKey?number >
90 <#elseif entry.classPK??>
91 <#assign primaryKey = entry.classPK?number >
92 </#if>
93
94 <#assign
95 jsonString = FrontendService.article.getWebcontent(primaryKey)
96 json = FrontendService.json.parseAsJson(jsonString)
97 availablelanguages = FrontendService.article.getAssetEntryToUrl(primaryKey).getAvailableLanguageIds()
98
99 title = entry.getTitle(languageId)
100 data = {
101 "title": title
102 }
103 />
104 <@debugJsonString jsonString "ADT_KASDE_DYNAMIC_INTRO" />
105
106 <#if hasContent('untertitel', languageId, json)>
107 <#assign data = data + { "subheadline": getValueForLanguage('untertitel', languageId, json, "first") } >
108 </#if>
109
110 <#if hasContent('beschreibung', languageId, json)>
111 <#assign data = data + { "copy": getValueForLanguage('beschreibung', languageId, json, "first") } >
112 </#if>
113
114 <#-- fill meta data -->
115 <#assign meta = {} />
116
117 <#-- PUBLIKATIONEN DETAIL -->
118 <#if layouttpl?contains("LAYOUT_KASDE_PUBLIKATIONEN_DETAIL")>
119
120 <#if hasContent('coverDMTKASDEMEDIUM', languageId, json)>
121 <#assign
122 coverBildString = getValueForLanguage('coverDMTKASDEMEDIUM', languageId, json, "first")
123 />
124
125 <#if coverBildString?has_content>
126 <#assign
127 coverBild = FrontendService.json.parseAsJson(coverBildString)
128 dMTJsonObject = FrontendService.media.getDMTJsonObject( coverBild.groupId?number, coverBild.uuid, locale )
129 linkToDMT = FrontendService.media.getImageURLForAMConfiguration('hd-resolution',coverBild.groupId?number, coverBild.uuid )
130 data = data + { "media": linkToDMT, "meta" : dMTJsonObject }
131 />
132 <#if dMTJsonObject.altText?? >
133 <#assign data = data + {"alt" : dMTJsonObject.altText} />
134 </#if>
135 <#if dMTJsonObject.quelle??>
136 <#assign meta = meta + { "quelle": dMTJsonObject.quelle } />
137 </#if>
138 </#if>
139 <#-- uncomment to display pdf cover as Intro Image
140 <#elseif hasContent('document_pdfDMTBASICDOCUMENT', languageId, json)>
141 <#assign
142 pdfDocument = getValueForLanguage('document_pdfDMTBASICDOCUMENT', languageId, json, "first")
143 fileEntry = FrontendService.media.getFileEntry(pdfDocument.uuid, groupId?number)!/>
144 <#if fileEntry?has_content>
145 <#assign
146 linkToThumbnail = FrontendService.link.getThumbnailSrc(fileEntry , themeDisplay)
147 data = data + { "media": linkToThumbnail }
148 />
149 </#if>
150 -->
151 </#if>
152
153 <#assign
154 meta = meta + { "orderInfo": "true" }
155 verbundJournalArticle = FrontendService.publication.getVerbundToPublikation( entry )!""
156 />
157
158
159
160 <#if hasContent('erscheinungsdatum', languageId, json)>
161 <#assign
162 erscheinungsdatum = getValueForLanguage('erscheinungsdatum', languageId, json, "first")
163 />
164 <#if erscheinungsdatum?has_content >
165 <#assign
166 erscheinungsdatumFormatted = FrontendService.date.getDateFormatLong( erscheinungsdatum, languageId )
167 meta = meta + { "date": erscheinungsdatumFormatted }
168 />
169 </#if>
170 </#if>
171
172 <#if verbundJournalArticle?has_content>
173 <#assign
174 verbundJsonString = FrontendService.article.getWebcontent(verbundJournalArticle.resourcePrimKey)
175 verbundJson = FrontendService.json.parseAsJson(verbundJsonString)
176 laufendenummer = getValueForLanguage('laufendenummer', languageId, verbundJson, "first")
177 coverImg = getValueForLanguage('mediumDMTKASDEMEDIUM', languageId, verbundJson, "first")
178 />
179 <@debugJsonString verbundJsonString "ADT_KASDE_DYNAMIC_INTRO-verbundJournalArticle" />
180 <#assign meta = meta + { "laufendenummer": laufendenummer } >
181
182 <#if coverImg?has_content && coverImg.url?has_content >
183 <#assign meta = meta + { "coverImg": coverImg.url } >
184 </#if>
185 </#if>
186
187
188 <#if meta?has_content>
189 <#assign data = data + {"meta": meta } >
190 </#if>
191
192 </#if>
193 <#-- PUBLIKATIONEN DETAIL END -->
194
195
196 <#-- VERANSTALTUNGEN DETAIL -->
197 <#if layouttpl?contains("LAYOUT_KASDE_VERANSTALTUNGEN_DETAIL")>
198 <#assign
199 friendlyUrl = FrontendService.article.getFriendlyUrl(primaryKey, languageId, groupId)!""
200 links = []
201 />
202 <#if availablelanguages?has_content && friendlyUrl?has_content>
203 <#if (availablelanguages?size > 1) >
204 <#list availablelanguages as language>
205 <#assign
206 defaultLanguage = "de_DE"
207 defaultLocale = FrontendService.language.getLocaleByKey(defaultLanguage)
208 linkLocale = (FrontendService.language.getLocaleByKey(language))!defaultLocale
209 langFriendlyUrl = FrontendService.article.getFriendlyUrl(primaryKey, linkLocale, groupId)
210
211 link = {
212 "key": language!defaultLanguage,
213 "value": linkLocale.getDisplayLanguage(languageId),
214 "url": "/c/portal/update_language?p_l_id=" +
215 layout.plid + "&redirect=" + langFriendlyUrl +
216 "&languageId=" + language
217 }
218 />
219 <#if language == languageId>
220 <#assign link = link + { "selected": "true" } >
221 </#if>
222 <#assign links = links + [link]>
223 </#list>
224 <#assign
225 data = data + {
226 "languageSelect": {
227 "id": "languageSelectRedirect",
228 "name": "languageselectRedirect",
229 "entries": links,
230 "label": languageUtil.get(languageId, "diese.veranstaltung.ist.in.weiteren.sprachen.verfuegbar")
231 }
232 }
233 />
234 </#if>
235 </#if>
236 </#if>
237
238 <#if hasContent('erscheinungsdatum', languageId, json)>
239 <#assign
240 startdate = getValueForLanguage('erscheinungsdatum', languageId, json, "first")
241 meta = meta + { "start": startdate?date.iso, "end": "" }
242 />
243 </#if>
244
245 <#if hasContent('startdatum', languageId, json)>
246 <#assign
247 startdate = getValueForLanguage('startdatum', languageId, json, "first")
248 meta = meta + { "start": startdate?date.iso, "end": "" }
249 />
250 </#if>
251
252 <#if hasValue('einfuehrungText', locale, json)>
253 <#assign data = data + { "einfuehrungText" : getValueForLanguage('einfuehrungText', locale, json, "first") } >
254 <#elseif hasValue(FrontendService.article.getFieldNameByReferenceName(primaryKey, 'einfuehrungText'), locale, json, "first")>
255 <#assign data = data + { "einfuehrungText" : getValueForLanguage(FrontendService.article.getFieldNameByReferenceName(primaryKey, 'einfuehrungText'), locale, json, "first") } >
256 </#if>
257
258 <#if hasContent('endedatum', languageId, json)>
259 <#assign
260 enddate = getValueForLanguage('endedatum', languageId, json, "first")
261 meta = meta + { "end": enddate?date.iso }
262 />
263 </#if>
264
265 <#if hasContent('startzeit', languageId, json)>
266 <#assign
267 startzeit = getValueForLanguage('startzeit', languageId, json, "first")
268 />
269 <#if startzeit?has_content >
270 <#assign meta = meta + { "startzeit": startzeit } />
271 </#if>
272 </#if>
273
274 <#if hasContent('endezeit', languageId, json)>
275 <#assign
276 endezeit = getValueForLanguage('endezeit', languageId, json, "first")
277 meta = meta + { "endezeit": endezeit }
278 />
279 </#if>
280
281 <#if hasContent('ortWCSKASDEORT', languageId, json)>
282 <#assign
283 ortWCSKASDEORT = FrontendService.json.parseAsJson(getValueForLanguage('ortWCSKASDEORT', languageId, json, "first"))
284 ortWCSKASDEORTPrimaryKey = ortWCSKASDEORT.classPK?number
285 ortWCSKASDEORTWebContent = FrontendService.article.getWebcontentByPk(ortWCSKASDEORTPrimaryKey)!""
286 />
287 <#if ortWCSKASDEORTWebContent?has_content >
288 <#assign
289 ortWCSKASDEORTTitle = ortWCSKASDEORTWebContent.getTitle(languageId)!""
290 />
291 <#if ortWCSKASDEORTTitle?has_content >
292 <#assign
293 meta = meta + { "ortWCSKASDEORT": ortWCSKASDEORTTitle }
294 />
295 </#if>
296 </#if>
297 </#if>
298
299
300 <#if hasContent('veranstaltungsnummer', languageId, json)>
301 <#assign
302 verauuid = getValueForLanguage('veranstaltungsnummer', languageId, json, "first")
303 meta = meta + { "verauuid": verauuid }
304 />
305 </#if>
306
307
308 <#if (data.meta)?has_content >
309 <#assign meta = data.meta />
310 </#if>
311
312 <#if !(data.media)?has_content && hasContent('mediumDMTKASDEMEDIUM', languageId, json)>
313 <#assign
314 medium = getValueForLanguage('mediumDMTKASDEMEDIUM', languageId, json, "first")
315 mediaData = getRelatedMediaObject(medium, themeDisplay, languageId, FrontendService, "hd-resolution")
316 />
317 <#assign data = data + { "media": mediaData.url , "meta" : mediaData.meta} >
318
319
320 <#if mediaData.meta?? && mediaData.meta.quelle??>
321 <#assign meta = meta + data.meta + { "quelle": mediaData.meta.quelle } />
322 </#if>
323 </#if>
324
325
326 <#if meta?has_content>
327 <#assign data = data + {"meta": meta } >
328 </#if>
329
330 <#-- END fill meta data -->
331
332 <#if hasContentForSequence('autorenWCSKASDEPERSON', languageId, json)>
333 <#assign
334 journalArticles = getValueForLanguageAnsprechpartner('autorenWCSKASDEPERSON', languageId, json)
335 authors = []
336 />
337 <#list journalArticles as articleString>
338 <#assign article = FrontendService.json.parseAsJson(articleString) />
339 <#if article?has_content && article?is_hash && article.classPK??>
340 <#assign articleDereferenced = FrontendService.person.resolveContactInstanceToPerson(article, languageId)!"" />
341 <#if articleDereferenced?has_content >
342 <#assign
343 author = ""
344 articlePrimaryKey = articleDereferenced.classPK?number
345 articleJsonString = FrontendService.article.getWebcontent(articlePrimaryKey)
346 articleJson = FrontendService.json.parseAsJson(articleJsonString)
347 />
348 <@debugJsonString articleJsonString "ADT_KASDE_DYNAMIC_INTRO-autorenWCSKASDEPERSON" />
349 <#if hasValue('anredetitel', languageId, articleJson)>
350 <#assign author = author + getValueForLanguage('anredetitel', languageId, articleJson, " ") + " ">
351 </#if>
352 <#if hasValue('vorname', languageId, articleJson)>
353 <#assign author = author + getValueForLanguage('vorname', languageId, articleJson, " ") + " ">
354 </#if>
355 <#if hasValue('nachname', languageId, articleJson)>
356 <#assign author = author + getValueForLanguage('nachname', languageId, articleJson, " ") + " ">
357 </#if>
358
359 <#attempt>
360 <#assign href = FrontendService.article.getFriendlyUrl(articlePrimaryKey, languageId, groupId)!"#" >
361 <#recover>
362 <#assign href = "#" >
363 </#attempt>
364 <#if href?has_content && href != "#" && href != "/_404">
365 <#assign author = '<a href="' + href + '">' + author?trim + '</a>'>
366 </#if>
367
368 <#assign authors = authors + [author?trim]>
369 </#if>
370 </#if>
371 </#list>
372 <#if authors?has_content>
373 <#assign data = data + { "author": authors?join(", ") } >
374 </#if>
375 </#if>
376
377 <#if layouttpl?contains("LAYOUT_KASDE_VERANSTALTUNGEN_DETAIL") >
378 <#assign categories = FrontendService.category.getCategoriesToArticle(primaryKey, "VERANSTALTUNGSTYP")! >
379 <#if categories?has_content && categories[0]?has_content >
380 <#assign data = data + { "category": categories[0].getTitle(languageId,true)! } >
381 </#if>
382
383 <#if hasContent('ausgebucht', languageId, json)>
384 <#assign data = data + { "ausgebucht" : getValueForLanguage('ausgebucht', languageId, json, "first") }>
385 </#if>
386
387 <#if hasContent('storniert', languageId, json)>
388 <#assign data = data + { "storniert" : getValueForLanguage('storniert', languageId, json, "first") }>
389 </#if>
390
391 <#elseif layouttpl?contains("LAYOUT_KASDE_PUBLIKATIONEN_DETAIL") >
392 <#assign categories = FrontendService.category.getCategoriesToArticle(primaryKey, "PUBLIKATIONSREIHE")! >
393 <#if categories?has_content && categories[0]?has_content >
394 <#assign data = data + { "category": categories[0].getTitle(languageId,true)! } >
395 </#if>
396 <#else>
397 <#assign categories = FrontendService.category.getCategoriesToArticle(primaryKey, "THEMA")! >
398 <#if categories?has_content && categories[0]?has_content >
399 <#assign data = data + { "category": categories[0].getTitle(languageId,true)! } >
400 </#if>
401 </#if>
402
403
404 <#assign
405 languages = []
406 />
407
408 <#attempt>
409 <#if json["document_pdfDMTBASICDOCUMENT"]?? >
410 <#if availablelanguages?has_content>
411 <#list availablelanguages as pdf_language>
412 <#assign
413 docRefJson = getValueForLanguage('document_pdfDMTBASICDOCUMENT', pdf_language, json, "first")
414 docRef = FrontendService.json.parseAsJson(docRefJson)
415 />
416 <#if docRef?is_hash && pdf_language != languageId >
417 <#assign
418 lang = FrontendService.language.getLocaleByKey(pdf_language)!""
419 docGroupId = docRef["groupId"]?number
420 docUuid = docRef["uuid"]
421 dMTJsonObject = FrontendService.media.getDMTJsonObject( docGroupId, docUuid, locale )
422 dMTLink = FrontendService.media.getLinkToDMT( dMTJsonObject )
423 />
424 <#if lang?has_content>
425 <#assign
426 languages = languages + [
427 {
428 "key": pdf_language,
429 "value": FrontendService.language.getLocaleByKey(pdf_language).getDisplayLanguage(),
430 "url": dMTLink
431 }]
432 />
433 </#if>
434 </#if>
435 </#list>
436 </#if>
437 </#if>
438 <#recover>
439 </#attempt>
440
441 <#if (languages?size > 0)>
442 <#attempt>
443 <#assign
444 data = data + { "languageSelect": {
445 "id": "languageSelect",
446 "name": "languageselect",
447 "entries": languages,
448 "documents": "",
449 "button": "true"
450 }}
451 />
452 <#recover>
453 </#attempt>
454 </#if>
455
456 <@PMIntro "ADT_KASDE_DYNAMIC_INTRO" data AMMetadata AMDatetime "bottom" />
457 ${FrontendService.article.getEditArticleHtml(primaryKey, themeDisplay)}
458
459 <#if data.meta?has_content>
460 <#if data.meta.laufendenummer?has_content !isACColorScheme() && !isVLCColorScheme() && !isDPMColorScheme()>
461 <div>
462 <div id="publicationVerbundPagination">
463 <@AMPublicationCarousel data.meta.laufendenummer data.meta.date data.meta.coverImg />
464 </div>
465 </div>
466 </#if>
467 </#if>
468
469<#elseif (editmode?? && editmode)>
470 <@errorMessage languageUtil.get(locale, "kein.journalArticle.gefunden") "ADT_KASDE_DYNAMIC_INTRO" layouttpl currentUrl />
471</#if>
Kontroverse Genese der ZEDE und widersprüchliche Interessen
Als die Initiative für die ZEDE 2013 angestoßen wurde, hatte der derzeitige Präsident den Vorsitz des Nationalkongresses inne (2010-2014). Das emblematische Gesetzesprojekt wurde vom Parlament mit verfassungsändernder Mehrheit verabschiedet und schließlich von der Verfassungskammer des Obersten Gerichtshofs bestätigt. Diese war allerdings 2012 vom Nationalkongress auf willkürliche Weise neu besetzt worden, wohl nicht zuletzt, um die Passage des Gesetzes sicherzustellen.
Der gesetzliche Rahmen der ZEDE entstand inmitten von Kontroversen und seine Auswirkungen beginnen sich nun abzuzeichnen. Kritiker äußern, dass das Projekt eine große Gefahr für die Souveränität, Integrität und Sicherheit des Staatsgebiets darstellt. Die Sonderzonen sind nämlich befugt, eigene Bildungs-, Gesundheits-, Sozialversicherungs- und Wissenschaftsförderungssysteme zu etablieren. Die Kritik lautet, dies käme nur ohnehin bereits privilegierten Bevölkerungsgruppen zugute, während die Mehrheit der honduranischen Bevölkerung weiter unter prekären Bedingungen existieren müsse. Schätzungen zufolge leben zwischen 60 und 70 Prozent der Bevölkerung des Landes in Armut. Andererseits erklären die Befürworter der ZEDE, das Ziel der Zonen bestehe eben darin, ausländische Investitionen anzulocken, um so neue Beschäftigungsquellen zu schaffen. Sie betonen, dass Honduras über vielfältige natürliche Ressourcen verfügt, die Investitionen und die Finanzkraft des Landes fördern können. Die ZEDE bedürften daher einiger Sonderregelungen, um transnationales Kapital zu aktivieren und gegenüber anderen Standorten wie Singapur oder den Vereinigten Arabischen Emiraten konkurrenzfähig zu sein.
Verschiedene Sektoren der Gesellschaft sind vor den Obersten Gerichtshof und den Nationalkongress gezogen, um Verfassungsbeschwerde einzulegen und die Sonderzonen außer Kraft zu setzen. Dies hat jedoch nicht verhindert, dass in einigen der benannten Zonen auf Grundlage der neuen Gesetzgebung bereits mit Bauprojekten begonnen wurde. In der Folge nehmen Spannungen und die soziale Polarisierung zu. Der Umfang der Projekte, ihr Wachstum und die damit verbundenen Auswirkungen sind derzeit noch nicht abzusehen, aber man kann in jedem Fall davon ausgehen, dass die Kongressabgeordneten der nächsten Legislaturperiode eine entscheidende Rolle in der Frage der Bestätigung oder Aufhebung der ZEDE spielen werden.
Gesetzlicher Rahmen
Am 6. September 2013 wurde das Gesetz über die Zonen für Beschäftigung und wirtschaftliche Entwicklung (ZEDE) im Amtsblatt unter der Nummer 33,222 veröffentlicht. Artikel 1 legt fest:
„Die Zonen für Beschäftigung und wirtschaftliche Entwicklung (ZEDE) verfügen über eine eigene Rechtspersönlichkeit und sind befugt, eigene Richtlinien und Vorschriften zu erlassen. Sie werden mit dem Ziel eingerichtet, die Erfüllung der Ziele des Nationalen Entwicklungsplans (Plan de Nación) zu beschleunigen und Bedingungen zu schaffen, die dem Land eine Beteiligung am internationalen Markt unter wettbewerbsorientierten und stabilen Regeln ermöglichen“ (Dekret Nr. 120-2013).
Artikel 3 schreibt vor, dass die ZEDE „funktionale und administrative Autonomie genießen“ und daher „über autonome und unabhängige Gerichte mit ausschließlicher Zuständigkeit in der Zone verfügen werden, die Rechtsordnungen oder Traditionen aus anderen Teilen der Welt übernehmen können“.
In diesem Sinne legten die Mitglieder des Obersten Gerichtshofs den Beschluss Nr. CSJ-01-2021 vor, der gemäß den Artikeln 303 und 329 der Verfassung der Republik die Sondergerichtsbarkeit der ZEDE festlegt und erklärt, dass die Gerichte in den Zonen einen integralen Bestandteil des Gerichtswesens von Honduras bilden (Beschluss Nr. CSJ-01-2021).
Dieser Beschluss basiert auf Artikel 14 des Gesetzes der ZEDE, wonach die Sonderzonen „über autonome und unabhängige Gerichte mit ausschließlicher Zuständigkeit in allen Instanzen in Angelegenheiten, die nicht der obligatorischen Schiedsgerichtsbarkeit unterliegen, verfügen werden“. Später, in Artikel 15, heißt es, „die Richter der ZEDE werden vom Justizrat des Gerichtswesens anhand einer Kandidatenliste ernannt,“ die von einem dafür eingerichteten „Komitee für die Umsetzung von Erfolgsmodellen (best practice)“ vorgeschlagen werden. Kritiker sehen durch den starken Einfluss dieses Komitees die Unabhängigkeit der Justiz infrage gestellt.
In einem öffentlichen Schreiben des Lehrkörpers der Fakultät für Rechtswissenschaften der Nationalen Autonomen Universität von Honduras wird daher Folgendes angeprangert: „Das Gesetz zur Schaffung der ZEDE sieht auch die Möglichkeit vor, dass diese sich obligatorischen Schiedsverfahren unterwerfen, sodass der Oberste Gerichtshof, abgesehen davon, dass er seiner hoheitlichen Aufgabe Recht zu sprechen nicht nachkommt, Befugnisse an autonome und unabhängige Richter delegiert, welche Rechtssysteme oder -traditionen anderer Länder übernehmen können, was der Ausübung der Souveränität widerspricht.“ (UNAH, 2021)
Das Komitee besteht aus 21 Personen von nationalem und internationalem Ansehen, die vom Präsidenten der Republik ernannt und anschließend vom Nationalkongress bestätigt werden. Zu seinen Hauptaufgaben gehört die Entwicklung und Genehmigung von Vorschriften, die die Aktivitäten innerhalb der ZEDE regeln. Solche Vorschriften erlauben jedoch nicht, unter das Niveau der allgemeinen Gesetzgebung des Landes zurückzufallen, und die tatsächlich bereits bestehenden Regelungen, z.B. im Arbeitsrecht, erweitern und verbessern die Rechte von Arbeitnehmerinnen und Arbeitnehmern.
Wer ist der Technische Sekretär der ZEDE?
Zu den Befugnissen des Komitees gehört es auch, den sog. Technischen Sekretär in jeder der Zonen zu benennen und seines Amtes zu entheben. Das Gesetz besagt: „Er [der technische Sekretär] ist der gesetzliche Vertreter und der höchste leitende Angestellte in ihnen [den Zonen]. Seine Amtsdauer beträgt sieben Jahre und kann verlängert oder widerrufen werden.“ Artikel 12 des Gesetzes definiert keine zeitliche Grenze für die Verlängerung in dieser Position, weshalb davon ausgegangen wird, dass die Möglichkeit einer unbefristeten Ernennung besteht. Eine weitere Kontroverse ergibt sich aus Artikel 18, der sich auf sogenannte zivile Strafen bezieht, da „diesbezügliche Prozesse innerhalb der ZEDE von einem Geschworenengericht entschieden werden können“. Der Nachteil daran ist, dass die Reichweite und die möglichen Auswirkungen des Artikels unbekannt sind, da derselbe Artikel die Schaffung einer den Sonderzonen eigenen Rechtsprechung in die Hände des bereits genannten Komitees legt. Daher ist es wichtig zu fragen: Wird das Komitee während des derzeitigen verfassungsmäßigen Präsidentenmandats ernannt werden oder liegt die Entscheidung bei den zukünftigen Regierenden des Landes?
Wirtschaftliche Aspekte
Kapitel 5 des Gesetzes der ZEDE bezieht sich auf die Wirtschaft, die Finanzen und die Beschäftigung in den Zonen. Artikel 23 betont, dass „sie über ihre unabhängige Finanzordnung verfügen, befugt sind, ihre finanziellen Einkünfte ausschließlich für ihre eigenen Zwecke zu verwenden und Mittel an die Regierungsebenen des restlichen Landes gemäß der in diesem Gesetz angegebenen Art überweisen werden“. Diese Überweisungen werden durch eine oder mehrere Treuhänderschaften verwaltet und zu gleichen Anteilen von je zwanzig Prozent auf fünf spezifische Zwecke verteilt. Artikel 44 legt diese Verteilung (nach Zwecken) fest:
- „Ein Fünftel für die Schaffung eines Fonds zur Stärkung der Justiz.“
- „Ein Fünftel für einen Projektfonds auf Gemeinde- und Departementsebene.“
- „Ein Fünftel für einen Fonds für Entwicklung, Infrastruktur, Sicherheit und Soziales.“
- „Ein Fünftel für einen Fonds zur Entwicklung kommunaler Projekte, verteilt auf alle Gemeinden des Landes.“
- „Ein Fünftel für die Verteidigung der nationalen Souveränität durch die Stärkung der Streitkräfte von Honduras.“
Unter den Mitteln, die die Regierung des restlichen Landes (Staatssystem außerhalb der ZEDE) erhält, wird in diesem Kontext keine Möglichkeit erwähnt, Investitionen für wesentliche Aspekte, die den gesellschaftlichen Zusammenhalt und das Gemeinwohl fördern, darunter Gesundheit, Bildung, Umwelt, zu tätigen. Zwar erwähnt Absatz 3 des Artikels 44 Treuhänderschaften für Entwicklungs- und soziale Projekte, doch ist sein Wortlaut sehr vieldeutig und lässt unterschiedliche Auslegungen zu.
Andererseits wird ein Fünftel dieser Überweisungen verwendet, um die Streitkräfte von Honduras zu stärken, die gemäß desselben Gesetzes (Artikel 1) die nationale Verteidigung der ZEDE gewährleisten müssen. Diese Treuhänderschaft reduziert Mittel für andere zentrale Aufgaben des Landes.
In Bezug auf die umstrittenen Artikel über Landbesitz und die Urbanisierung dieser Sonderzonen legt Artikel 25 des Gesetzes ZEDE fest, dass „das Eigentum des Bodens, auf dem die ZEDE in Gebieten mit geringer Bevölkerungsdichte angelegt sind, von der ZEDE im Auftrag des Staates Honduras verwaltet wird“. Diesbezüglich wird auf Artikel 12 der Verfassung der Republik verwiesen, in dem es lautet: „Der Staat übt die Souveränität und Gerichtsbarkeit im Luftraum und Untergrund seines kontinentalen und insularen Territoriums, Küstenmeeres, seiner Anschlusszone, Wirtschaftszone, ausschließlichen Wirtschaftszone und seines Kontinentalsockels aus.“ Artikel 13 der Verfassung besagt: „In den Fällen, auf die in den vorherigen Artikeln Bezug genommen wurde, ist das Eigentum des Staates unveräußerlich und unverjährbar.“ Dies ist ein weiteres Beispiel für die Kontroversen, die durch das Gesetz der ZEDE ausgelöst worden sind. Die indigene und afrikanischstämmige Bevölkerung hat ihrerseits begonnen, sich darüber zu beraten, ob sie das Projekt der ZEDE akzeptieren oder ablehnen soll.
Soziale Aspekte
Das ZEDE-Gesetz enthält ein besonderes Kapitel, das die Zonen befugt, ihre eigenen Bildungs-, Gesundheits-, Sozialversicherungs-, Wissenschafts-, Religions-, Arbeits- und Umweltsysteme zu etablieren. Die Verteidiger der ZEDE merken an, dass diese Systeme qualitativ hochwertig sein und an der Spitze der Trends der modernen Welt stehen werden. Allerdings fehlen bislang Pläne, die landesweit bestehenden Systeme zu integrieren. Nach Meinung einiger Experten werden einige wenige Honduraner große Vorteile und Chancen genießen dürfen, während der Rest weiter in Armut und prekären Bedingungen leben muss.
Eine weitere Kontroverse um die ZEDE entsteht durch Artikel 34 des Gesetzes, das die Zonen befugt, „auf allen Ebenen ihre eigene Bildungs- und Lehrplanpolitik zu etablieren“. Dies widerspricht dem Artikel 160 der Verfassung: „Die Nationale Autonome Universität von Honduras ist eine autonome Institution des Staates, mit Rechtspersönlichkeit, die allein befugt ist, die Hochschul- und Berufsbildung zu organisieren, zu leiten und zu entwickeln.“ Die Bestimmungen der ZEDE entziehen der Nationalen Autonomen Universität von Honduras diese verfassungsmäßige Befugnis und beschränken ihren Geltungsbereich innerhalb der Sonderzonen.
Reaktionen und Kritik
Angesichts der beschriebenen Kontroversen und offenen Fragen haben die Vereinten Nationen den Staat Honduras aufgefordert, „die Vereinbarkeit des verfassungsmäßigen und rechtlichen Rahmens der ZEDE mit ihren internationalen Verpflichtungen zur Achtung und Gewährleistung der Ausübung der Menschenrechte“ zu erwägen und zu überprüfen. Gleichzeitig „wird der Staat aufgefordert, Alternativen zu erkunden, die ein inklusives Wirtschaftswachstum des Landes basierend auf einem Modell einer gerechten und nachhaltigen Entwicklung, das Gleichberechtigung garantiert, begünstigen“ (VN, 2021).
Ebenso haben verschiedene Sektoren der honduranischen Gesellschaft ihre Ablehnung des ZEDE-Projekts zum Ausdruck gebracht und seine sofortige Aufhebung gefordert. Dazu gehören: die Nationale Autonome Universität von Honduras (Universidad Nacional Autónoma de Honduras, UNAH), der Nationale Antikorruptionsrat (Consejo Nacional Anticorrupción, CNA), die Bischofskonferenz von Honduras, der Honduranische Rat der Privatunternehmen (Consejo Hondureño de la Empresa Privada, COHEP) und die Honduranische Anwaltskammer (Colegio de Abogados de Honduras, CAH). Angesichts dieses Szenarios muss man sich fragen, welcher Investor seine finanziellen Mittel in diesem Projekt anlegen will.
Verfassungsfragen
In den Schluss- und Übergangsbestimmungen des ZEDE-Gesetz heißt es: „In Übereinstimmung mit den Bestimmungen des Artikels 329 der Verfassung der Republik darf dieses Gesetz nur durch eine Zweidrittelmehrheit der Mitglieder des Nationalkongresses geändert, ergänzt, reformiert, ausgelegt oder aufgehoben werden“. Aufgrund der Vorschriften dieses Verfassungsartikels sind politische Konflikte vorgezeichnet.
In den letzten Jahren hat die Verfassung verschiedene Reformen durchlaufen. Zu den umstrittensten gehören die Bestimmungen des Dekrets Nr. 9-2013, veröffentlicht im Amtsblatt vom 20. März 2013 unter der Nummer 33,080. Dort wird festgestellt, dass die Schaffung von Arbeitsplätzen eines der dringendsten Bedürfnisse des honduranischen Volkes ist und eine der größten Verpflichtungen des Staates darstellt, weshalb die Artikel 294, 303 und 329 geändert wurden. In ihrer ursprünglichen Form galten diese Artikel als in Stein gemeißelt oder nicht reformierbar. Da sie jedoch mit dem ZEDE-Projekt unvereinbar waren, musste der Nationalkongress folgende Verfassungsänderungen vorantreiben:
- In Artikel 294 der Verfassung wurde die Bestimmung hinzugefügt, dass „der Nationalkongress gemäß Artikel 329 derselben Verfassung Gebiete schaffen kann, die besonderen Regelungen unterliegen.“
- Artikel 303, der sich auf die Befugnisse des Justizwesens bezieht, wurde wie folgt geändert:
„Das Justizwesen besteht aus einem Obersten Gerichtshof, den Berufungsgerichten, den Gerichten, und den Gerichten mit ausschließlicher Zuständigkeit in Gebieten des Landes, die den durch die Verfassung der Republik geschaffenen Sonderregierungsformen unterliegen, sowie den weiteren im Gesetz vorgesehen Instanzen.“
- Artikel 329 schließlich ist derjenige, der die tiefst greifende Verfassungsänderung erfahren hat, da ein ganzer Sonderabsatz zur Gründung der ZEDE in Honduras aufgenommen wurde.
Dem Gesetz über die Zonen für Beschäftigung und wirtschaftliche Entwicklung von Honduras wurde von der Legislative der Weg geebnet, indem sie sich Zuständigkeiten angemaßt hat, ohne den Souverän (das Volk) zu befragen.
Gemäß dem verfassungsrechtlichen Rahmen von Honduras müssen am 28. November 2021 allgemeine Wahlen abgehalten und die Regierenden für die verschiedenen Ämter für den Zeitraum 2022-2026 bestimmt werden. Von den 14 für den Wahlkampf eingeschriebenen politischen Parteien tritt nur die Nationalpartei PNH für die Weiterführung der Zonen für Beschäftigung und wirtschaftliche Entwicklung ein.
Ausblick
Derzeit sind offene Verhandlungen in verschiedenen Gemeinden und Kommunen geplant, die die ZEDE annehmen oder ablehnen können. Zu den wichtigsten Themen, die diskutiert werden, gehört die Akquise von Land mit hoher und niedriger Bevölkerungsdichte.
Es ist zudem bekannt geworden, dass die lokalen Behörden in der Gemeinde Roatán (Departement Islas de la Bahia) prüfen, ob es möglich ist, dass die gesamte Gemeinde eine ZEDE wird. Auf diese Weise könnten alle Bewohner die Chancen und Vorteile genießen, die das Gesetz bietet. Diese Option wurde allerdings gar nicht berücksichtigt, als das Gesetz für die ZEDE verabschiedet wurde, und so ergeben sich bereits weitere Fragen, zum Beispiel: Werden Investoren bereit sein, alle Einwohner der Gemeinde in ihre Projekte einzubeziehen? Wird die höchste Instanz von Roatán der Bürgermeister der Gemeinde oder der Technische Sekretär der ZEDE sein?
Verweise
- Beschluss Nr. CSJ-01-2021. Einrichtung der Sondergerichtsbarkeit für Zonen für Beschäftigung und wirtschaftliche Entwicklung (ZEDE). 14.06.2021. (Acuerdo No. CSJ-01-2021. Establecimiento de la jurisdicción especial de las Zonas de Empleo y Desarrollo Económico (ZEDE))
- Dekret Nr. 120-2013. Erlass des Gesetzes für die Zonen für Beschäftigung und wirtschaftliche Entwicklung (ZEDE). 06.09.2013. Amtsblatt Nr. 33,222. (Decreto No. 120-2013. Por medio del cual se expide Ley Orgánica de las Zonas de Empleo y Desarrollo Económico (ZEDE). 6 de septiembre de 2013. Diario oficial La Gaceta N. 33,222.)
- Dekret Nr. 9-2013. Ratifizierung des Dekrets Nr. 236-2012 vom 23.01.2013. Amtsblatt Nr. 33,080. (Decreto No. 9-2013. Por medio del cual se ratifica el Decreto No. 236-2012 de fecha 23 de enero de 2013. Diario oficial La Gaceta No. 33,080.)VN. (08.06.2021). Vereinte Nationen Honduras. Aus: Die ZEDE könnten ernsthafte Risiken für die Gewährleistung der Menschenrechte durch den
- Staat von Honduras darstellen (Original: Las ZEDE podrían suponer serios riesgos para la garantía de los derechos humanos por parte del Estado de Honduras): Unter: https://honduras.un.org/es/130598-las-zede-podrian-suponer-serios-riesgos-para-la-garantia-de-los-derechos-humanos-por-parte