Why is it important, to use unique Texts on Websites

A key aspect for search engine optimization are unique text, i.e. texts, which are newly created for the a dedicated purpose and not copy-pasted. This requires essential efforts and the work is boring, when it comes to reformulating the same issue many time.

With Ontology4 we have created a tool, which allows to generate natural language texts using a template engine. The variance of the texts is achieved by the free alignment of sentence constituants. The meaning of a sentence is retained, only the constituants in the sentence is varied.

In the following you find a couple of examples illustrating the power of Ontology4s text generation capabilities. If you press F5 on your keyboard, you see that new texts are generated every time.


Das Land Bundesrepublik Deutschland hat CIT-BE-Berlin als Hauptstadt, das ISO-3 Länderkürzel DEU, 81751602 Einwohner und eine Fläche von 357121 qkm.

Frankfurt Airport

Der Flughafen ARP-FRA hat den ICAO-Code EDDF, beschäftigt 75000 Mitarbeiter und hat den IATA-Code FRA.

ARP-FRA liegt in einer Höhe von 111 Metern über dem Meeresspiegel, liegt im Land Bundesrepublik Deutschland, ist Flughafen der Stadt CIT-HE-Frankfurt und hat eine Fläche von 2160 ha.

ARP-FRA hat durchnittlich 487162 Flugbewegungen pro Jahr, ein Passagieraufkommen von 56436255 Fluggästen jährlich, ein Frachtaufkommen von 2170000 Tonnen jährlich und 4 Start-/Landebahnen.

Example Template for cities

The following example shows, how descriptions of cities are variedly generated:

[{liegt im Kreis $Relation_Subject<>Kreis$, der zum Bundesland $Relation_Subject<>Bundesland$ gehört}
{hat die PLZ $Relation_Subject.PLZ$}
{hat $Relation_Subject.Einwohner$ Einwohner}
{hat eine Fläche von $Relation_Subject.FlaecheQkm$ Quadrat-km}].

Translations and multi lingual text

Natural language generation can be done for any target language. Only the template phrases have to be adopted.

$Relation_Subject$ {is located in the district of $Relation_Subject<>Kreis$, which belongs to the state of $Relation_Subject<>Bundesland<>deen$} {has the zip code $Relation_Subject.PLZ$} {has $Relation_Subject.Einwohner$ inhabitants} {has an area of $Relation_Subject.FlaecheQkm$ sq-km}.

River Rhein


Der Fluss FL-Rhein hat seine Quelle bei Disentis (CH) (Alpen) und entspringt in der Landschaft Alpen.

Einzugsgebiete, Nebenflüsse und Mündung

Der Fluss FL-Rhein hat als längsten Quellfluss den/die FL-Aare, als wichtige Nebenflüsse FL-Lippe, FL-Mosel, FL-Main, FL-Lahn, FL-Ruhr und FL-Neckar, einen Abluss von 2330 cbm pro Sekunde, eine Länge von 1236 km, davon in Deutschland 865 km, berührt die Bundesländer BW, RP, HE, NW, mündet in den/die Nordsee (Rotterdam, NL) und hat ein Einzugsgebiet von 102159 Quadrat-km.

River Lippe


Der Fluss FL-Lippe entspringt in der Landschaft Eggegebirge und hat seine Quelle bei Bad Lippspringe (NW) (Eggegebirge).

Einzugsgebiete, Nebenflüsse und Mündung

Der Fluss FL-Lippe berührt die Bundesländer NW, hat ein Einzugsgebiet von 4882 Quadrat-km, einen Abluss von 46 cbm pro Sekunde, eine Länge von 222 km, davon in Deutschland 220 km, mündet in den/die Rhein (Wesel, NW), hat als wichtige Nebenflüsse FL-Stever, FL-Glenne, FL-Seseke, FL-Pader und FL-Alme und als längsten Quellfluss den/die FL-Pader.

German and english text for cities

City of Dortmund

Dortmund hat eine Fläche von 280,41 Quadrat-km, die PLZ 44135, 584412 Einwohner und liegt im Kreis Dortmund, der zum Bundesland Nordrhein-Westfalen gehört.

City of Bad Salzuflen

Bad Salzuflen liegt im Kreis Lippe, der zum Bundesland Nordrhein-Westfalen gehört, hat die PLZ 32105, eine Fläche von 100,06 Quadrat-km und 54078 Einwohner.

Stadt Bad Salzuflen - english

Bad Salzuflen has 54078 inhabitants, is located in the district of Lippe, which belongs to the state of Northrine-Westphalia, has the ZIP code 32105 and an area of 100,06 sq-km.

Manual and further examples for natural Language Generation with Ontology4

Additional examples for the automatic generation of language with the Ontology4-Phrasegenerator can be found in our german manual online under http://www.ontology4.us/manual/Phrasen-Generator/index.html. E.g. reports on first soccer league games in Germany can be generated based on the import data from Excel tables. Here is an example of the Game between Dortmund and Düsseldorf.