Software

Structured Dynamics is an experienced software development company. Much of our code is open source; all is well documented and backed by unit and system testing. Our major areas of software emphasis are described below.

Web Services and Architecture

Most of our production code is written in Clojure (a Java-friendly dialect of Lisp) and deployed as RESTful Web services. Designs are modular and scalable, suitable for distributed applications, and conform to semantic technology and open standards.

Open Semantic Framework

The Open Semantic Framework — currently at version 3.x with five years of continuous development — is an integrated software stack that combines external open source components with specific enhancements developed by Structured Dynamics. OSF is a complete foundation to bring semantic technology capabilities to the enterprise.

Simple View of the OSF Stack

The basic architecture of the Open Semantic Framework pivots around the OSF Web Services; there are nearly 30 providing a wealth of functionality. Full CRUD under user permissions and security is provided to all digital objects in the stack. This OSF access layer provides a means to access best-of-breed data management and indexing engines through uniform interfaces.

This intermediate OSF Web Services layer may be accessed directly via API or by interfacing with standard content management systems (CMS). The OSF stack is supported by complete documentation, automated installation routines, comprehensive unit and end-to-end tests, workflows, and use cases. OSF documentation now exceeds 500 technical articles and a further 1,000+ images.

OSF for Drupal

OSF may optionally use Drupal as the overall content management system. OSF ties directly into Drupal using dedicated connectors and modules developed by Structured Dynamics. This configuration makes available Drupal's existing 10,000 modules and ecosystem of developers and capabilities.

Taggers

Structured Dynamics' taggers provide information extraction of domain-specific concepts and entities from unstructured text. The key to entity extraction is an organized typology of more than 25,000 entity types to aid machine learning. Relations may be similarly extracted; assertions match these with individual entities. This structure also provides disambiguation based on the context of the source information.

SD's taggers use a combination of heuristics, statistical methods and machine-learning algorithms to separately identify concepts and entities within the target text. Then, using the same domain ontologies employed by OSF and entity dictionaries, the system further identifies and weights candidate extractions. Uniquely, the system may triangulate the extractions between concepts and entities to aid disambiguation.

Dedicated Development and Scripts

Ontology development and mapping and data transformations and lifting need to be: 1) automated as much as possible; and 2) supported by user interfaces and tooling to make these tasks efficient. Structured Dynamics has a considerable library of scripts for these purposes. We also develop bespoke applications where appropriate to meet specific client workflow needs.

Functional Programming

Structured Dynamics uses functional programming (principally through Clojure) for many of the semantic and artificial intelligence aspects of its code bases, especially where integration with Java is desirable.