The World Wide Web was designed for sharing knowledge with both people and machines. This article explains how to use UML to capture and publish knowledge.

State of the art is to express knowledge in the language used by domain experts. This is subsequently turned into schemata for machines and, in a separate process, into text documents for people.

A typical business would define XSD and databases for machine processing on one hand and documents with text and figures that essentially describe the same things for people on the other hand. Obviously machine schemata and documents are likely to grow apart. This separation creates wasteful friction.

It’s actually easy to keep UML class models and documentation in lockstep.

But first, we identify three kinds of people we need to keep happy.

  1. domain experts are good at jargon and like sketches but generally aren’t IT savvy (let alone friends of ontology) 
  2. Knowledge modellers are good at UML and maybe ontology but lack domain knowledge 
  3. IT experts can read UML class models but lack domain knowledge and generally steer clear of ontologies considered too academic.

The information trinity

Below graphic shows the three experts and how their concerns can be united in a diagram.

The domain expert to the right will draw a sketch and “paint in words” what we’re looking at. In this case it’s about railway crossings. The information modeller at the bottom will cast the wording into a UML class model. The IT developer turns the UML into code. 

There’s nothing special to this diagram except the presence of illustrations and explanatory text. Because the UML and illustrations are kept close to each other, the model is easily reviewed by all three kinds of experts. Grouping UML with text and figures is much simpler than maintaining UML separate from documents.

Single Source of Truth

Keeping the UML in a diagram with sketches and text creates a single source of truth. No need to maintain separate UML and documentation. And if needed, the documentation can be a print out of the diagram with possibly a listing created by the EA tool.

UML models like the one of which this diagram is part, are easily published to the web.  

Another article explains how an AddOn to Enterprise Architect can produce RDF triples that match the model. The next step is to publish these triples to the web. Our aim is to create a website that acts as a landing page for URI’s. A user clicking on a URI should be lead to the webpage that provides context about the concept identified by the URI.

The EA AddOn enhances EA’s built-in HTML-publishing function by adding a landing page listing the triples.

 

Below screenshot shows the landing page with a list of triples.

The user can publish the generated HTML to his website such that the URI’s actually have a home. An URL such as http://ijzerweg.nl/ns/police#MilitaryPoliceOfficer will lead to the shown landing page. 

So by clicking a hyperlink, the user gets the context that’s originally defined in the model. 

This is substantially richer than plain triples or plain HTML. More important, the UML seamlessly fits the HTML. 

The user, whether domain expert, IT developer or modeller, doesn’t waste time switching between tools. 

 

Search the model

The “doorzoek de index” takes the user to a searchable index that lists the UML elements defined in the model.  Start typing in the Search box and a number of suggestions appear. The user can browse and look around the model.  

The search capability is another important enhancement with respect to the standard EA HTML publication. 

Interested in this Add-On for Enterprise Architect ? Feel free to contact bob at ijzerweg dot nl 

Leave a comment

Your email address will not be published. Required fields are marked *