Configo Michel Zedler CML Einfhrung in die Configo

  • Slides: 29
Download presentation
Configo Michel Zedler CML Einführung in die Configo Modeling Language 3/8/2021 Folie Nr. 1

Configo Michel Zedler CML Einführung in die Configo Modeling Language 3/8/2021 Folie Nr. 1

Configo Andreas Springer Motivation Anwendungskonfiguration mit Configo 3/8/2021 Folie Nr. 2

Configo Andreas Springer Motivation Anwendungskonfiguration mit Configo 3/8/2021 Folie Nr. 2

Configo Worum geht’s ? Fast jede Anwendung ist konfigurierbar Verschiedene Möglichkeiten für ein Konfigurationsfile

Configo Worum geht’s ? Fast jede Anwendung ist konfigurierbar Verschiedene Möglichkeiten für ein Konfigurationsfile Die Funktionalität dieser Möglichkeiten sind entweder zu mächtig oder zu simpel 3/8/2021 3

Configo Relevante Rollen Anwendungsadministrator Ändert die Konfiguration der Applikation Anwendungsentwickler Will seine Applikation konfigurierbar

Configo Relevante Rollen Anwendungsadministrator Ändert die Konfiguration der Applikation Anwendungsentwickler Will seine Applikation konfigurierbar gestalten 3/8/2021 4

Configo Anwendungsentwickler Probleme beim Erarbeiten einer Individuallösung mit einer XML-API Unhandliches Auslesen des XML-Files

Configo Anwendungsentwickler Probleme beim Erarbeiten einer Individuallösung mit einer XML-API Unhandliches Auslesen des XML-Files Fehlermeldungen der APIs kaum verwendbar Viel Zeitaufwand beim Beschreiben eines Configfiles 3/8/2021 5

Configo Anwendungsadministrator Metadaten zum Konfigurationsfile Verständliche Fehlermeldungen 3/8/2021 6

Configo Anwendungsadministrator Metadaten zum Konfigurationsfile Verständliche Fehlermeldungen 3/8/2021 6

Configo Frameworkgedanke Keine Lösung vorhanden Große Bedeutung Weg von individuellen Lösungen 3/8/2021 7

Configo Frameworkgedanke Keine Lösung vorhanden Große Bedeutung Weg von individuellen Lösungen 3/8/2021 7

Configo Nelly Schuster Ideen Die Architektur von Configo 3/8/2021 Folie Nr. 8

Configo Nelly Schuster Ideen Die Architektur von Configo 3/8/2021 Folie Nr. 8

Configo XML-Schema Binding Framework Parser (validierend) liest verarbeitet 3/8/2021 XML-Datei Folie Nr. 9

Configo XML-Schema Binding Framework Parser (validierend) liest verarbeitet 3/8/2021 XML-Datei Folie Nr. 9

Configo Modell Validator XML-Schema Binding Framework Parser liest verarbeitet 3/8/2021 validiert XML-Datei Folie Nr.

Configo Modell Validator XML-Schema Binding Framework Parser liest verarbeitet 3/8/2021 validiert XML-Datei Folie Nr. 10

Configo Modell Generator Validator XML-Schema Binding Framework Parser liest verarbeitet 3/8/2021 validiert XML-Datei Folie

Configo Modell Generator Validator XML-Schema Binding Framework Parser liest verarbeitet 3/8/2021 validiert XML-Datei Folie Nr. 11

Configo Modell Generator Doku XML-Schema Binding Framework validiert Parser liest verarbeitet 3/8/2021 Validator XML-Datei

Configo Modell Generator Doku XML-Schema Binding Framework validiert Parser liest verarbeitet 3/8/2021 Validator XML-Datei Folie Nr. 12

Configo Michel Zedler CML Kurzeinführung in die Configo Modeling Language 3/8/2021 Folie Nr. 13

Configo Michel Zedler CML Kurzeinführung in die Configo Modeling Language 3/8/2021 Folie Nr. 13

Configo Aufgaben der CML beschreibt XML Konfigurationsdateien auf technische Ebene auf anwendungsfachlicher Ebene 3/8/2021

Configo Aufgaben der CML beschreibt XML Konfigurationsdateien auf technische Ebene auf anwendungsfachlicher Ebene 3/8/2021 14

Configo Dokumentstruktur Elementschachtelung durch Parent-Child-Referenzierung Schachtelungslogik Kein Inhalt Nur Textinhalt (CData) Sequenz von Elementen

Configo Dokumentstruktur Elementschachtelung durch Parent-Child-Referenzierung Schachtelungslogik Kein Inhalt Nur Textinhalt (CData) Sequenz von Elementen Auswahl von Elementen Kardinalität / Optionalität von Elementen 3/8/2021 15

Configo Konfigurationsparameter Typisierung Eindeutigkeit Schlüssel und Fremdschlüsselbeziehungen 3/8/2021 16

Configo Konfigurationsparameter Typisierung Eindeutigkeit Schlüssel und Fremdschlüsselbeziehungen 3/8/2021 16

Configo Konfigurationsparameter - Typisierung Basistypen Simple Types (String, Integer, Float) Bounded Types (String, Integer,

Configo Konfigurationsparameter - Typisierung Basistypen Simple Types (String, Integer, Float) Bounded Types (String, Integer, Float) Selections Regular Expressions User Defined Types 3/8/2021 17

Configo Anwendungsbeispiel Beispiel einer gültigen Konfigurationsdatei: <? xml version="1. 0" encoding="UTF-8"? > <gui> <frontend

Configo Anwendungsbeispiel Beispiel einer gültigen Konfigurationsdatei: <? xml version="1. 0" encoding="UTF-8"? > <gui> <frontend background. Color="#FF 0000"/> <backend background. Color="#0000 FF"/> </gui> Beispiel einer ungültigen Konfigurationsdatei <? xml version="1. 0" encoding="UTF-8"? > <gui> <backend background. Color="#0000 FF"/> <frontend background. Color="#00 GG 00"/> </gui> 3/8/2021 18

Configo XML Schema Parser Fehlermeldung (1) org. xml. sax. SAXParse. Exception: cvc-complex-type. 2. 4.

Configo XML Schema Parser Fehlermeldung (1) org. xml. sax. SAXParse. Exception: cvc-complex-type. 2. 4. a: Invalid content was found starting with element 'backend'. One of '{"": frontend}' is expected. at org. apache. xerces. util. Error. Handler. Wrapper. create. SAXParse Exception(Unknown Source) at org. apache. xerces. util. Error. Handler. Wrapper. error(Unknown Source) at org. apache. xerces. impl. XMLError. Reporter. report. Error(Unkno wn Source) at org. apache. xerces. impl. xs. XMLSchema. Validator$XSIError. Repo rter. report. Error(Unknown Source) 3/8/2021 19

Configo XML Schema Parser Fehlermeldung (2) at at at org. apache. xerces. impl. xs.

Configo XML Schema Parser Fehlermeldung (2) at at at org. apache. xerces. impl. xs. XMLSchema. Validator. report. Schema Error(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. handle. Start. E lement(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. empty. Element (Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl. sca n. Start. Element(Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl$Fra gment. Content. Dispatcher. dispatch(Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl. sca n. Document(Unknown Source) 3/8/2021 20

Configo XML Schema Parser Fehlermeldung (3) at org. apache. xerces. parsers. XML 11 Configuration.

Configo XML Schema Parser Fehlermeldung (3) at org. apache. xerces. parsers. XML 11 Configuration. parse(Unknow n Source) at org. apache. xerces. parsers. XMLParser. parse(Unknown Source) at org. apache. xerces. parsers. DOMParser. parse(Unknown Source) at org. apache. xerces. jaxp. Document. Builder. Impl. parse(Unknown Source) at javax. xml. parsers. Document. Builder. parse(Unknown Source) at Hello. XMLSchema. main(Hello. XMLSchema. java: 48) org. xml. sax. SAXParse. Exception: cvc-pattern-valid: Value '#00 GG 00' is not facet-valid with respect to pattern '#([0 -9]|[A-F]){6}' for type 'RGB-color. ST'. at org. apache. xerces. util. Error. Handler. Wrapper. create. SAXParse Exception(Unknown Source) 3/8/2021 21

Configo XML Schema Parser Fehlermeldung (4) at org. apache. xerces. util. Error. Handler. Wrapper.

Configo XML Schema Parser Fehlermeldung (4) at org. apache. xerces. util. Error. Handler. Wrapper. error(Unknown Source) at org. apache. xerces. impl. XMLError. Reporter. report. Error(Unkno wn Source) at org. apache. xerces. impl. xs. XMLSchema. Validator$XSIError. Repo rter. report. Error(Unknown Source) at org. apache. xerces. impl. xs. XMLSchema. Validator. report. Schema Error(Unknown Source) at org. apache. xerces. impl. xs. XMLSchema. Validator. process. One. At tribute(Unknown Source) 3/8/2021 22

Configo XML Schema Parser Fehlermeldung (5) at at at org. apache. xerces. impl. xs.

Configo XML Schema Parser Fehlermeldung (5) at at at org. apache. xerces. impl. xs. XMLSchema. Validator. process. Attri butes(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. handle. Start. E lement(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. empty. Element (Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl. sca n. Start. Element(Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl$Fra gment. Content. Dispatcher. dispatch(Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl. sca n. Document(Unknown Source) 3/8/2021 23

Configo XML Schema Parser Fehlermeldung (6) at org. apache. xerces. parsers. XML 11 Configuration.

Configo XML Schema Parser Fehlermeldung (6) at org. apache. xerces. parsers. XML 11 Configuration. parse(Unknow n Source) at org. apache. xerces. parsers. XMLParser. parse(Unknown Source) at org. apache. xerces. parsers. DOMParser. parse(Unknown Source) at org. apache. xerces. jaxp. Document. Builder. Impl. parse(Unknown Source) at javax. xml. parsers. Document. Builder. parse(Unknown Source) at Hello. XMLSchema. main(Hello. XMLSchema. java: 48) org. xml. sax. SAXParse. Exception: cvc-attribute. 3: The value '#00 GG 00' of attribute 'background. Color' on element 'frontend' is not valid with respect to its type, 'RGBcolor. ST'. 3/8/2021 24

Configo XML Schema Parser Fehlermeldung (7) at org. apache. xerces. util. Error. Handler. Wrapper.

Configo XML Schema Parser Fehlermeldung (7) at org. apache. xerces. util. Error. Handler. Wrapper. create. SAXParse Exception(Unknown Source) at org. apache. xerces. util. Error. Handler. Wrapper. error(Unknown Source) at org. apache. xerces. impl. XMLError. Reporter. report. Error(Unkno wn Source) at org. apache. xerces. impl. xs. XMLSchema. Validator$XSIError. Repo rter. report. Error(Unknown Source) at org. apache. xerces. impl. xs. XMLSchema. Validator. report. Schema Error(Unknown Source) 3/8/2021 25

Configo XML Schema Parser Fehlermeldung (8) at at at org. apache. xerces. impl. xs.

Configo XML Schema Parser Fehlermeldung (8) at at at org. apache. xerces. impl. xs. XMLSchema. Validator. process. One. At tribute(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. process. Attri butes(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. handle. Start. E lement(Unknown Source) org. apache. xerces. impl. xs. XMLSchema. Validator. empty. Element (Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl. sca n. Start. Element(Unknown Source) org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl$Fra gment. Content. Dispatcher. dispatch(Unknown Source) 3/8/2021 26

Configo XML Schema Parser Fehlermeldung (9) at at org. apache. xerces. impl. XMLDocument. Fragment.

Configo XML Schema Parser Fehlermeldung (9) at at org. apache. xerces. impl. XMLDocument. Fragment. Scanner. Impl. sca n. Document(Unknown Source) org. apache. xerces. parsers. XML 11 Configuration. parse(Unknow n Source) org. apache. xerces. parsers. XMLParser. parse(Unknown Source) org. apache. xerces. parsers. DOMParser. parse(Unknown Source) org. apache. xerces. jaxp. Document. Builder. Impl. parse(Unknown Source) javax. xml. parsers. Document. Builder. parse(Unknown Source) Hello. XMLSchema. main(Hello. XMLSchema. java: 48) 3/8/2021 27

Configo Fehlermeldung --- Error 1 --Line: 2 Error: Corrupt child order of element <gui>.

Configo Fehlermeldung --- Error 1 --Line: 2 Error: Corrupt child order of element <gui>. Hint: Child elements must appear in this order: <frontend> <backend> --- Error 2 --Line: 4 Error: Value '#00 GG 00' of attribute background. Color on element <frontend> is no valid RGB-color Hint: Expecting: RGB-color in hexadecimal notation Value must match pattern '#([0 -9]|[A-F]){6}'. Examples: '#000000', '#C 0 C 0 C 0', '#800080', '#FFFF 00' --------------------------->>> Validation failed! (2 error(s)) 3/8/2021 28

Configo © 2005, Nelly Schuster, Andreas Springer, Michel Zedler Studiengang Medieninformatik Hochschule der Medien,

Configo © 2005, Nelly Schuster, Andreas Springer, Michel Zedler Studiengang Medieninformatik Hochschule der Medien, Stuttgart 3/8/2021 29