openArchitectureWare
| {{#if: | {{{Name}}} | {{#invoke:WLink|getArticleBase}} }}
{{#if: offizielles Logo | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | offizielles Logo |
{{#if: {{#invoke:Wikidata|claim|P154}} |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[[Datei:{{#invoke:Wikidata|claim|P154}}|150px]]
}} }}{{#if: | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| {{#if: | }}| }} | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Basisdaten
{{#if: | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Hauptentwickler |
{{#if: {{#invoke:Wikidata|claim|P126}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Maintainer | claim|P126|parameter=link|references=ja|list=, }}
}} }}{{#if: openArchitectureWare | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Entwickler |
{{#if: {{#invoke:Wikidata|claim|P178}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Entwickler | claim|P178|parameter=link|references=ja|list=, }}
}} }}{{#if: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Erscheinungsjahr |
{{#if: {{#invoke:Wikidata|claim|P577}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Erscheinungsjahr | claim|P577|references=ja|list=, }} |
{{#if: {{#invoke:Wikidata|claim|P571}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Erscheinungsjahr | claim|P571|references=ja|list=, }}
}} }} }}{{#ifeq: 4.3.1 | KEINE_ANGABE || {{#if: 4.3.1 | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Aktuelle Version | ({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an. |
format | 22. Dezember 2008 | {{#timefl:now|date}}}} | {{{2}}} | T._Monat JJJJ}} | lang= {{#switch: | -|=de | #default=de-AT
}} }} }}) }} |
{{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813}} |
| |||||||||||||||||||||||||||||||||||||||||||||||||
| Aktuelle Version | claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}} | ({{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}}) }}}}}} }}{{#ifeq: {{{AktuelleVorabVersion}}} | KEINE_ANGABE || {{#if: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Aktuelle Vorabversion | ({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an. |
format | {{{AktuelleVorabVersionFreigabeDatum}}} | {{#timefl:now|date}}}} | {{{2}}} | T._Monat JJJJ}} | lang= {{#switch: | -|=de | #default=de-AT
}} }} }}) }} |
{{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724}} |
| |||||||||||||||||||||||||||||||||||||||||||||||||
| Aktuelle Vorabversion | claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}} | ({{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}}) }}}}}} }}{{#if: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Ausführungsumgebung |
{{#if: alle Java fähigen |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Betriebssystem |
{{#if: {{#invoke:Wikidata|claim|P306}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Betriebssystem | claim|P306|parameter=link|references=ja|list=, }}
}} }} }}{{#if: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Programmiersprache |
{{#if: {{#invoke:Wikidata|claim|P277}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Programmiersprache | claim|P277|parameter=link|references=ja|list=, }}
}} }}{{#if: Entwicklungswerkzeug | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Kategorie | Entwicklungswerkzeug
}}{{#if: EPL | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Lizenz | EPL |
{{#if: {{#invoke:Wikidata|claim|P275}} |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Lizenz | claim|P275|parameter=link|references=ja|list=, }}
}} }}{{#if: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| deutschsprachig | faculty|0}} | ja | nein }}
}}{{#if: | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Sonstiges | {{{Sonstiges}}}
}}{{#if: <templatestyles src="Webarchiv/styles.css" />{{#if:20140225123932 |
* | {{#if: OpenArchitectureWare | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }} (Archivversionen) | 20140225123932}} | {{#if: | }}Der Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
|
{{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y|20140225123932}} im Internet Archive{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}} }} |
{{#if: | {{{webciteID}}}}} | len|{{{webciteID}}}}} | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }} | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }} | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!{{#if: | }}
}} |
{{{webciteID}}}}} {{#if: OpenArchitectureWare | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] ({{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}} |
{{#if: | Vorlage:Webarchiv/Today | {{#if: | Vorlage:Webarchiv/Generisch | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}]
}}}}}}}}{{#if:
|
Vorlage:Webarchiv/archiv-bot
}}{{#invoke:TemplatePar|check
|
all = url= | opt = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original= | cat = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv | errNS = 0 | template = Vorlage:Webarchiv | format = * | preview = 1
}}{{#ifexpr: {{#if:20140225123932|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
|
{{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
}}{{#if:
|
getdomain|{{{archiv-url}}}}} | web.archive.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}}
|
webcitation.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}}
|
archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
}}{{#if:
|
Execute}}|}} | {{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}} | }} | {{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
}} |
{{#if: | {{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
}}
}}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.openarchitectureware.org/index.php}}
|
{{#if: | }}
}}{{#if: OpenArchitectureWare
|
isBracketedLink|OpenArchitectureWare}} | {{#if: | }}
}} |
{{#if: | }}
}}{{#switch:
|
addlpages= {{#if: | }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
}}{{#ifeq: {{#invoke:Str|find|http://www.openarchitectureware.org/index.php%7Carchiv}} |-1
|
{{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.openarchitectureware.org/index.php%7C4}}%7Chttp}} |-1 | {{#switch: {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php }} | daserste.ndr.de | inarchive.com | webcitation.org = | #default = {{#if: | }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
}}
}}
}} |
|
| <templatestyles src="Webarchiv/styles.css" />{{#if:20140225123932 | * | {{#if: OpenArchitectureWare | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }} (Archivversionen) | 20140225123932}} | {{#if: | }}Der Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
|
{{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y|20140225123932}} im Internet Archive{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}} }} |
{{#if: | {{{webciteID}}}}} | len|{{{webciteID}}}}} | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }} | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }} | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!{{#if: | }}
}} |
{{{webciteID}}}}} {{#if: OpenArchitectureWare | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}] ({{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}} |
{{#if: | Vorlage:Webarchiv/Today | {{#if: | Vorlage:Webarchiv/Generisch | {{#invoke:WLink|getEscapedTitle|OpenArchitectureWare}} | {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php}} }}]
}}}}}}}}{{#if:
|
Vorlage:Webarchiv/archiv-bot
}}{{#invoke:TemplatePar|check
|
all = url= | opt = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original= | cat = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv | errNS = 0 | template = Vorlage:Webarchiv | format = * | preview = 1
}}{{#ifexpr: {{#if:20140225123932|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
|
{{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
}}{{#if:
|
getdomain|{{{archiv-url}}}}} | web.archive.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}}
|
webcitation.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}}
|
archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
}}{{#if:
|
Execute}}|}} | {{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}} | }} | {{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
}} |
{{#if: | {{#if: | }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
}}
}}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.openarchitectureware.org/index.php}}
|
{{#if: | }}
}}{{#if: OpenArchitectureWare
|
isBracketedLink|OpenArchitectureWare}} | {{#if: | }}
}} |
{{#if: | }}
}}{{#switch:
|
addlpages= {{#if: | }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
}}{{#ifeq: {{#invoke:Str|find|http://www.openarchitectureware.org/index.php%7Carchiv}} |-1
|
{{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.openarchitectureware.org/index.php%7C4}}%7Chttp}} |-1 | {{#switch: {{#invoke:Webarchiv|getdomain|http://www.openarchitectureware.org/index.php }} | daserste.ndr.de | inarchive.com | webcitation.org = | #default = {{#if: | }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
}}
}}
}} |
{{#if: {{#invoke:Wikidata|claim|P856|notdeprecated=1}} |
| |
{{#invoke: WLink | formatURL | {{#invoke:Wikidata|claim|P856|parameter=link|notdeprecated=1}}}}
}} }}{{#if: | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Dateien | [[c:Category:Created with {{{Dateien}}}|{{{Dateien}}}]]
}} | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Hinter dem Begriff openArchitectureWare oder kurz oAW verbirgt sich eine Plattform für die modellgetriebene Softwareentwicklung und das modellgetriebene Testen. OpenArchitectureWare ist unter der Open-Source-Lizenz Eclipse Public License frei verfügbar und wird von einer großen Entwicklergemeinde weiterentwickelt.
Im Wesentlichen bietet openArchitectureWare die Möglichkeit, Codegeneratoren für beliebige Modelle zu verarbeiten. Zu diesen Modellen gehören EMF-Modelle, fast alle mit UML-Werkzeugen erstellten Modelle, aber auch Visio-Modelle oder textuelle Spezifikationen. Aus den Modellquellen kann beliebiger Quellcode generiert werden. Umfangreiche Möglichkeiten für Modellvalidierungen und einfache Modelltransformationen stehen zur Verfügung.
Mit der Integration in das Eclipse Galileo Release ist oAW eingestellt worden und wird als Modeling Workflow Engine im Eclipse Modeling Projects weiterentwickelt.
oAW-Sprachfamilie
Im Kern besteht oAW aus einer Sprachfamilie bestehend aus drei Teilen. Alle Sprachen sind statisch typisiert und verwenden dieselbe Expression-Engine und dasselbe flexibel erweiterbare Typsystem.
Xtend
Xtend ist eine funktionale Sprache, mit der es möglich ist bestehende Metamodelltypen mit zusätzlicher Logik zu erweitern. Das Konzept heißt Extensions und ist ebenfalls in der C# 3.0 Spezifikation enthalten. Diese Erweiterungen können sowohl innerhalb von Xtend als auch in den anderen Sprachen Check und Xpand aufgerufen werden. Weiterhin vereinfacht das Konzept der Create Extensions die Transformation von Modellen.
Check
Check ist das Äquivalent zur OCL. Im Gegensatz zu OCL basiert es aber ebenfalls auf der Sprachfamilie von oAW und kann deshalb nicht nur auf MOF-kompatiblen Modellen ausgeführt werden, sondern auch auf beliebigen anderen. Außerdem kann auf mittels Xtend definierte Extensions zugegriffen werden.
Xpand
Xpand ist eine statisch typisierte Templatesprache mit speziellen, für die Codegenerierung wichtigen Features. Unter anderem kann damit innerhalb der Templates in Dateien geschrieben werden, Templates können polymorph aufgerufen werden und durch Aspekte erweitert bzw. verdeckt werden.
Workflow-Engine
Der Aufbau eines Generators muss flexibel gestaltet und konfiguriert werden können. Die oAW-Workflowengine ist ein auf Dependency Injection (kurz DI) basierendes leichtgewichtiges Komponentenframework, das es ermöglicht, komplexe Generatoren in einzelne sogenannte Cartridges aufzuteilen. Eine Cartridge ist ein beliebiger Abschnitt innerhalb eines Generators, der zu einer Art Black Box zusammengeschnitten wird und so einfacher wiederverwendet werden kann. Mittels einer Workflowbeschreibung wird für jede Cartridge die genaue Schnittstelle definiert. Wird ein Generator ausgeliefert, kann alles in einem jar verpackt und dann über die Workflow-Schnittstelle aufgerufen und ausgeführt werden.
Subprojekte
Neben den Kernkomponenten werden verschiedene Subprojekte angeboten, die die Integration bestehender Funktionalität aus anderen Open-Source-Projekten unterstützen.
Recipe
Die Integration von generiertem und nicht generiertem Quellcode kann mit Hilfe des Recipe Frameworks sichergestellt werden. Recipes überprüfen direkt nach der Generierung, ob bestimmte Bedingungen erfüllt sind (z. B. dass eine bestimmte Klasse manuell erstellt wurde, die wiederum von einer generierten Klasse erbt).
UML2-Adapter
Mit dem UML2-Adapter ist es möglich, Modelle einzulesen, die auf dem Eclipse UML2-Projekt basieren.<ref>{{#if:2006-04-15|{{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}| |}}}}{{#if:|{{{autor}}}: }}{{#if:https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7C{{#if:UML2%7C[{{#invoke:Vorlage:Internetquelle|archivURL|1={{#invoke:URLutil|getNormalized|1=https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/}}}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=UML2}}]{{#if:| ({{{format}}})}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}|{{#if:http://www.eclipse.org/uml2%7C{{#if:{{#invoke:TemplUtl%7Cfaculty%7C1}}%7C{{#invoke:Vorlage:Internetquelle%7CTitelFormat%7Ctitel={{#invoke:WLink%7CgetEscapedTitle%7C1=UML2}}}}%7C[{{#invoke:URLutil|getNormalized|1=http://www.eclipse.org/uml2}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel={{#invoke:WLink|getEscapedTitle|1=UML2}}}}]}}{{#if:| ({{{format}}}{{#if:1www.eclipse.orgEclipse Foundationhttps://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/{{#if: 2019-09-16 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| )
| {{#if:{{#ifeq:en|de||{{#if:en|1}}}}| ;
| )}}}}}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}}}{{#if:http://www.eclipse.org/uml2%7C{{#if:{{#invoke:URLutil%7CisResourceURL%7C1=http://www.eclipse.org/uml2}}%7C%7C}}}}{{#if:UML2|{{#if:{{#invoke:WLink|isValidLinktext|1=UML2|lines=0}}||}}}}{{#if: www.eclipse.org| In: {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=www.eclipse.org}}}}{{#if: Eclipse Foundation| Eclipse Foundation{{#if: https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7C,%7C{{#if: 2019-09-16 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | {{#if:{{#invoke:DateTime|format|{{{datum}}}|noerror=1}}
|{{#invoke:DateTime|format|{{{datum}}}|T._Monat JJJJ}}
|{{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, datum={{{datum}}}|class=Zitationswartung}} }}{{#if: https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7C,%7C{{#if: 2019-09-16 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | S. {{{seiten}}}{{#if: https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7C,%7C{{#if: 2019-09-16 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/{{#invoke:TemplUtl%7Cfaculty%7C1}}%7C+{{#if:Eclipse Foundation|{{#if:https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7Carchiviert%7Cehemals}}%7C{{#if:https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7CArchiviert%7CEhemals}}}}+{{#if:https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7Cvom%7Cim}}+Vorlage:Referrer{{#if:{{#invoke:TemplUtl|faculty|1}}| (nicht mehr online verfügbar)}}{{#if: 2006-04-15| am {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}|2006-04-15{{#if:651736||(?)}}}}}}{{#if: 2019-09-16|;}}}}{{#if: 2019-09-16| {{#if:Eclipse Foundationhttps://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/{{#invoke:TemplUtl%7Cfaculty%7C1}}%7Cabgerufen%7CAbgerufen}} {{#switch: {{#invoke:Str|len| {{#invoke:DateTime|format| 2019-09-16 |ISO|noerror=1}} }}
|4=im Jahr
|7=im
|10=am
|#default={{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, abruf=2019-09-16|class=Zitationswartung}} }} {{#invoke:DateTime|format|2019-09-16|T._Monat JJJJ}}
| {{#invoke:TemplUtl|failure|1=Vorlage:Internetquelle | abruf=2026-MM-TT ist Pflichtparameter}} }}{{#if:{{#ifeq:en|de||{{#if:en|1}}}}|{{#if:1www.eclipse.orgEclipse Foundationhttps://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/{{#if: 2019-09-16 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| (
| {{#if: | | (}}
}}{{#ifeq:{{#if:en|en|de}}|de||
{{#invoke:Multilingual|format|en|slang=!|split=[%s,]+|shift=m|separator=, }}}}{{#if: |{{#ifeq:{{#if:en|en|de}}|de||, }}{{{kommentar}}}}})}}{{#if: https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/{{#if: 2019-09-16 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}} }}en|{{#if: |: {{
#if:
| „{{
#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| Vorlage:Str trim
| {{#invoke:Vorlage:lang|flat}}
}}“
| {{#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| „Vorlage:Str trim“
| {{#invoke:Text|quote
|1={{#if:
| {{#invoke:Vorlage:lang|flat}}
| {{#invoke:Vorlage:lang|flat}} }}
|2={{#if: {{#invoke:TemplUtl|faculty|}}|de-CH|de}}
|3=1}} }}
}}{{#if:
| (<templatestyles src="Person/styles.css" />{{#if: | : }}{{#if: | , deutsch: „“ }})
| {{#if:
| ({{#if: | , deutsch: „“ }})
| {{#if: | (deutsch: „“) }}
}}
}}{{#if: {{{zitat}}}
| {{#if:
| {{#if: {{{zitat}}}
| Vorlage:": Text= und 1= gleichzeitig, bzw. Pipe zu viel }} }}
| Vorlage:": Text= fehlt }}{{#if: | {{#if: {{#invoke:Text|unstrip|{{{ref}}}}}
| Vorlage:": Ungültiger Wert: ref=
| {{{ref}}} }}
}}|.{{#if:{{#invoke:TemplUtl|faculty|1}}|{{#if:https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7C%7C{{#ifeq: 1 | JaKeinHinweis |{{#switch:
|0|=Vorlage:Toter Link/Core{{#if: http://www.eclipse.org/uml2 | {{#if: | [1] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: http://www.eclipse.org/uml2 | {{#if:{{#invoke:URLutil|isWebURL|http://www.eclipse.org/uml2}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=http://www.eclipse.org/uml2 Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: http://www.eclipse.org/uml2 | {{#if:{{#invoke:URLutil|isWebURL|http://www.eclipse.org/uml2}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}[http://www.eclipse.org/uml2 }}|{{#switch: |0|=Vorlage:Toter Link/Core{{#if: http://www.eclipse.org/uml2 | {{#if: | [2] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: http://www.eclipse.org/uml2 | {{#if:{{#invoke:URLutil|isWebURL|http://www.eclipse.org/uml2}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=http://www.eclipse.org/uml2 Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: http://www.eclipse.org/uml2 | {{#if:{{#invoke:URLutil|isWebURL|http://www.eclipse.org/uml2}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}[http://www.eclipse.org/uml2 }} }}}}}}}}}}{{#if:| {{#invoke:Vorlage:Internetquelle|archivBot|stamp={{{archiv-bot}}}|text={{#if:https://web.archive.org/web/20060415110810/http://www.eclipse.org/uml2/%7CVorlage:Webarchiv/archiv-bot}}
}}}}{{#invoke:TemplatePar|check |all= url= titel= |opt= autor= hrsg= format= sprache= titelerg= werk= seiten= datum= abruf= zugriff= abruf-verborgen= archiv-url= archiv-datum= archiv-bot= kommentar= zitat= AT= CH= offline= |cat= {{#ifeq: 0 | 0 | Wikipedia:Vorlagenfehler/Vorlage:Internetquelle}} |template= Vorlage:Internetquelle |format=0 |preview=1 }}</ref> Zusätzlich werden die Informationen aus den genutzten Profilen dynamisch auf entsprechende Metatypen gemappt, damit die polymorphen Fähigkeiten der oAW-Sprachen ausgenutzt werden können.
Xtext
Xtext ist ein Framework zur Erstellung von textuellen Domänenspezifischen Sprachen (DSL). Mit Xtext können nicht nur die Sprache und ein entsprechender Parser erzeugt werden, sondern auch ein spezifischer Texteditor für Eclipse, der u. a. die definierten Constraints direkt beim Speichern prüft.
GMF-Adapter
Mit dem Graphical Modeling Framework können grafische DSLs und entsprechende Editoren erstellt werden. Mit diesem Adapter ist es auf einfache Weise möglich, in der Sprache Check definierte Constraints innerhalb des generierten Eclipse-Editors auszuführen und entsprechende Meldungen und Marker zu erzeugen.
Literatur
- {{#invoke:Vorlage:Literatur|f}}
- {{#invoke:Vorlage:Literatur|f}}
- Efftinge, Völter, Haase, Kolb – The pragmatic code generator programmer – the ServerSide
- Friese, Efftinge, Köhnlein – Build your own textual DSL with Tools from the Eclipse Modeling Project
- Martin Fowlers DSL-Beispiel implementiert in Xtext
- Implementation and Integration of a Domain Specific Language with oAW and Xtext by Volker Koster (PDF-Datei; 1000 kB)
- Creating DSLs in Java, Part 3: Internal and external DSLs – Parse and refine an external DSL with openArchitectureWare's Xtext By Venkat Subramaniam, JavaWorld.com, 08/19/08
Weblinks
Einzelnachweise
<references />
{{#ifeq: s | p | | {{#if: 7661713-0 | |
}} }}{{#ifeq:||{{#if: | [[Kategorie:Wikipedia:GND fehlt {{#invoke:Str|left|{{{GNDCheck}}}|7}}]] }}{{#if: | {{#if: | | }} }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#ifeq: s | p | {{#if: 7661713-0 | | {{#if: {{#statements:P227}} | | }} }} }}{{#ifeq: s | p | {{#if: 7661713-0 | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P227}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P244}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P244}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P214}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P214}} | | }} }} }} }}Vorlage:Wikidata-Registrierung
- Seiten mit defekten Dateilinks
- Wikipedia:Vorlagenfehler/Parameter:Datum
- Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
- Wikipedia:Vorlagenfehler/Vorlage:Webarchiv/Archiv-URL
- Wikipedia:Vorlagenfehler/Parameter:URL
- Wikipedia:Vorlagenfehler/Parameter:Linktext
- Wikipedia:Vorlagenfehler/Vorlage:Webarchiv/Linktext fehlt
- Wikipedia:Vorlagenfehler/Vorlage:"
- Wikipedia:Weblink offline fix-attempted
- Wikipedia:Vorlagenfehler/Vorlage:Toter Link
- Wikipedia:Vorlagenfehler/Vorlage:Toter Link/URL fehlt
- Wikipedia:GND fehlt
- Wikipedia:Normdaten-TYP falsch oder fehlend
- Wikipedia:GND in Wikipedia fehlt, in Wikidata vorhanden
- Wikipedia:GND in Wikipedia vorhanden, fehlt jedoch in Wikidata
- Wikipedia:LCCN in Wikipedia fehlt, in Wikidata vorhanden
- Wikipedia:LCCN in Wikipedia vorhanden, fehlt jedoch in Wikidata
- Wikipedia:VIAF in Wikipedia fehlt, in Wikidata vorhanden
- Wikipedia:VIAF in Wikipedia vorhanden, fehlt jedoch in Wikidata
- Vorgehensmodell (Software)
- Freies Programmierwerkzeug
- Domänenspezifische Sprache
- Templatesprache
- Eclipse