NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Scrollbar
iconsfalse

...

Page info
title
title

Section
Column
Panel
titleContents of this Page
Table of Contents
minLevel2
Column
Align
alignright
Include Page
Menu LexEVS 6.0 x Programmers to Include
Menu LexEVS 6.0 x Programmers to Include

Introduction

The LexEVS APIs fall into three primary categories:

  • Core Services Includes - Core services include the LexBIGService, LexBIGServiceManager, CodedNodeSet and CodedNodeGraph classes, which provide the initial entry points for programmatic access to all system features and data.
  • Service Extensions - The extension mechanism provides for pluggable system features. Current extension points allow for the introduction of custom load and indexing mechanisms; unique query, sort, and filter mechanisms; and generic functional extensions which can be advertised for availability to client programs.
  • Utilities - Utility classes, such as those implementing iterator support, are provided by the system to provide convenience and optimize the handling of resources accessed through the runtime.

...

LexEVS Services and Components

Interface Link

Description

LexBIGService

This interface represents the core interface to a LexEVS service and acts as an entry point to other API components and services

CodedNodeGraph

A virtual graph where the edges represent associations and the nodes represent concept codes. A CodedNodeGraph describes a graph that can be combined with other graphs, queried or resolved into an actual graph rendering.

CodedNodeSet

A coded node set represents a flat list of coded entries.

LexBIGServiceManager

The service manager provides a single write and update access point for all of a service's content. The service manager allows new coding schemes to be validated and loaded, existing coding schemes to be retired and removed and the status of various coding schemes to be updated and changed.

LexBIGServiceMetadata

Interface to perform system-wide query over optionally loaded metadata for loaded code systems and providers.

LexEVSAuthoringService

Authoring service interface for creating Mappings and Coding Scheme relationships

Value Set, Asserted Value Set, and Pick List Services

The LexBIGService interface is not an entry point for Value Sets and Pick Lists. For details, see the Value Set and Pick List Services section of this guide.

JavaDocs for the LexEVS Service Interfaces

...

Provides registration and lookup for pluggable system features.

Interface Link

Description

Extendable

Marks a class as an extension to the LexEVS application programming interface. This allows for centralized registration, lookup, and access to defined functions.

ExtensionRegistry

Allows registration and lookup of implementers for extensible pieces of the LexEVS architecture.

Javadocs for LexEVS Extensions

...

Query extensions provide the ability to further constrain or manage query results. For details on the LexEVS 6.0 Query Extension, see the document section Query Services Extension.

Interface Link

Description

Filter

Allows for additional filtering of query results.

Sort

Allows for unique sorting of query results. This interface provides a comparator to evaluate order of any two given items from the result set.

Search

Allows for unique search of query results.

Javadocs for LexEVS Query Extensions

...

The following are the components of interest:

Interface Link

Description

Loader

The loader interface validates and/or loads content for a service.

LexGrid Loader

Validates and/or loads content provided in the LexGrid canonical XML format.

NCI Metathesaurus Loader

Validates and/or loads the complete NCI MetaThesaurus. Content is supplied in RRF format. Note: To load individual coding schemes, consider using the UMLS_Loader as an alternative.

OBO Loader

Validates and/or loads content provided in Open Biomedical Ontologies (OBO) text format.

OWL Loader

Validates and/or loads content provided in Web Ontology Language (OWL) XML format.

Info
titleNote
that for LexEVS phase 1 this loader is designed to specifically handle the NCI Thesaurus as provided in OWL format.
OWL2 LoaderValidates and/or loads content provided by the latest OWL standard and as interpreted by the OWL API. 

Text Loader

A loader for delimited text type files. Text files come in one of two formats: indented code/designation pair or indented code/designation/description triples.

UMLS Loader

Load one or more coding schemes from UMLS RRF format stored in a SQL database.

MetaData Loader

Validates and/or loads content provided in metadata xml format. The only requirement of the xml file is that it be a valid xml file

NCIHistoryLoader

A loader that takes the delimited NCI history file and applies it to a coding scheme.

OBOHistoryLoader

Load an OBO change history file.

MrMapLoader

Load mappings between coding schemes from UMLS formatted MRMAP.RRF and MRSAT.RRF files.

ClaML Loader

Loads representations sourced in the Classification Markup Language such as ICD-10 ( No longer supported )

Radlex Protege Frames Loader

Loads the Radlex terminology

from a Protege Frames formatted source.

from a Protege Frames formatted source. ( No longer supported )

Javadocs for LexEVS Load Extensions

Loader Construction

While not specifically developed as an API  loader interfaces for the LexEVS API exist new loaders are regularly written.   Some unsupported, community-contributed loaders have been created such as those for RXNORM and NDFRT content. 

We provide instructions for creating loaders of your own and include a framework for loaders that can be written using Spring Batch. 

LexEVS 6.x Loader Implementation

Loader Frame WorkJavadocs for LexEVS Load Extensions

Export Extensions

Export extensions are responsible for the export of content from the LexEVS repository to other representative vocabulary formats.

Interface Link

Description

Exporter

Defines a class of object used to export content from the underlying LexGrid repository to another repository or file format.

LexGrid_Exporter

Exports content to LexGrid canonical XML format.

OBO Exporter

Exports content to OBO text format.

Panel
 

OWL Exporter

Exports content to OWL XML format.

Javadocs for LexEVS Export Extensions

...

Index extensions are built to optimize the finding, sorting and matching of query results. It is the responsibility of the loader to properly interpret each index it services by name, version, and provider.

Interface Link

Description

Index

Identifies expected behavior and an associated loader to build and maintain a named index. Note that a single loader may be used to maintain multiple named indexes.

IndexLoader

Manages registered index extensions. A single loader may be used to create and maintain multiple indexes over one or more coding schemes.

Javadocs for LexEVS Index Exensions

...

Generic extensions provides a mechanism to register application-specific extensions for reference and reuse.

Interface Link

Description

GenericExtension

The generic extension class. Classes that implement this class are accessible via the LexBIGService interface.

LexBIGServiceConvenienceMethods

Convenience methods to be implemented as a generic extension of the LexEVS API.

MappingExtension

A grouping of Mapping Coding Scheme related functionality.

SupplementExtension

A grouping of Coding Scheme Supplement related functionality.

Javadocs for LexEVS Generic Extensions

...

Many useful features are provided in an effort to increase approachability of the API and assist the programmer in common tasks. This package currently contains the following classes:

Interface Link

Description

Constructors

Helper class to ease creating common objects.

ConvenienceMethods

One-stop shopping for convenience methods that have been implemented against the LexEVS API.

LBConstants

Provides constants for use in the LexEVS API.

ObjectToString

Provides centralized formatting of LexEVS Objects to String representations.

ServiceUtility

Provides utility methods for the LexEVS services.

VSObjectToString

Provides centralized formatting of LexEVS Value Set Object to String representations.

Javadocs for LexEVS Utility Classes

...

Iterators are used to provide controlled resolution of query results.

Interface Link

Description

EntityListIterator

Generic interface for flexible resolution of LexEVS objects

ResolvedConceptReferencesIterator

An iterator for retrieving resolved coding scheme references.

Javadocs for LexEVS Iterator classes

...

LexEVS GUI

The LexEVS Graphical User Interface, or GUI, is an optional component of the LexEVS install which will be in the /gui folder of the base LexEVS installation (see file breakdown in LexEVS 6.0 x Local Runtime Installation Directory Guide). The GUI is meant to provide a simple tool to test LexEVS API methods and quickly view the results; almost all public methods defined by the LexEVS API are supported. This guide provides a brief overview of how the GUI can aid programmers in writing code to the LexEVS API.

...

If a Code Set is selected in the lower left, then the lower right section will look like this:

selected code setImage Modified

In the lower right section, there are two halves - the top half and the bottom half. The top half is used to apply restrictions. The bottom half provides query options and resolution.

...

If you select a Coded Node Graph in the lower left section of the LexEVS GUI, the lower right section will look like this:

selected code node graphImage Modified

Again, there are two halves to the lower right section. The top half allows restrictions to be applied to the selected Code Graph, and it works the same as it does for a Coded Node Set. Please see the section above on applying restrictions to a Coded Node Set.

...

For details about LexEVS Value Set Services, see LexEVS Value Set ServicesService.

Pick List Services

For details about LexEVS Pick List Services, see LexEVS Pick List Services.

...

Service.

Asserted Value Set Services

For details about LexEVS Source Asserted Value Set Services, see LexEVS Asserted Value Set Service

 

Scrollbar
iconsfalse