Inhalt
Die Inhalte der bisherigen Webseiten nach und nach übernommen. Mit einem * gekennzeichnete Bereiche sind noch nicht übernommen worden.
Overview
Mehr als nur irgendein weiteres CMS.
UIO3 UDS ist ein System für die semantische und die dokumentorientierte Erfassung, Verarbeitung, Verwaltung, Visualisierung und Bereitstellung von Informationen, Werten, Funktionalität im Sinne von Lambda Expressions und anderen Daten.
UIO3 UDS (Uniform Design System) ist ein komplexes Werkzeug, geschaffen in einer Zusammenarbeit mit Seminarteilnehmern und der Community von SNEWMEDIA.
UIO3 UDS (Uniform Design System) is a system for semantic document-oriented acquisition, processing, management, visualization and provision of information, values, functionality in terms of lambda expressions and other data. UIO3 UDS is a complex tool created in cooperation with SNEWMEDIA seminar participants and community.
UIO3 UDS 是一个面向语义文档的系统,用于获取、处理、管理、可视化和提供 lambda 表达式和其他数据方面的信息、值和功能。UIO3 UDS 是与 SNEWMEDIA 研讨会与会者和社区合作创建的一个复杂工具。
Overview
UDS ist ein Uniform Design System. Ein System besteht nicht nur aus einer Software mit Programmcode sondern basiert auf einer Idee, einem Konzept, Zielen, Erwartungshaltungen, Menschen die es planen, entwickeln, erhalten und schlussendlich auch nutzen.
What is UDS?
UDS ist ein Uniform Design System. Ein System besteht nicht nur aus einer Software mit Programmcode sondern basiert auf einer Idee, einem Konzept, Zielen, Erwartungshaltungen, Menschen die es planen, entwickeln, erhalten und schlussendlich auch nutzen.
UDS ist System für Menschen
Das UDS Uniform Design System ist ein Verfahren mit dessen Hilfe man Layouts, Komponenten, Inhalte und deren Verarbeitung und Rendering planen kann.
Uns ging und geht es in der Ideenfindung von Beginn an darum, dass einfache wie auch komplexe Datensammlungen nicht nur in Bezug auf redaktionelle Inhalte von Webseiten sondern auch mitunter FSM basierte Entscheidungsmodelle unabhängig von herkömmlichen aktuellen Redaktionssystemen formuliert werden können.
Document Driven Design
UDS basiert auf einem Document Driven Design Konzept. Das bedeutet anschaulich, dass beispielsweise ein kompletter Cluster mehrerer Websites auch mit diversen Domains und Subdomanis mit auch über 5.000 Seiten an Content als Ordnerstruktur mit XML-, JSON- und LD+JSON-Files abgebildet werden können.
XML, JSON, LD+JSON, SVG, HTML, CSS, SCXML und weitere genutzte Formate und Technologien sind W3C Standards und damit Web Standards.
Validierung von Files
Die Validierung von XML-Files kann durch die Programmierung von XSD XML Schema Definition Files verbessert werden. Starre Schemata sind in dem Sinne aber nicht zwingend erforderlich. UDS ermöglicht auch die Erfassung von Daten in XML Dokumenten auch für die Fälle, wo das Schema noch in Planung ist.
XSD ist ein W3C Standard.
Case Studies
Für alle diejenigen, die UDS noch nicht kennen und nun denken, dass UDS mal wieder irgendein neues Redaktionssystem CMS ist: UDS ist ein Uniform Design System. Auf dieser Grundlage kann man u. a. auch ein CMS entwickeln. Man muss aber nicht.
SNEWMEDIA
Problemstellung
Das Leistungsspektrum war über mehr als 20 Jahre in großem Umfang angestiegen. Viele Leistungs- und Tätigkeitsbereiche sowie auch einzelne Produkte bis hin zu Dokumentationen erforderten schlussendlich eigenständige Websites in einem Cluster aus Webseiten.
Die besondere Herausforderung bestand darin, dass die Redaktion und Datenhaltung auf XML basieren musste weil die zugehörigen Inhalte nicht nur von menschlichen Redakteuren geschrieben sondern auch teilweise über PHP, JAVA und C# basierend auf Daten generiert und z.T. wiederum mit KI überarbeitet werden mussten.
Das Document Driven Design System und das REPL Read-Eval-Print-Loop Prinzip von UDS wurde explizit für diese Art von Scenarios geplant.
Link: SNEWMEDIA.COM (extern)
AVIORIS
Problemstellung
Für den Relaunch der Webseite der Avioris GmbH Wirtschaftsprüfungsgesellschaft bestand die Zielsetzung darin, ein Hacking der Webseite von Beginn an soweit wie möglich zu verhindern. Da die redaktionellen Inhalte sich über die Jahre kaum verändert, war ein klassisches Open-Source-CMS oder Blog- und News-System nicht erforderlich.
Die Webseite hat grob 5 Seiten an Informationen inklusive Impressum und Datenschutz.
UDS hat in der Standardinstallation kein offenes webbasiertes Backend und kann deshalb auch nicht über das Internet gehackt werden.
Link: Avioris (extern)
UIO3
Problemstellung
Für die Trennung von Leistungen, Produkten und deren Dokumentation von SNEWMEDIA und Kooperationspartnern wurde es erforderlich, die Dokumentation von technischen Sachverhalten und Seminarunterlagen von den Webseiten der zugehörigen Vertriebspartner zu trennen.
UDS stellt sich hierbei mit Document Driven Design und XML-Files als Grundlage als praktische Lösung heraus, denn für das Zusammenführen redaktioneller Inhalte für das UIO3 Portal stand es nun jedem Kooperationspartner frei, mit welcher IDE, Editor, von Hand, Skript oder mit KI man den XML Code für die redaktionellen Inhalte verfasst.
Der praktische Nebeneffekt von UDS: Mehrsprachigkeit und Unterstützung diverser Domains und Subdomains sowie URI-Pfad-Sequenzen.
Link: UIO3.COM (extern)
...
Weitere Fallbeispiele
Weitere Fallbeispiele auf Anfrage.
What's Happening
UDS befindet sich stetig in Entwicklung. In manchen Phasen geht es schneller. In anderen Phasen geht es langsamer. Priorität bekommt schlussendlich das was entweder von irgendwem finanziert wird oder aber einen anderen Nutzen hat, der den einen oder die andere dazu bewegt, sich freiwillig zu engagieren.
Tasks
Die Tasks und To-Do-Liste befindet sich derzeit noch auf einer anderen Webseite. Die Tasks werden demnächst in diese Webseite umgezogen.
Changelog
Auch die Changelogs für die Versionen sind derzeit noch auf einer anderen Seite gehostet und werden noch umgezogen.
Why and When
UDS wurde als Uniform Design System geschaffen, um für Planungsprozesse für Web, Print und auch Apps gewisse Standards in der Planung zu haben, was bereits den Ablauf von Planungen und Entscheidungen betrifft. Wir sprechen von Leistungsphasen, Units und Devisions.
Dass man mit UDS nicht nur etwas planen sondern auch redaktionelle Inhalte von über 3.000 Seiten Content formulieren, mit Code- oder KI erzeugen und schlussendlich als Cluster von Websites mit diversen Domains nebst Mehrsprachigkeit rendern und betreiben kann, ist nur ein Nebeneffekt der Idee gewesen.
UDS ist ein System
Wenn Menschen eine Präsentation planen, wollen manche nur eine Webseite; andere wissen aber schon vorher, dass es auch PDF-Downloads, eine gedruckte Broschüre oder noch Kleinigkeiten wie Visitenkarten geben soll.
Das Uniform Design System UDS dient also primär zuerst einmal dazu, diesen Ideen, Planungen und dem Prototyping einen Rahmen zu geben.
UDS als Headless CMS
Da die Redaktion in UDS auf XML basiert, ist es möglich, redaktionelle Inhalte, Informationen und andere Daten nicht nur manuell von Hand als XML-File zu schreiben sondern kann XML Files auch basierend auf Datenbank-Abfragen mit Programmiersprachen erzeugen.
Der für UDS programmierte Server dient dazu, HTTP/S Requests mit Anfragen für URIs für mehrere Domains verarbeiten und diese auswerten zu können. Findet der Server ein Dokument beginnt er das zugehörige Rendering.
UDS Templates
Die Templates für UDS werden bislang in XSL programmiert. XSL, XML, XSPATH und SCXML sind ebenso ein W3C Standard wie HTML5, CSS3, JSON, LD+JSON, SVG oder auch.
Auch wenn wir die Umstellung von XSL auf JavaScript planen, weil kaum noch jemand XSL programmieren kann oder lernen möchte, so sei zusammengefasst eines festgehalten: XSL funktioniert.
Case Studies
Ausgewählte Fallbeispiele im Zusammenhang mit dem Einsatz von UDS als Headless Content Management System.
What's Happening
Überblick was zur Zeit für UDS in der Ideenfindung, Planung, Konzeption und Entwicklung hängt.
Why and When
Entscheidungsgrundlagen welcher für den Einsatz und gegen den Einsatz von UDS sprechen.
News
Aktuelle Informationen zu UDS für Interessierte
Overview
Wenn Menschen mit UDS ein System für Menschen, Code und KI planen und erhalten, gibt es immer irgendetwas, worüber man diskutieren könnte. Die Quizfrage lautet nur: Für wen ist was interessant?
News, Articles, Blog, Meetings: Diese der möglichen Varianten, wie Information zwischen UDS und Ihnen fließen können, kennt viele Variante, und herkömmliche Varianten wie Email-Newsletter oder auch die ständig hinzukommenen weiteren Social-Media-Portale führen dazu, dass wir diese Rubrik sicherlich noch weiter ausbauen könnten.
Wir informieren über UDS im Schwerpunkt bislang auf unserer Webseite, auch wenn wir durchaus über eine Reihe von Social Media Profilen verfügen. Unser Primärziel in der Kommunikation besteht darin, die Medien zu nutzen, die wir mit UDS als System abdecken. Dieser Ansatz zeigt Ihnen schneller, was mit UDS in einer Rohfassung möglich ist. Und es hilft uns, in Redaktion und Customizing durch die Eigennutzung Problemstellungen zu erkennen.
News
Wirklich bahnbrechende News, die jeden Bewohner dieses Planeten interessieren werden, wird es wohl zum Thema UDS auf UIO3 so schnell nicht geben.
Informationen aus dem Umfeld unserer Kollegen, Förderer, Partner oder auch Kunden unserer Partner veröffentlichen wir zuweilen aber durchaus, wenn wir einen Bezug zum Thema UDS sehen.
AVIORIS relaunched
Webseite der AVIORIS jetzt mit UDS
2024: Die Webseite der Avioris GmbH Wirtschaftsprüfungsgesellschaft wurde basierend auf dem UDS Uniform Design System geplant und mit der Standardversion der PHP-Version des UDS Servers online gestellt.
Articles
Wenn Menschen mit UDS ein System für Menschen, Code und KI planen und erhalten, gibt es immer irgendetwas, worüber man diskutieren könnte.
Nicht alles, was wir intern oder in Projekten auch mit Kunden und Nutzen abstimmen, erhält eine Freigabe für eine Veröffentlichung eines Artikels. In anonymisierter Fassung möchten wir aber über das eine oder andere doch in einem Artikel informieren.
Mehrsprachigkeit:
Redaktion in Chinesisch
UDS ermöglicht ein Redaktion chinesischer Inhalte wie auch die Inhalte anderer Sprachen. Grund hierfür ist der XML- und UTF Unicode Standard.
Die Übernahme chinesischer Inhalte in UDS ist denkbar einfach: Man kopiert schlichtweg den vom Übersetzer und/oder chinesisch sprechenden und schreibenden Mitarbeiter. Zeilenbrüche und auch auch doppelte Leerzeichen werden hierbei als Whitespace-Character auf jeweils 1 Leerzeichen reduziert, dass mögliche doppelte Leerzeichen und selbst auch mehrere Zeilenumbrüche vom System korrigiert werden.
UDS 不仅可以编辑中文内容,还可以编辑其他语言的内容。其原因在于 XML 和 UTF Unicode 标准。
<ce:Paragraph-02>
UDS 不仅可以编辑中文内容,还可以编辑其他语言的内容。
其原因在于 XML 和 UTF Unicode 标准。
</ce:Paragraph-02>
Um die zugehörigen Schriften in der IDE allerdings sehen zu können, ist es erforderlich, dass man mindestens einen Schrifttyp für Chinesisch installiert hat.
Layouting
Weitere Layout-Varianten in UDS
Weil immer wieder die Frage gestellt wurde, wie man in UDS eigentlich als Redakteur ohne ein visuelles, formular basiertes Backend nun Layouts definieren können, um beispielsweise 2-, 3- oder 4-spaltigen Text schreiben zu können: Das Prinzip ist denkbar einfach.
Layouts in UDS basieren in Anlehnung an HTML auf einem Container welcher jeweils Zeilen im Layout als Row-Elemente kapselt. Eine Spalte ist hierbei ein Col-Element. Damit der Renderer weiß, welche Template ausgeführt werden soll, gibt es für das Layout das Attribut layout-variant an.
Es gibt zwar auch andere Format-Keys, aber für die am häufigsten benötigten Layouts ist das Verfahren einfach: text-text-text-text ist ein 4-spaltiges Layout, text-text-text hat eben drei Spalten. Will man drei Spalten mit 1/3 und 2/3 Breite bezogen auf den übergeordneten Container nutzt man text-widetext. Ein Vierspalter, bei dem die ersten zwei Spalten aber zu einer breiten Spalte zusammengefasst werden soll, wird damit zum drei Spalter vom Typ widetext-text-text.
<CEContainer layout-variant="text-widetext">
<CERow>
<CECol>
<!-- Hier schmale Spalte -->
</CECol>
<CECol>
<!-- Hier breite Spalte -->
</CECol>
</CERow>
</CEContainer>
Übrigens: Es gibt auch alternative Bezeichner für Layouts, darunter z. B. 6-col-1-1-1-1-1-1 für ein Layout mit einem Raster für 6 Spalten bei welchem jede Spalte die Breite einer Spalte hat.
Blog
Neue HTTP GET Parameter für Filter? Neue XSL Templates? Weitere Parameter für die Config von Content Elements? Immer, wenn sich etwas ändert, was für unsere Entwickler oder Redakteure von Bedeutung ist, entsteht ein Blog-Eintrag.
Nicht alles ist wirklich wichtig, aber mit diesem Blog behalten diejenigen, die ab und zu mal reinschauen, den Überblick, was sich tut.
HINWEIS: Unser Blog wird derzeit noch wie andere redaktionelle Inhalte als WebPage Element und damit quasi mit Einzelseiten gepflegt. Eigentlich wurden die Prototypen für BlogPosting Instanzen als neuem Typ redaktioneller Inhalte längst programmiert, aber das LinkedData Schema hat inzwischen zusätzlich zu WebPage, BlogPosting und WebPageElement inzwischen auch noch die Typen WebPageSeries sowie WebPageContent geschaffen.
Wir evaluieren dahingehend vor redaktionellen Umbaumaßnahmen unseres Blocks zuerst einmal die tatsächliche Bedeutung dieser neuen semantischen Datentypen, bevor wir dieses als Stereotypes in UDS übernehmen.
Unser Blog
Für das Schreiben und Veröffentlichen von Blog-Eintragen innerhalb von UDS haben wir bereits einen funktionierenden Prototyp programmiert. Die Gestaltung ist sicherlich noch verbesserfähig. Die Stadt Rom wurde aber bekanntlich auch nicht an einem Tag gebaut.
Hinweis: Unser Entwicklerblog wird zur Zeit überarbeitet. Er befindet sich noch auf der anderen Website und muss noch für diese Domain aktiviert werden.
DevBlog/Changelog Snap-Shot
Die nachfolgende Liste zeigt eine Kopie der Kapitelüberschriften der Blog-Einträge an. Diese Liste ist veraltet und dient nur zur Orientierung bis zu dem Zeitpunkt, wo das System diese Liste automatisch zur Zeitzeit rendern und hier einfügen kann.
....
1.5.2.75 Dropdown-Menüs am rechten Rand
1.5.2.74 CEContainer 6-Spalter
1.5.2.73 ce:BoxAbsolute
1.5.2.72 ce:BoxRelative
1.5.2.71 ce:SocialMediaPostingList
1.5.2.70 Empfehlungen für Korrekturen an URIs
1.5.2.69 ScareQuotes (new)
1.5.2.68 Minor Changes
1.5.2.67 Parameter für CE Referenzen
1.5.2.66 FootNote (Update)
1.5.2.65 FootNote (Update)
1.5.2.64 Protocol in Templates
1.5.2.63 .htaccess Changes
1.5.2.62 Routing Weiterleitungen
1.5.2.61 Routing forward-uri
1.5.2.60 SocialMediaPosting
1.5.2.59 offers-Eigenschaft
1.5.2.57 Suchformular
1.5.2.56 FormSignupSigninReset
1.5.2.55 ImageFluid
1.5.2.54 BookingForm
1.5.2.53 sitemap.xml
1.5.2.52 context_root_URI
1.5.2.51 InlineLink_PageAnchorLinks (Neu)
1.5.2.50 InlineLink (Update)
1.5.2.49 Mehrsprachige Texte
1.5.2.48 Splitting RouteDefinition
1.5.2.47 Routing (Update)
1.5.2.46 Keyboard(s) (Preview)
1.5.2.45 KeyboardKey
1.5.2.44 LinkedData id's
1.5.2.43 Context Root und Relative URI
1.5.2.42 InlineLink mit Target
1.5.2.41 LinkedData
1.5.2.40 SuperHeader mit Logo
1.5.2.39 Timeline Component (Concept)
1.5.2.38 Datum, Zeit, Zeitdauer
1.5.2.37 Fachbegriffe auszeichen
1.5.2.36 Headlines
1.5.2.35 SocialMedia Links
1.5.2.34 LinkedData
1.5.2.33 Globaler Graph
1.5.2.32 LinkedData
1.5.2.31 TeaserGroup
1.5.2.30 WeekCalender
1.5.2.29 Text kürzen HTML
1.5.2.28 BreadcrumbList HTML
1.5.2.27 Optionaler Umbruch
1.5.2.26 Drop-Down-Menüs (L2)
1.5.2.25 Links im Kopfmenü (L2)
1.5.2.24 InlineLink + Icon
1.5.2.23 GlobalCounter (Konzept)
1.5.2.22 BreadcrumbList
1.5.2.21 ItemList mit ColumnLayout (Konzept)
1.5.2.20 Mehrsprachigkeit mit 斯新媒体 (Alpha)
1.5.2.19 InlineLink auch ohne Icon
1.5.2.18 ce:SuperHeader
1.5.2.17 ce:Map Data Architecture
1.5.2.16 ce:InlineLink mit XML-Variablen
1.5.2.15 Fußnoten mit FootNote und -CollectionModule
1.5.2.14 Animationen als Stilelement (Preview)
1.5.2.13 Canonical und Alternative URI Links
1.5.2.12 ViewActionButton mit XML Gettern
1.5.2.11 ce:fn-get* XML Getter
1.5.2.10 Automatische Bildbearbeitung
1.5.2.9 PageAnchor und PageAnchorLinks
1.5.2.8 Modale Dialoge
1.5.2.7 ContentElementReference
1.5.2.6 ce:OrderedList
1.5.2.5 ce:UnorderedList
1.5.2.4 Box
T146 Schließen-Icon für Modal
T147 Punkte im URI-Segment
T148 Bookmark Icons
T149 TextShortener
T150 SoftwareSourceCode
T151 LinkedData WebPage
T152 WeekCalender
T153 LinkedData BreadcrumbList (Bug, small)
T154 Box+ImageObject Highlight
T155 Verfügbarkeit
T156 Globaler Graph
T157 Globaler Graph
T158 Datum und Zeit
T159 ImprintCopyrightMadeByBlock
T160 dateChanged für WebPages
T161 Google SiteMap
T162 robots.txt (Bug, teilweise gelöst)
T163 Home-Link
T164 HeaderNavigationCluster
T165 GSearchCon LDJSON id
T166 GSearchCon 5xx Fehler
T167 GSearchCon Duplikat/nicht indiziert
T168 GSearchCon Gecrawled - Nicht indiziert
T169 GSearchCon /de Seiten
T170 GSearchCon Duplikat und Ignorieren der kanonischen Seite
T171 isPartof verweist auf selbe Seite
T172 LinkedData Realms URI
T173 SETTINGS_CANONICAL_DOMAIN umbenennen
T174 WebRessources und URL Templates
T175 Zugriffsrechte an WebPages binden
T176 API/Suchfunktion
T177 Konfiguration auf XML umstellen
T178 WebPage-Cache
T179 Zugriff der Such-API auf WebPage-Cache
T180 offers fehlen
T181 PageAnchor mit Link zum Menü
T182 PageAnchor mit Bookmark-Icon
T183 Correct-URI-Wrong-Domain-Bug
T184 Comment Element (Bug)
T185 Emails und ContactForm
T186 ScrollToTopMarker
T187 "Axis" Navigation
T188 Breadcrumb ListItem erfordert name-Wert
T189 Barrierefreiheit
T190 Zeichenumbruch in Begriffen wie C++
T191 ViewActionButton erfordert target
T192 FootNote in ce:VTabsPanelGroup :: ce:panel nicht adressierbar
T193 Default-404-Seiten in User-Realms
T195 SystemCrawler
T196 Remove _DEPRECATED Folders
T197 Favicon in User-Realms
T198 Codehints für XML
T199 Dropdown-Menüs am rechten Rand
T200 Autoerkennung von Switcher- und ClusterMenu
T201 CSS Compression::Comments
T202 PostProcessing::StyleBlocks
T203 Events für Menü-Interaktionen
T204 Handler und Prüfung von Objektpositionen
T205 Konstante für Fehlerausgabe zur Laufzeit
T206 PageHeader Default
T207 Text-Elements und apply-templates
T208 ContentReference für Properties
T209 XSL Catching Missing XML File Errors
T210 XSL Missing XML Navigation
T211 ImageBlock::ImageBoxCaption
T212 WebPageHeader::styleLayers
T213 ImageObject::PlaceHolder
T214 ce:ViewActionButton aktualisieren!
T215 HTTP GET Params for WebPages
Meetings
Über unsere internen Treffen informieren wir nur über interne Verteiler. Ausnahmen sind Workshops und Seminare. Über diese informieren wir in dieser Rubrik.
Termine
Workshops: Auf Anfrage.
Gesprächsbedarf?
Sonstige Fragen: Manchmal ist es sicherlich sinnvoll, mal mit einem Menschen zu sprechen, der sich mit UDS auskennt. Wann auch die KI Fragen zu UDS beantworten kann, können wir aktuell nicht sagen. Wir gehen davon aus, dass die KI bis Ende 2025 die Syntax von UDS begriffen haben wird.
Nehmen Sie bei Interesse mit uns Kontakt auf.
Designing
Planen, Entwerfen und Programmieren von UDS Components und UDS Extensions.
Keywords:
uds-designing
uds-development
uds-templates
uds-themes
uds-skins
uds-guideline
Designing
Die Konzeption und Gestaltung von UDS Komponenten unterliegt einer Vielzahl von Regeln wie es eben in Design Systemen so üblich ist. Design Systeme schaffen Ordnung, benennen Kriterien auf deren Grundlage Sie eher wissen können, ob Sie noch innerhalb des Systems arbeiten oder ob Sie die Regeln bereits verletzt haben.
Die gestalterische Planung sowie die Umsetzung von UDS Komponenten befindet sich im Umbruch; das ist aber genau genommen nicht wirklich neu, denn das gilt faktisch eigentlich für alle Softwarelösungen, Design-Systeme oder auch UI Bibliotheken.
Einige Teile von UDS sind mehr als 10 Jahre alt, dh. wir migrieren schrittweise noch immer in jQuery programmierte Bestandteile auf neuere JavaScript Standards.
Unser Schwerpunkt in Planung und Realisierung orientiert sich letztendlich an der Priorität. Diese wird nun wiederum nicht nur durch den Bedarf bestimmt sondern auch durch die Verfügbarkeit von Zeit begrenzt und den Sponsoren und/oder Kunden angepasst, für welche das System verwendet wird. Auch das ist, wenn wir mal ehrlich sind, nicht wirklich neu.
Hinweis für Kunden: Sie selbst müssten das Design von UDS Komponenten im Detail erst dann verstehen wenn Sie ernsthaft Änderungen oder Erweiterungen planen möchten.
Da Sie üblicherweise in diesem Fall mit einem Dienstleister / Anbieter sprechen, der UDS einsetzt, können Sie davon ausgehen, dass dieser Sie beraten kann.
Designing
Das Designkonzept, wenn wir uns nun mal auf die visuelle Darstellung und damit die Ansicht von mit UDS formulieren und gerenderten Dokumenten beziehen, basiert teilweise auf unserem eigenen Design System für UI Komponenten, zum anderen Teil aber auf Bootstrap.
Bootstrap
Vereinfacht formuliert basierend die meisten Layout-Komponenten derzeit noch auf Bootstrap. Dieses betrifft sowohl das Layout, die Funktionalität, Interaktion oder auch Teile der visuellen Gestaltung wenn es um Randabstände, Schatten, Linien geht.
Für die Formulierung und das Rendering redaktioneller Inhalte hingegen basieren inzwischen 50% oder mehr der Komponenten auf UDS, dh. wenn es um Text-Formatierung, Typographie oder auch die Bezeichnungen geht, werden UDS-Bezeichnungen und nicht mehr Bootstrap verwendet.
Templates
Etwa 95% aller Templates für UDS werden derzeit als XSL-Templates, einem W3C Standard wie HTML, CSS, XML oder auch SVG, programmiert.
Eine Migration von Templates von XSL zu JavaScript für serverseitiges Rendering und Processing ist in Planung. Nun wird allerdings XSL durch PHP, JAVA, C# und inzwischen über npm auch für NodeJS unterstützt, so dass wir in diesen Sprachen schlichtweg ein Objekt einer XSLProcessor-Klasse instanzieren müssen und die Templates damit funktionieren.
Themes
Ursprünglich haben wir den Begriff Theme ähnlich wie in WordPress verwendet, weil er in diesem Kontext bei den meisten Entwicklern, Partnern und Nutzern am ehesten verstanden wird.
Wir haben mit der Zeit aber erkannt, dass das Prinzip von WordPress-Themes eine konsequente Trennung zwischen Daten, Funktionalität und Design zuweilen vermissen lässt, weil viele WP Themes im Grunde genommen soviel Quellcode für Funktionalität mitbringen, dass ein Wechsel eines Themes in WordPress dazu führen kann, dass weite Teile einer Webseite oder Bestandteile hiervon nicht mehr funktionieren.
Der Begriff Theme bezieht sich im UDS Uniform Design System im Schwerpunkt auf die Darstellung von Layouts und Komponenten, die der Navigation dienen.
Skins, Textures
Als Skin bezeichnen wir im UDS die Anpassung von Farben oder auch der Typographie und andere Details, welche zwar die Nuancen verändern, nicht aber das grundlegende Layout-Prinzip und darüber hinaus auch nicht die Größenverhältnisse und Proportionen.
Bislang ist es so, dass ein Skin nur Werte für Parameter verändern kann, welche als Parameter bereits über ein Theme definiert wurden.
Shader
Wir sind mit dem Begriff „Skin“ nicht so wirklich glücklich, denn der Begriff ist durch Diskussionen zum Thema Rassismus faktisch verbrannt.
In Anlehnung an WebGL/3D-Grafik-Rendering und Grafik-Programmierung orientieren wir uns eher am den Prinzip von Shadern: Ein Shader ist letztendlich ein Programm dem man Punkte, Linien oder Flächen von Objekten mitteilt und welche dann basierend auf der Logik und den Skripts des Shaders diese Elemente farblich verändert oder um zusätzliche Elemente aus gestalterischen Gründen erweitern.
Varianten und Variationen
Einige Komponenten ermöglichen Variationen von Layout, Abfolge von Farben und dergleichen. Manches ist hierbei manuell redaktionell anzugeben, anderes erfolgt basierend auf Parametern automatisch Und wieder andere Varianten werden über PostProcessing über User-Templates gerechnet.
Ein typisches Beispiel hierfür ist die Veränderung des Hintergrundfarbe von Sektionen: Die Fläche ist zwar eigentlich auf einen bestimmten Grauwert gesetzt worden, aber über die Variation variiert dieser dann dennoch um ein paar Prozent.
Varianten und Variationen dienen dazu, dass in einer Sequenz aufeinander folgende Elemente nicht zwingend exakt gleich aussehen. Ein Baum hat zwar im Prinzip grüne Blätter, aber jeder weiß, dass wir als Betrachter einen künstlichen Baum daran erkennen, dass alle Blätter exakt die selbe Farbe haben.
Der Grad an Variation und auch die Anzahl von Varianten ist ein gestalterischer Aspekt, hat also mit redaktionellen Inhalten und eigentlich auch Entscheidungen eines Redakteurs im Detail wenig zu tun.
Wenn also bestimmte Abfolgen von Komponenten einem Pattern entsprechend immer leicht variiert werden, so wird das entweder automatisiert durch Skripte ermöglicht oder aber Redakteure werden zuvor darauf trainiert, das Designkonzept einzuhalten und durchzusetzen, wenn man im Design einmal die Entscheidung getroffen hat.
Development
Der grundlegende Trend für UDS besteht darin, dass wir stetig Bootstrap Code aus dem Projekt entfernen.
Erste Versionen von UDS wurden im Grunde genommen, wenn auch mit anderen Bezeichnungen, zwischen 2001 und 2004 entwickelt und haben über die Jahre, als man einst noch 640x480px als Bildschirmauflösung hatte, zig Änderungen überlebt.
Uns sind kurzfristige Erfolge oder auch das schnelle Erreichen von fertigen Features nicht so wichtig. Wir suchen keine perfekte Lösung, weder für uns noch für unsere Partner, die mit UDS arbeiten. Maßgebend ist primär, dass das System funktioniert.
Das UDS Uniform Design System verbindet letztendlich semantisch kodierte Informationen und damit Daten mit deren Darstellung sowie aber über hinaus auch einer Funktionalität, die einen gewissen Nutzen mit sich bringt: information, visual, task.
Konnte man noch bis 2004 Layouts statisch planen, führten zuerst die immer größer werdenen Bildschirme mit immer besseren Auflösungen und schlussendlichd die Smartphones dazu, dass sich die Anforderungen und die Erwartungshaltung an die visuelle Darstellung verändert hatte. Dieses hatte immer auch Einfluss auf die technische Seite.
Unter dem Druck, dass als Webseite gerenderte Dokumente aber auch unter SEO-Aspekten in der jeweiligen zeitlichen Epoche in einem gewissen Umfang im Wettbewerb noch einen Nutzen haben oder auch tatsächlich zuweilen besser sind oder waren oder wie sein werden, greifen auch hier Aspekte bezogen auf Daten und Informationen auf der einen oder entsprechende technische Maßnahmen sowie aber auch redaktionelle Maßnahmen zusammen.
Im Schwerpunkt befassen wir uns in Bezug auf die technische Seite von UDS darauf, eine eine Trennung zwischen Daten, Darstellung und Processing zu ermöglichen. Ein besonderes Augenmerk legen wir darauf, dass sich die zu erwartenden Änderungen und technischen Risiken mit geringem Zeitaufwand beschränken lassen. Dieses führt durchaus dazu, dass wir viele Feature-Requests ablehnen, denn wenn wir nicht erkennen können, wer bei bestimmten Abhängigkeiten diesen Code in 3 Jahren noch wird pflegen können oder wollen, dann verzichten wir lieber auf ein Feature.
Wie auch sonst im Leben gibt es immer Ausnahmen: Alles, was der UDS Core nicht zu leisten vermag, dass lässt sich schlussendlich über PostProcessing mit User-Templates auf speziellen Wunsch dann doch in einem gewissen Umfang bewerkstelligen. Ein solches Feature ist damit aber kein Kernbestandteil von UDS.
Guidelines
Wir haben für UDS durchaus eine ganze Reihe an Guidelines. Viele dieser Guidelines beinhalten allerdings Skizzen und anderes mehr. Nun geht es allerdings faktisch immer auch um Geld, Knowhow und Wettbewerb.
Es versteht sich von selbst, dass wir durchaus transparent darüber informieren, was wir machen und was verfügbar ist.
Wenn es aber um Guidelines und damit die Beratung geht, wie Komponenten zu planen, zu entwickeln, zu erweitern, zu versionieren sind oder wie man grundsätzlich auch an Layouts oder über Web hinaus auch an Print, Video, Icons oder Piktogramme herangeht, sollten Sie eines wissen:
Den wirklichen Feinschliff bekommen mit UDS realisierte Medien in Web, Print etc. schlussendlich durch ein sogenanntes Customizing für den jeweiligen Auftraggeber.
Dieses bedeutet im Umkehrschluss, dass Guidelines, die sich auf gestalterische Fragestellungen, SEO oder aber auch Performance beziehen, letztendlich in Abstimmung mit Auftraggebern und/oder unseren Freelancern erörtert wird.
Developing
Die technische Seite
Planung, Realisierung und Erhalt von Components, Templates, Themes, Skins
Overview
In dieser Rubrik gefassen wir uns mit der Planung und Konzeption (engl. Design) von UDS Komponenten.
Die zugehörigen Inhalte sind noch im alten Format und müssen vor dem Relaunch noch in das neue Datenformat übertragen werden.
Development
In dieser Rubrik befassen wir uns mit der technischen Seite der Programmierung von UDS Components und zugehörigen Standards.
Diese Rubrik ist derzeit nur für Mitglieder und Partner einsehbar. UDS basiert zwar auf Open-Source-Technologien. Die zugehörige Planung der Software für Server, Clients, Apps und dergleichen ist allerdings nicht Open-Source.
Themes und Skins: Die zugehörige Planung und Programmierung von Design-Templates sowie die Konfiguration von Skins basiert derzeit auf XSL, einem W3C Standard wie HTML, XML, CSS auch. Wir prüfen aber bereits Varianten, wie wir diese Templates von XSL- auf JS-Programmierung (JavaScript) umstellen können.
Hinweis für Kunden und Nutzer: Auch wir prüfen die Umstellung von UDS Servern und Clients auf Cloud Technologien.
Templates
Bei Templates handelt es sich um Programmcode und damit Logik, welche dazu dient, objektorientierte, zumeist in XML serialisierte vernetzte Datenstrukturen in Dokumenten auszuwerten und eine Ausgabe zu erzeugen, welche wiederum ein entsprechendes Dokument ist.
Der W3C Standard für das Rendering von XML-Daten zu HTML5 Ansichten für Web- und Print ist eigentlich einst ab ca. 2001 mal XSL gewesen bzw. die Technik wird noch immer hier und da eingesetzt eben weil es ein W3C Standard ist der für zig Programmiersprachen unterstützt wird.
Hinweis: Dieser Themenblock wird demnächst überarbeitet weil er sich mit Templates im Design-Bereich überschneidet. So basierend Templates nicht nur auf XSL sondern auch auf JavaScript, und zwar sowohl serverseitig als auch clientseitig.
Templates
Hinweis: Dieser Themenblock wird demnächst überarbeitet weil er sich z. T. mit Inhalten im Design-Bereich überschneidet.
Style-Switches und Skins
Hinweis: Dieser Themenblock wird demnächst überarbeitet weil er sich z. T. mit Inhalten im Design-Bereich überschneidet.
Guidelines
In dieser Rubrik befassen wir uns mit Empfehlungen und Informationen über Kriterien für Planungsverfahren und Entscheidungsprozesse.
Document Driven Design, Read-Eval-Print-Loop REPL, Mobile First Strategy, Object Oriented Design, Semantics.
UDS Server sind in der Konzeption eigentlich Konsolenprogramme, welche Sie aber nicht nur über die Konsole unter Windows und Linux sondern auch in Bezug auf HTTPS Requests nach Dokumenten über einen Browser nutzen können.
UDS Dokumente können einzelne WebPage Instanzen, komplette WebSite(s), ganze Cluster von WebSites oder auch nur einzelne Textabschnitte speichern, die man als Content Referenz verlinken kann.
UDS basiert auf Files. Dieses dient der einfachen Übertragbarkeit. Das XML Format dient darüber hinaus dazu, Transparenz zu schaffen, was in diesen Files steht. Auch Menschen können und sollen hier in diese Files schauen können.
Installation
Installation von UDS
Keywords: installation, data-folder [ data-assets-folder data-public-folder, server-folder, server-Realm-folder, temp-Folder ]
Overview
Die Installation von UDS beinhaltet mehrere Schritte und variiert schlussendlich auch mit dem zugehörigen Container einer UDS Anwendung.
UDS data
Der data-Folder beinhaltet das Datenmodell welches eine UDS Installation verwaltet. Es werden hierbei mitunter clientseitige öffentliche Daten verwaltet wie auch serverseitige Daten, welche für eine Ansicht im Web oder als Print/PDF-File zuerst über UDS gerendert werden müssen.
assets
assets
Der assets-Folder dient dazu, Realm-übergreifend bestimmte Daten als Files anzubieten.
Ein Beispiel hierfür ist der YearCalender_PublicHolidays.xml File mit Terminen für Feiertage des aktuellen Jahres.
Hinweis: Mit Einführung einer File Abstraction Layer FAL wird das Verfahren dahingehend geändert werden, dass die Daten für Files in XML erfasst und verwaltet werden, um die zugehörige Datei an anderen Stellen speichern zu können.
public/img
server/Realm
Um Bilddateien im jpg-, png-, gif- oder auch svg-Format adressieren zu können, ist ein Teil der Daten des Datenmodells öffentlich.
Für die meisten Realms werden dahingehend entsprechender Subfolder im public Bereich geschaffen, um auf diesem Wege einen einfachen und schnell verständlichen Ansatz zu haben, wie und wo man Bilder speichern und für für eine Nutzung in Webseiten schlussendlich auch adressieren kann.
Hinweis: Mit Einführung einer File Abstraction Layer FAL wird das Verfahren dahingehend geändert werden, dass die Daten für Files in XML erfasst und verwaltet werden, um die zugehörige Datei an anderen Stellen speichern zu können.
server/Realm
server/Realm
Bei Realms handelt es sich vereinfacht um Gruppierungen von Daten welcher der Kontrolle eines bestimmten Besitzers bzw. einer Gruppe unterliegen.
Jede Nutzergruppe verwaltet also die eigenen Daten für Webseiten als mitunter WebSite- und WebPage-Components und dergleichen in deren jeweiligen Realm.
@see Mehr Informationen zu Realms ist über UDS Components zu erfahren.
temp
temp
Der temp-Folder beinhaltet temporäre Daten welche im Programmverlauf erzeugt und später auch wieder gelöscht werden können.
Basierend auf den zur Laufzeit erzeugten
temporären Files ist es möglich, dass im
Processing von Files bezogen auf das
aktuellen Requests eines Clients/Users
Zusatzinformationen innerhalb von
<ce:TmpContent>..</ce:TmpContent>
Elementen erzeugt wird.
UDS Grundstruktur
cache
cache
Der cache-Folder ist ein Zwischenspeicher für bereits verarbeitete und damit oftmals auch komprimierte Daten. Wenn bestimmte Daten von Clients angefragt werden sowie wird vor einer erneuten Berechnung einer Ausgabe zuvor geprüft, ob diese Daten in der benötigten Version möglicherweise schon im Cache liegen.
Der cache-Folder dient bislang primär für das Rendern, die Verkleinerung und Komprimierung von Bildateien, um diese vom Originalformat mit zuweilen 5MB auf 50 bis 150kB reduzieren zu können.
Hinweis: Der Inhalt des Cache-Folders kann jederzeit gelöscht werden. Die Daten werden bei Bedarf durch UDS bei Requests wieder angelegt.
client
client
Der client-Folder beinhaltet Files von UDS Clients. Hierzu zählen mitunter CSS-, JS- und SVG-Files im Zusammenhang mit UDS Komponenten oder auch anderen genutzten Frameworks.
Die Bezeichnung 'client' hat historische Gründe weil diese Ordner für das sogenannte Webdesign von Kunden von Webagenturen, also deren "clients", gedacht war.
Hinweis: Der Inhalt des client-Folders ist Teil der UDS Software und sollte eigentlich KEINE Daten von Nutzern beinhalten.
Components
UDS basiert im Kern auf Komponenten
Overview
In dieser Rubrik finden Sie eine Auflistung und Doku aller UDS Components: Von Realm, WebSite, WebPage über WebPageHeader, WebPageMain, WebPageFooter, HeaderCarousel zu BlockQuote, Breadcrumb, Box, Heading-, Paragraph- und Link-Components und vieles andere mehr.
Die Kategorisierung von Komponenten orientiert sich anhand verschiedender Kriterien. Dieses führt dazu, dass manche Komponenten mehreren Kriterien zugeordnet werden könnten.
Content Elements
Die für die Redaktion am häufigsten genutzten Components sind Content Element Components, kurz CE für Content Elements. Components können aber auch andere Zwecke haben. So gibt es beispielsweise eine Component die schlichtweg dazu dient, alle Sprungmarken-Deklarationen auf einer WebPage zu finden, um auf deren Grundlage ein Menü zu erzeugen.
Struktur
Einzelseiten
-
mehr?
Bilder, Abbildungen
Überschriften
Absatzformate
User Interaction CEs
Bei User Interaction CEs handelt es sich um Content Elements mit welchen der Anwender vereinfacht interaktiv irgendetwas tun kann. Vereinfacht ausgedrückt handelt es sich um diejenigen CEs wo der Nutzer nicht einfach nur Text liest und scrollt sondern etwas klicken oder auch bewirken kann.
Core Components
Bei Core Components handelt es sich um CEs welche für die Formulierung von Dokumenten mit Daten und deren Zusammenhängen zwingend erforderlich sind. Zu den Kernkomponenten zählen neben den eigentlichen WebPage CEs zuerst einmal die WebSite als Gruppierungselement zur Formulierung von WebSite-Clustern.
Examples & Pattern
Beispiele und typische Entwurfsmuster
UDS Examples
Overview
Beispiele, Tipps und Tricks, Entwurfsmuster: Für diejenigen, die einen Einstieg in die Redaktion mit UDS suchen oder zumindest den Kunden unserer UDS Partner eine Orientierung zu geben, wie diese mit UDS als Uniform Design System arbeiten, ist diese Rubrik gedacht.
Prototypes
Prototypen sind neue Komponenten in der Planung oder neue Versionen von bestehenden Components.
Die Liste der in Planung befindlichen Components ist den UDS Tasks zu entnehmen. Diese Inhalte befinden sich aber noch auf der bisherigen Webseite.
ce:Accordeon
Problemstellung
Gesucht war ein neue interaktive Layout-Componente mit welcher sich Elemente über eine Schaltfläche sowohl auf- als auch wieder zuklappen lassen.
Eine solche Component bezeichnet man mitunter bei Bootstrap als 'Accordeon'. Gewünscht war aber eine von Bootstrap unabhängige Realisierung.
Wie Sie sehen können, funktioniert der Prototyp bereits. Die Optimierung des Layouts und der Gestaltung folgt später.
Bridge/External Links
Problemstellung
Im Zuge des immer stärkeren Einfluss des Datenschutzes besteht inzwischen der Wunsch, dass für jeden Link, der auf eine externe Seite führt, diesen noch innerhalb der aktuellen Website auf eine Zwischenseite als "Bridge" weiterleiten, damit der Nutzer dort explizit bestätigen muss, dass die verlinkte Seite kein Teil der derzeit aufgerufen Webseite ist.
Die Diskussion über den Sinn und Zweck ist müßig. Sie müssen die entstehende Components ja nicht einsetzen und können auch weiterhin normale ce:InlineLink Elemente und ce:Button CEs nutzen.
Chinese Tones
Problemstellung
Für die korrekte Umschrift der chinesischen Sprache in lateinische Schrift (Pinyin) gibt es eine Vielzahl von Regeln. Wer diese Regeln einmal gelernt hat, weiß auch als Deutscher, wie man chinesische Begriffe einigermaßen korrekt ausspricht.
Das primär zu lösende Problem besteht darin, dass für die korrekte Darstellung von "Tones" in Pinyin Sonderzeichen erforderlich sind, von denen nur einige wenige wie à, á und dergleichen mit Akzenten auf einer deutschen Tastatur geschrieben werden können. Da solche Akzente aber auch für das Zeichen "ü" erforderlich sind, erweitern wir UDS um weitere Character-Components mit Typehints, damit der Redakteur diese Zeichen auch bei XML Code auswählen kann.
Wir haben in PHP ein Programm geschrieben, welches für die diversen Permutationen von Konsonanten und Vokal eine Tabelle mit der jeweiligen Schreibweise und Aussprache auflistet.
Beispiel: Mit "Y" beginnende chinesische Worte wie 'Yuan' heißen nicht "Ju-en" oder "Jü-än" sondern "Üan". "Y" vor "u" bedeutet nur, dass vor dem "u" kein Konsonant steht. Da das "u" allerdings "ü" gesprochen wird, heißt es nicht "Uan" sondern "Üän".
Mehr zu Prototypen
Wie Prototypen getestet werden
Prototypen neuer Components entstehen zumeist aus dem Bedarf heraus wenn bestimmte Dinge redaktionell formuliert und dargestellt werden soll, es für diese aber bislang keine gute Lösung gibt.
In all diesen Fällen lässt sich noch immer mit ce:Raw Elementen arbeiten; diese erlauben die Eingabe von HTML- und JavaScript-Code.
Wird aber festgestellt, dass man das Feature doch häufiger benötigt, beginnen wir die Realisierung von Templates für Components zumeist mit ce:Raw Elementen in Verbindung mit ce:ContentReference Elementen, dh. wir legen redaktionell eine Rohfassung des gewünschten HTML/JS Codes an und verlinken diesen anschließend überall dort, wo wir das Feature benötigen.
Ist die Komponente tatsächlich programmiert worden, wird der ce:Raw Code durch die neue XML Component Notation ersetzt.
Tipps und Tricks
Die zugehörigen Inhalte müssen noch von der bisherigen Webseite umgezogen werden.
PageAnchor und ~Links
Problemstellung
UI Patterns
Pattern sind Entwurfsmuster. Und UI Pattern sind Entwurfsmuster für User Interfaces und den Aspekt des User Interaction Designs.
PageAnchor und ~Links
Problemstellung
Beispiel für Sprungmarken im Text, für die auch ein Menüeintrag erzeugt wird.
Lösung
<ce:PageAnchorLinks></ce:PageAnchorLinks>
...
<ce:PageAnchor addToPageAnchorLinks="1" anchorID="news">
News
</ce:PageAnchor>
<ce:FluidHeading-06>News</ce:FluidHeading-06>
<ce:FixedHeading-04>
Aktuelle Informationen zu UDS für Interessierte
</ce:FixedHeading-04>
Sie können in Anlehnung an A-Tags in HTML jederzeit im redaktionellen Inhalt Sprungmarken als ce:PageAnchor Elemente anlegen.
Wenn der addToPageAnchorLinks="1" Parameter auf 1 gesetzt ist, wird zusätzlich im PageAnchorLinks Menu ein Link mit der zugehörigen Label gesetzt.
Damit der Nutzer nach dem Sprung aus dem Menü auch die Überschrift noch lesen kann, muss das ce:PageAnchor Content Element vor der eigentlichen Überschrift stehen.
An der Position des ce:PageAnchorLinks Elements erscheint später das Menü. Es ist dahingehend möglich, redaktionell das Menü innerhalb der aktuellen Seite mehrfach zu plazieren, wenn eine Seite sehr viele Sections hat.
Diese Rubrik muss noch von der vormaligen Webseite umgezogen.
Contact
Für eine Kontaktaufnahme zum Thema von UDS nutzen Sie bitte derzeit die Formulare zum Kontakt von UIO3.
Hilfe
Hilfe, FAQ und Services
Overview
Manchmal ist es sicherlich sinnvoll, mal mit einem Menschen zu sprechen, der sich mit UDS auskennt. Wann auch die KI Fragen zu UDS beantworten kann, können wir aktuell nicht sagen. Wir gehen davon aus, dass die KI bis Ende 2025 die Syntax von UDS begriffen haben wird.
Noch Fragen? Hilfe benötigt? Dienstleister gesucht? Kontakt aufnehmen?
Hilfe/Help
Haben Sie schon einen Kundenzugang?
Services
Wir haben UDS aus Eigeninitiative geschaffen, und zwar schlichtweg deshalb, weil uns genau so ein System und Verfahren gefehlt hat.
Software wie auch Strategien entstehen nicht im luftleeren Raum: So etwas kostet Zeit, Nerven und mitunter auch Geld. Menschen sind, die so etwas erschaffen. Und es sind auch Menschen, die so etwas erhalten. Die KI ist zwar praktisch, aber ohne den Menschen macht die KI bislang (zum Glück) nichts.
Sie können für UDS Support bekommen, indem Sie sich an zugehörige Dienstleister wenden welche über zugehörige Lizenzen verfügen.
UDS Kontakt
Für eine Kontaktaufnahme zum Thema UDS wenden Sie sich entweder an den Support / Service oder aber nehmen über das Kontaktformular von UIO3 Kontakt auf.
Inhalte referenzieren? Es ist einfacher als Du denkst.
Verwende <ce:ContentInstance/> und <ce:ContentReference/> Elemente.