header_visibility: footer_visibility:
lang: en

Alfresco / Semaphore Integration

Calendar November 15, 2012 | User Bill Young

A recent customer desired a system for storing and publishing highly specialized content, including text and images, with classification of content to enhance search and navigation. The customer was replacing a home-grown solution involving relational databases and custom taxonomy management which had been used for over a decade. The limited flexibility, and resulting high cost of maintenance, led the customer to seek a solution based on off the shelf software components, customized to meet the specific needs of their customers.

Given these desires, we developed the application using Alfresco as the underlying CMS, supplemented with Smartlogic Semaphore Suite of taxonomy management tools. The result is a system which provides automated classification of content, based on the taxonomies, and rich search capabilities. The rest of this article discusses the approach to this application.

The Semaphore Suite provides Java APIs, as well as RESTful APIs, for accessing classification and term look-up services. We used the Java APIs from Java-backed data webscripts. The diagram below shows the software components used in this solution.


The primary Semaphore components involved are the Ontology Server (OS), Classification Server (CS), and Semantic Enhancement Server (SES). OS manages the taxonomies, and is accessed by the taxonomist through the Ontology Manager (OM). From the OM, the taxonomist can publish classification rules to CS and taxonomies to SES. CS provides the services for automatic classification of content, based on the classification rules specialized for domain knowledge. SES provides highly indexed access to terms, which was leveraged for efficient display of UI components used in search and metadata display.

Activiti workflows were developed to run within the Alfresco platform. These workflows encapsulated the transmission of content to CS and storage of the resulting classification metadata to the Solr index. Users are able to review and enhance the automated classification of content.

The Alfresco Share interface was extended by the addition of pages for search against the classification metadata and manual enhancement of the classification, along with modifications to Alfresco’s document library pages to display the metadata in the document lists. Smartlogic provides JavaScript (jQuery) widgets which can be used for browsing the taxonomies (e.g., tree view), searching for terms (including search as you type), and faceted result filtering. These capabilities use the classification metadata stored to the Solr index in conjunction with the indexed taxonomies accessed from SES. Custom Alfresco data webscripts, interfacing with the Alfresco CMS repository, Solr index, and SES, are used to provide the data for populating the document library, classification-based search, and manual classification enhancement pages.

The resulting application shows how straight-forward it is to integrate applications with Alfresco using the framework provided within the CMS. Best of breed software can be used to seamlessly provide features not otherwise available in Alfresco.

©2021 Flatirons Solutions, Inc.|All Rights Reserved|Privacy Policy
Follow Flatirons Solutions