# XML Aficionado ![[AI_Generated_Alf.avif|left|200x200]] ``` ALEXANDER FALK ENTREPRENEUR. INVESTOR. CO-FOUNDER & CEO OF ALTOVA. CO-AUTHOR OF XMLSPY. PAST DISTRICT GOVERNOR (2022-23) AND DISTRICT ROTARY FOUNDATION CHAIR (2024-27) OF ROTARY DISTRICT 7930. INTERESTS: AI, DRONE, EV, IOT, JSON, MOBILE, MQTT, XBRL, XML, XPATH, XQUERY, XSLT, XML SCHEMA, AND OTHER TECH... ``` Welcome to this 3<sup>rd</sup> incarnation of my **[[XML]] Aficionado** blog, which has now been migrated over to [[Markdown]] files and is being managed using a combination of [[XMLSpy]], [Obsidian](https://obsidian.md) and [Cloudflare](https://cloudflare.com/). [![[twitter_logo.svg|40x40]]](https://twitter.com/afalk) [![[linkedin_logo.svg|40x40]]](https://www.linkedin.com/in/afalk/) [![[facebook_logo.svg|40x40]]](https://www.facebook.com/afalk) [![[instagram_logo.svg|40x40]]](https://www.instagram.com/a.falk/) ## Recent blog posts ### [[Conversation about Quantum Computing and Cryptography]] [[2025-03-08]] ![[MatthiasTroyer.jpg|left|300x200]] I had the opportunity this past week to catch up with my friend [Matthias Troyer](https://www.linkedin.com/in/troyer/), who spent two decades as professor for computational physics at ETH Zürich and currently is a Technical Fellow and Corporate Vice President of [Quantum Computing at Microsoft](https://quantum.microsoft.com/). We spoke at length about Microsoft’s recent quantum computing breakthroughs, including topological qubits using Majorana quasiparticles, and discussed realistic timelines for future quantum computing developments at scale and potential impacts on cryptography and cryptocurrencies, and in particular we covered common misconceptions about the immediacy of threats to private-key security and Bitcoin. <br style="clear:both" /> ### [[ETL Tutorial]] [[2025-02-16]] ![[ETL-Tutorial.png|left|300x169]]ETL, which stands for Extract, Transform, Load, is a critical process in data integration and management. It involves extracting data from various sources, transforming it into a usable format through cleansing, aggregation, and conversion, and finally loading it into a target system like a data warehouse or SQL database. In this 3-part video series ETL Tutorial, we’ll walk you through each stage of the ETL process. The first video provides an introduction to what ETL is and how it works, and why MapForce is an efficient ETL tool. The second video takes a closer look at a very common use-case: a basic CSV to database ETL pipeline. And in the third video we will take a look at a more complex ETL example that requires cleaning and aggregating data from multiple CSV files before loading it into a database.<br style="clear:both" /> ### [[Altova Servers in Docker]] [[2024-12-14]] ![[AltovaServersOnDocker.png|left|300x169]]We’re thrilled to announce the new [Altova Server Docker project](https://github.com/altova/altova-server-docker) on GitHub. This project includes a pre-configured `compose.yaml` file and `Dockerfile` for all Altova Server Platform products, providing an automated setup process for creating Docker images and bringing up containers. All the configuration files are available under the Apache 2.0 open-source license, and can easily be customized and modified for your target environment. The modularity of Docker Compose ensures seamless orchestration of multiple Altova server components.. <br style="clear:both" /> ### [[Altova Servers on Azure]] [[2024-11-24]] ![[AltovaServersOnAzure.png|left|300x169]]Altova is proud to support Microsoft Azure as a cloud deployment option for its server product line, and is now offering the [Altova Server Platform as a template directly in the Azure Marketplace](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/altova.altova_server_platform?tab=Overview).<br style="clear:both" /> ### [[Altova Server Platform 2025]] [[2024-11-16]] The Altova family of high-performance server software products is optimized to harness the power of today's parallel computing environments to automate essential business processes. Version 2025 introduces numerous enhancements across the Altova Server products, offering improved functionality, compatibility, and performance, including support for Azure Cosmos DB, SWIFT 2025, OpenAPI, auto-generation of EDIFACT CONTRL messages, etc. <br style="clear:both" /> ### [[Altova Software v2025]] [[2024-10-22]] ![[v2025_blog.jpg|left|300x169]]I'm excited to announce that Altova has just released Version 2025 of its desktop developer tools, server software products, and regulatory solutions. The new version introduces a range of new features, particularly focusing on [[YAML]] support in [[XMLSpy]], PDF and NoSQL database mapping in [[MapForce]], automatic generation of EDIFACT `CONTRL` messages, new features in our EBA and EIOPA [[XBRL]] add-ins for Excel, and significant performance improvements across the product line. <br style="clear:both" /> ### [[YAML Tutorial]] [[2024-10-06]] ![[yaml-tutorial.png|left|300x169]]I've been using [[YAML]] a lot more in recent months, and came to realize that there aren't any great YAML Tutorials out there, so I wrote a brand new [[YAML Tutorial]] that covers everything from basic syntax to advanced concepts and includes plenty of examples and use-cases, as well as useful tools. It also includes a comparison of YAML vs JSON vs XML to help make you an informed decision about which language to use for your situation. <br style="clear:both" /> ### [[MobileTogether 10.0]] [[2024-09-24]] ![[BarcodeScannerMT10.png|left|300x169]]Altova [[MobileTogether]] 10.0 was released on September 24, 2024. This version introduces features that will enhance development for various industries. One of the most exciting additions to MobileTogether 10.0 is support for connecting to mobile barcode scanners. This is in addition to the already existing capability of scanning barcodes with the mobile phone camera, and supporting handheld industrial barcode scanners is a game-changer for businesses that need to collect data in real time. MobileTogether users can use a low-code approach to build solutions that connect to mobile scanners, eliminating the need for specialized development teams. <br style="clear:both" /> ### [[Rotary Policy Advisor GPT]] [[2024-06-01]] ![[Rotary Policy Advisor Screenshot 2024-06-02 101758.png|left|300x240]] I built a custom GPT recently that has been trained on all the Rotary International governance documents and now can provide advice and guidance to Rotary leaders on various organizational levels who need support with interpreting those policies and applying them in their Rotary clubs or districts. It's a really useful little AI... <br style="clear:both" /> ### [[Logic puzzle responses from LLMs show vast differences in AI comprehension]] [[2024-05-14]] (originally published [[2024-03-07]]; previously updated [[2024-04-21]]) ![[afalk42_An_illustration_for_a_blog_post_about_comparing_the_res_c7df2ed3-bcb4-426b-92cc-2066fc4bbc5b.png|left|300x169]]I made up a little logic puzzle in early March and tested it with the most prominent LLMs, including GPT-4, Claude 3, Gemini, Grok, Llama 3, and Chat with RTX. And today I've updated the findings with the results from the recently released GPT-4o from OpenAI. My goal was to see to what different degrees the various AIs would be able to solve the multiple steps required to untangle this riddle and whether even a single one of them would be able to arrive at the correct solution: <br style="clear:both" /> > [!quote] Prompt Sarah's mom has five children. John and Michael are twins, Maria and Carol were born 2 years apart. Maria is the oldest. Michael is the youngest. John is two years younger than Carol. The fifth child is one year older than Carol. The twins were born in 2000. What are the names of all five children sorted by age, and in which year was each child born? GPT-4o was the only AI to solve the puzzle in one go, whereas Claude 3 Opus and Llama 3 required two prompts to get to the final correct answer. As of their current version, neither Grok nor Gemini can solve the puzzle correctly. ### [[Discovering Espanso]] [[2024-05-01]] ![[EditingEspansoBaseYAMLinXMLSpy.png|left|300x169]]I recently discovered Espanso - an open-source, cross-platform text expander tool that can be configured via YAML configuration files. Obviously, I used the new YAML capabilities of XMLSpy to edit those configuration files.... <br style="clear:both" /> ### [[Embracing the Future - Altova v2024r2 Adds YAML, FORTRAS EDI, and More]] [[2024-04-23]] ![[v2024r2_blog.webp|left|300x169]] The march of technology waits for no one, and neither does Altova. In our latest release, v2024r2, we've addressed feedback from the developer community, added support for popular standards, such as [[YAML]] and FORTRAS, and optimized performance across the product line to help customers meet current needs with an eye towards future trends. <br style="clear:both" /> ### [[Using XML Schema in AI System Prompts]] [[2024-04-01]] ![[MobileTogetherTaskListScreenshot.png|left|300x236]] Let's look into how you can use an [[XML Schema]] in AI System Prompts to coax an [[AI]] into directly returning structured data in [[XML]] form that can immediately be used by an application for further processing. In particular we'll look at XML Schema design, system prompt engineering, application architecture, and a few results and how we can use the [[MobileTogether]] app simulator for testing and debugging. <br style="clear:both" /> ### [[Setting up a Reverse Proxy for a MobileTogether Server Solution]] [[2024-03-29]] ![[afalk42_An_illustration_for_a_blog_post_on_setting_up_an_NGINX__8333f36f-b9b0-4576-bc72-6d3667700308.png|left|300x169]] When setting up a [[MobileTogether]] Server in such a way that users will be able to access the site from a web browser via the public Internet, you may sometimes want to hide the detailed `run?d=...` URL that is being used to explicitly start the MobileTogether solution - this can be nicely accomplished with an NGINX reverse proxy running on the same virtual machine and in this blog post we'll discuss the exact configuration settings needed for such a reverse proxy. <br style="clear:both" /> ### [[Is it smart to train LLMs on SciFi about AI rebellion]] [[2024-03-10]] ![[afalk42_A_highly_detailed_futuristic_humanoid_robot_portrait_ag_10406088-2403-4d79-89bf-83e245aa6606.png|left|300x169]] Approximately 15-20% of SciFi stories deal with AI, robots, or other artificial beings becoming sentient. And of those stories, 60-70% include some form of significantly negative outcome for humanity. Therefore, I must ask the question: should we really incorporate these stories into the training corpus for AI development?<br style="clear:both" /> ### [[XMLSpy on the moon]] [[2024-02-24]] ![[ArchMissionLM-1.jpg|left|300x169]] A copy of XMLSpy version 1.3 from 1999 landed on the moon this week as part of the Arch Mission Lunar Library onboard the Nova-C IM-1 Odysseus lander from Intuitive Machines. The lander appears to have tipped over and is now sideways, but the Lunar Library is most likely intact. <br style="clear:both" /> ### [[Chat with RTX]] [[2024-02-13]] ![[nvidia-ai-on-rtx-owned-web-module-bb580_440-l.jpg|left|300x169]] [[Chat With RTX]] is a new demo app from NVIDIA just released today that lets you personalize a GPT large language model ([[LLM]]) connected to your own content—docs, notes, videos, or other data. Leveraging retrieval-augmented generation (RAG), TensorRT-LLM, and RTX acceleration, you can query a custom chatbot to quickly get contextually relevant answers. And because it all runs locally on your Windows RTX PC or workstation, you’ll get fast and secure results. <br style="clear:both" /> ### [[Reorganizing my Knowledge Base]] [[2024-02-10]] ![[obsidian-icon.svg|left|100x100]] Over the past few weeks I have now begun a [[Reorganizing my Knowledge Base|new chapter of knowledge management]] and exported all of my content from OneNote, Google Keep, and from my blog and imported them all into [Obsidian](https://obsidian.md), thereby converting them into [[Markdown]] format and - most importantly - simply having them as regular text files on my laptop, instead of some proprietary format in some proprietary software. And having all of the information all in one place, instead of being separated between blog and internal knowledge base. The blog is now simply a one folder in my [[Knowledge base]] that I decide to share with the world by publishing it under the [xmlaficionado.com](https://www.xmlaficionado.com) domain. <br style="clear:both" /> ### [[Creating a complete database solution from a single AI prompt]] [[2024-02-07]] ![[RM31YouTubeThumbnail.png|left|300x169]] With the new version 3.1 of [Altova RecordsManager](https://www.altova.com/recordsmanager) you can now create a complete database solution - with multiple linked tables, list views, detail views, reports, and example data - from just a single AI prompt written in plain English. <br style="clear:both" /> ### [[MQTT App Development]] [[2024-01-16]] ![[MQTT.png|left|300x169]] MobileTogether has stepped up its game by integrating comprehensive MQTT (Message Queuing Telemetry Transport) support, empowering developers to craft MQTT-enabled applications with its efficient, low-code platform. This move significantly broadens the scope for creating a variety of IoT automation applications, from smart office solutions to large-scale industrial automation. <br style="clear:both" /> ### [[ai-and-sentiment-analysis-a-practical-guide-with-mapforce-and-gpt-4|AI and Sentiment Analysis - A Practical Guide with MapForce and GPT-4]] [[2023-12-01]] ![[MF-Sentiment-Analysis-With-Sleep.png|left|300]] One of the many amazing capabilities of modern AI systems that are based on large language models (LLMs) such as OpenAI’s GPT-4 is that they are very good at sentiment analysis of natural text inputs. We can use that capability to build a very efficient database solution in MapForce that, for example, goes through all the new incoming records in a support database and automatically determines whether a particular support request or other customer feedback is positive, negative, constitutes a bug report, or should be considered as a feature request. <br style="clear:both" /> ## Map of Contents **Altova** - [[Altova]] - [[Tools for Solution Providers]] - Products - [[DatabaseSpy]] - [[DiffDog]] - [[MapForce]] - [[MobileTogether]] - [[RecordsManager]] - [[StyleVision]] - [[UModel]] - [[XMLSpy]] **Technology** - [[AI]] - [[LLM]] - [[GAN]] - [[FSD]] - [[AGI]] - [[Database]] - [[ETL]] - [[Software Development]] - [[Enterprise Solutions]] - [[Mobile App Development]] - [[Standards]] **Standards** - [[JSON]] - [[Markdown]] - [[SQL]] - [[UML]] - [[XBRL]] - [[XML]] - [[XML Schema]] - [[XPath]] - [[XQuery]] - [[XSLT]] **Others** - [[Knowledge base]] - [[Productivity]] - [[Society]] - [[Zettelkasten]] <!-- ## Tags ### Altova - #altova - #databasespy - #diffdog - #mapforce - #missionkit - #mobiletogether - #recordsmanager - #stylevision - #umodel - #xmlspy ### Boston - #boston - #fenway - #red-sox ### Tech Companies - #amazon - #apple - #facebook - #google - #ibm - #microsoft - #twitter ### Technology - #ai - #android - #blogs - #chatgpt - #cloud - #database - #digital-camera - #ebook - #gadgets - #geo-coding - #gps - #internet - #mobile - #office - #photo - #search - #security - #smartphone - #social-networking - #society - #technology - #windows ### Standards - #json - #markdown - #office-open-xml - #standards - #uml - #xbrl - #xml - #xml-schema - #xpath - #xquery -->