Ontopia: The Topic Map Company

Ontopia Topic Map Engine


The Ontopia Topic Map Engine is a Topic Maps Java SDK that provides all the functionality needed for building Topic Maps applications.

The Ontopia Topic Map Engine handles all the difficult aspects of Topic Maps development on behalf of applications. The SDK lets applications load topic maps from XML documents, store topic maps in databases, modify and access topic maps, and generally do all an application may need to do with a topic map. The engine has a core Topic Maps API which all applications use to access topic map data, regardless of where those data are stored. Thus, whether the topic map is in-memory, in a database, or a virtual view is all the same to the application.

Features

The Ontopia Topic Map Engine is the product of two years of topic map software development and sports a number of impressive features, such as:

  • Full conformance with XTM 1.0 and ISO 13250.
  • Ability to import and export topic maps in the XTM interchange syntax, as well as the compact and human-friendly LTM syntax.
  • Enterprise-level robustness and scalability.
  • Persistent and scalable storage of topic maps in relational databases using the RDBMS backend.
  • Well-designed API that is consistent, intuitive, and scalable.
  • Rich set of utilities for merging, association walking, name selection, scope filtering and so on.
  • Support for import and export from RDF, using a simple mapping vocabulary.
  • Index API that allows quick and easy lookup of topic map information.
  • Full internationalization, with proper support for and handling of all character encodings.
  • Automated test suite for quick and easy testing of the engine in new environments.
  • Support for the standard TMAPI API for Topic Maps engines

Areas of application

Some of the most important and interesting areas where the Knowledge Suite can simplify development and improve the result are:

Web portals
Portals, as large information repositories, are perfect use cases for the OKS. The topic map model itself will guide you into creating a well-organized portal, and developing the actual portal is greatly simplified, thanks to the Ontopia Topic Map Navigator SDK.
Knowledge base intranets
Using topic maps you can capture and manage the knowledge that constitutes corporate memory. Using the OKS you can enrich your intranet with topic maps and turn it into a real collaborative knowledge base.
Content management systems
The Ontopia Topic Map Engine lets you integrate topic mapping capabilities into your content management system. The integration could take the form of making the entire system topic map-based, or it could create a virtual topic map of the system. And with the Ontopia Topic Map Navigator the web interface is there almost out of the box.
Enterprise Application Integration (EAI)
Topic maps automate the merging of information from diverse sources. Using the Ontopia Topic Map Engine's support for merging, information from many different sources can be integrated into a coherent whole. Use this capability to integrate products in a product suite, or to provide a single, unified access layer to information stored in otherwise disparate and incompatible formats and repositories.

Architecture

The diagram below shows the engine architecture, when using the engine in conjunction with the RDBMS backend.

Engine Architecture

Engine Architecture

The Ontopia RDBMS Backend Connector

The Ontopia RDBMS backend connector is an add-on to the engine that enables it to store topic maps in relational databases, and to access and modify topic maps stored in such databases. Most RDBMS servers are supported.

The applications access the topic map data through a different implementation of the core interfaces, which means that applications (as well as the engine utilities) need not care how the data is stored. (The test suite is used to verify that the two API implementations behave in precisely the same way.)

Using this backend topic map applications can scale to handle enormous topic maps, and also get benefits such as transactions and concurrency management between different processes. The architecture of the engine allows prototypes to be developed quickly using topic maps generated by scripts and stored in XML files. The prototype can then be upgraded to production quality by switching to the RDBMS backend and upgrading the generation scripts. The applications themselves do not need to change, since they are independent of where the topic maps are stored.

The following database servers are supported:

  • PostgreSQL 7.3, 7.4, 8.0, and 8.1.
  • Oracle 8.1.7, 9i, and 10g.
  • SQL Server 2005.
  • MySQL 4.1.
  • hsqldb 1.7.

Support for additional servers can be added on request.

The Ontopia Full-text Search Integration

The Ontopia full-text search integration contains a framework for indexing and searching for text in topic maps. This a quick and intuitive entry point to the topic map, that allows you to jump directly to the topic you are looking for. A full-text search engine, integrated with the topic map engine, is provided with the product, but other engines can also be integrated, and the existing integration can easily be customized.

The Ontopia Full-text Search Integration is a framework that can be used to integrate full-text search engines with topic maps. The framework is highly flexible, allowing any search engine to be integrated, allowing applications to customize integration in any way they wish, and providing simple defaults for those who have simpler needs.

Using the full-text search you can search for topics by their names and the contents of their occurrences. This can be very helpful for users new to topic maps who need to find something specific in a topic map. They can search for, say, "Philadelphia", and immediately be told that this matches the names of a cheese, a city, and several songs and musical artists. Thus, the users immediately know what they have found, and why, something that isn't possible when doing full-text search of documents.

The main features of the framework are:

Bundled search engine
The Java-based search engine Lucene comes bundled with the integration. Lucene is open source, powerful, robust, scalable, and lightning fast. A plug-in for the Omnigator providing an easy-to-use user interface for searching and administration is also part of the distribution. You can try out the searching part of this in our online demo.
Flexibility
The framework is designed around a set of very generic interfaces, which makes it easy to integrate the framework into any application, to integrate new search engines, and to control the way the full-text search works in a particular application.
Automated indexing
The framework contains utilities for indexing topic maps automatically, using any search engine. The utilities can also index resources external to the topic map, whether local or remote, and uses advanced thread pooling to ensure that downloading of remote resources makes optimal use of the available network capacity.
Fully internationalized
The search engine integration is fully internationalized. You search your topic maps equally well regardless of what character encoding they use, and whether they are written in English, Norwegian, Japanese, or Arabic.
Test suite
A test suite is distributed with the product, enabling you to quickly ensure that the product is working correctly in your environment. The test suite also guarantees that the quality of the product remains high.

The Ontopia Topic Map Query Engine

The Ontopia Topic Map Query Engine provides an easy-to-use query language developed by Ontopia. The query engine makes it easy to develop search interfaces in topic map applications, but also simplifies the development of applications, since the query language can then be used by application developers to simplify the task of retrieving information from the topic maps.

The query engine builds on the engine and is integrated with the Navigator Framework, so that web applications can use the query language to locate the information they wish to display.

The query language currently used (tolog) will be replaced by the standard Topic Map Query Language, TMQL, currently in development by ISO, once the latter is finalized and tools will be provided from migrating from tolog to TMQL.

The Ontopia Schema Tools

The Ontopia Schema Tools provide a powerful and easy-to-use schema language for topic maps. This language performs the same function with respect to topic maps as XML Schemas (or DTDs) do for XML documents, allowing you to describe and constrain the structure of the topic maps used by a particular application. Examples of possible constraints are "every person must have a name", "every person must be born in a place", and "every person may have a mother and a father".

Having a schema for an application documents the permitted structure of the topic maps used by that application, enables applications to verify that the topic maps actually follow the structural rules, and also enables editing applications to provide more guidance to the user than they could otherwise do.

The schema tools module contains a toolkit for importing schemas, exporting schemas, accessing and modifying schemas, and validating topic maps, topics, and associations against a schema. This allows schema capabilities to be easily added to any application.

The schema language currently used (Ontopia Schema Language, OSL) will be replaced by the standard Topic Map Constraint Language, TMCL, currently in development by ISO, once the latter is finalized and tools will be provided from migrating from OSL to TMCL.

Platforms

The Engine is written in pure Java, and should run on any platform that has a JDK 1.3 (or higher) environment. It has been tested under Windows (98 and 2000), Linux (RedHat, SuSE, and Debian), and Sun Solaris 5.7.

Prices and ordering

Please refer to our price list for details of prices, configurations and ordering information.