1
class D iagram s «X S D com plexT ype» C ollections::R esolv edC onceptR eferenceList «X SD attribute» - incom plete: B oolean = new java.lang.B ... «X S D com plexT ype» C ore::R esolv edC onceptR eference «X S D attribute» - codingS chem eU R N : S tring - codingS chem eV ersion: S tring «X S D com plexT ype» com monTypes:: entityD escription - content: S tring = "" «X S D com plexT ype» concepts::codedE ntry «X S D attribute» - conceptC ode: S tring - conceptS tatus: S tring - isA ctive: B oolean - isA nonym ous: B oolean «X S D com plexT ype» C ollections::A ssociationList «X S D com plexT ype» C ore::C onceptR eference - codingS chem e: S tring «X S D attribute» - conceptC ode: S tring «X S D com plexT ype» C ore::A ssociatedC oncept «X SD attribute» + isN avigable: B oolean «X S D com plexT ype» comm onTypes:: v ersionableA ndD escribable «XS Dcom pl... concepts:: com m ent «X SDcom pl... concepts:: conceptP roperty «X S D com plexT ype» concepts::concepts «X S D attribute» - dc: S tring = "concepts" «X S D com plexT ype» concepts::definition «X S D attribute» - isP referred: B oolean «X SD com pl... concepts:: instruction «X S D com plexT ype» concepts::presentation «X S D attribute» - degreeO fFidelity: S tring - isP referred: B oolean - m atchIfN oC ontext: B oolean - representationalForm : S tring «X S D com plexT ype» concepts::propertyLink «X S D attribute» - link: S tring - sourceP roperty: S tring - targetP roperty: S tring «X S D com plexT ype» codingSchemes::codingScheme «X S D attribute» - approxN um C oncepts: Integer - codingS chem e: S tring - copyright: S tring [0] - defaultLanguage: S tring - form alName: S tring - isN ative: B oolean - localN am eList: S tring [0..1] - registeredN am e: S tring - representsV ersion: S tring lgVer:entityVersion «X S D com plexT ype» codingSchemes:: codingSchemeVersion «X S D com plexT ype» com m onTypes::v ersionable «X S D attribute» - deprecated: B oolean - firstR elease: B oolean - m odifiedInR elease: B oolean «X S D com plexT ype» com m onTypes::property - propertyId: S tring «X S D attribute» - language: S tring - presentationForm at: S tring - property: S tring - usageC ontext: S tring [0..*] «X S D com plexT ype» C ollections::A ssociatedC onceptList «XS Dcom pl... com m onTypes:: describable «X S D com plexT ype» C ore::C odingS chem eS um m ary «X SD attribute» - codingSchem eURN: S tring - localN am e: S tring - representsV ersion: S tring «X SD elem ent» - form alName: S tring «X S D com plexT ype» C ore::N am eA ndV alue - content: S tring = "" «X S D attribute» - nam e: S tring «X S D com plexT ype» C ore::A ssociation «X S D attribute» - associationN am e: S tring - directionalN am e: S tring lang::O bject -associatedC oncept +codingS chem e 0..1 -concepts -propertyLinkList 0..* -conceptP ropertyList 0..* -instructionList 0..* -com m entList 0..* «X S D extension» - codingS chem eD escription 0..1 +concepts -conceptList 1..* +presentationList 1..* «X S D extension» +A ssociatedC oncept 0..1 -nam eA ndV alueList 0..* +versionableA ndD escribable 0..1 -entityD escription 0..1 «X S D extension» +describable 0..1 - entityD escription 0..1 -definitionList 0..* -referencedE ntry 0..1 -associationList 0..* -resolvedC onceptR eferenceList 0..* +codingS chem eV ersion 0..1 -_concepts 0..1 -anyO bject 0..* +associationR eference 0..1 «X S D extension» «X S D extension» -associatedC onceptList 0..* -targetO f 0..1 -sourceO f 0..1 +entityD escription 0..1 «X S D extension» «X S D extension» «X S D extension» «X S D extension» caBIG™ Terminology Services Path to Grid Enablement Thomas Johnson 1 , Scott Bauer 1 , Kevin Peterson 1 , Christopher Chute 1, Johnita Beasley 2 , Frank Hartel 2 1 Mayo Clinic, 2 NCICB Acknowledgements • We wish to thank all members of the NCICB EVS and Mayo LexGrid teams, who continue to contribute to the architecture, development and deployment of LexEVS services. • We wish to thank those who continue to provide mentorship for caDSR registration, caGrid™ and related tooling, and the Silver Level review process including Robert Freimuth, Tahsin Kurc, Scott Oster, Joshua Phillips, Nicole Thomas , John White , and Claire Wolfe. Preliminary Service Enhanced Prototype Partial LexBIG Query API Sample Applications Full LexBIG Query API Deployment Production Delivery Limited Query API Grid functions were developed as an analytic service. were selected to meet basic query needs, with focus on providing access to concepts in the NCI Thesaurus and NCI MetaThesaurus vocabularies. Separate methods and parameters were defined to search the NCI MetaThesaurus. This was an artifact of the legacy EVS infrastructure (see below). EVS 3.2 Model Registration Deployment cd LogicalM odel_ev sgrid3.1 serv ice:: EVSDescLogicConceptSearchParam s - vocabularyN am e: S tring - searchT erm : S tring - lim it: int serv ice:: EVSM etaThesaurusSearchParam s - searchT erm : S tring = null - lim it: int= 0 - source: S tring = null - cui: boolean = false - shortR esponse: boolean = false serv ice:: E V S H istoryR ecordsS earchP aram s - vocabularyN am e: S tring = null - conceptC ode: S tring = null serv ice::E V S S ourceS earchP aram s - code: S tring = null - sourceA bbreviation: S tring = null serv ice::E V S Q ueryS ervice + searchD escLogicC oncept(E V S D escLogicC onceptS earchP aram s):D escLogicC oncept[] + searchM etaT hesaurus(E V S M etaT hesaurusS earchP aram s):M etaT hesaurusC oncept[] + getH istoryR ecords(E V S H istoryR ecordsS earchP aram s):H istoryR ecord[] + getV ocabularyN am es():D escLogicC onceptV ocabularyN am e[] + getM etaS ources():S ource[] + searchS ourceB yC ode(E V S S ourceS earchP aram s):M etaT hesarusC oncepts[] serv ice:: DescLogicConceptVocabularyNam e - vocabularyN am e: S tring = null D i s t r i b u t e d L e x B I G A P I caCORE 4.0 LexWrapper LexBIG C o n v e n i e n c e M e t h o d s 3.2 EVS API Jav a SOAP REST Jav a MySQL LexBIG DB Lucene Index FIles caCORE 3.2 DTSRPC DTS Metaphrase M etathes aurus Individual Terminolo gies 3.2 EVS Model SOAP 3.2 EVS API REST Java The Legacy Infrastructure Partial LexBIG Model class caC O R E 3.2 E V S dom ain::A ttributeS etD escriptor - nam e: S tring - W IT H_A LL_A T T R IBU T E S : int= 1 {readO nly} - W IT H_A LL_P R O P E R TIE S : int= 3 {readO nly} - W IT H _A LL_R O LE S : int= 2 {readO nly} - W ITH_NO_ATTRIBUTES: int= 0 {readO nly} dom ain::D escLogicC oncept - code: S tring - hasC hildren: B oolean - hasP arents: B oolean - isR etired: B oolean - nam e: S tring - nam espaceId: int - sem anticT ypeV ector: V ector dom ain::H istory - editA ction: S tring - editA ctionD ate: D ate - nam espaceId: int - referenceC ode: S tring dom ain::M etaThesaurusC oncept - cui: S tring - nam e: S tring - synonym C ollection: A rrayList dom ain::P roperty - nam e: S tring - value: S tring dom ain::R ole - nam e: S tring - value: S tring dom ain::S ource - abbreviation: S tring - code: S tring - description: S tring dom ain::S em anticType - id: S tring - nam e: S tring dom ain::D efinition - definition: S tring dom ain::H istoryR ecord - descLogicC onceptC ode: S tring dom ain::A tom - code: S tring - lui: S tring - nam e: S tring - origin: S tring dom ain::Q ualifier - nam e: S tring - value: S tring domain:: A ssociation - nam e: S tring - value: S tring dom ain::E dgeP roperties - isA : boolean - links: HashSet - nam e: S tring - traverseD ow n: boolean dom ain::S ilo - id: int - nam e: S tring dom ain::V ocabulary - description: S tring - nam e: S tring - nam espaceId: int security::S ecurityToken - accessT oken: S tring - passw ord: S tring - userN am e: S tring dom ain::TreeN ode - isA : boolean - links: HashSet - nam e: S tring - traverseD ow n: boolean +qualifierC ollection 0..* +propertyC ollection 0..* +roleC ollection 0..* +roleC ollection 0..* +sem anticT ypeC ollection 0..* +sourceC ollection 0..* +propertyC ollection 0..* +source 0..1 +definitionC ollection 0..* +historyC ollection 0..* +atom C ollection 1..* +inverseR oleC ollection 0..* +qualifierC ollection 0..* +associationC ollection 0..* +treeN ode 0..1 +edgeP roperties 0..1 +siloC ollection 0..* +vocabulary 1 +historyR ecord 0..1 +securityT oken 0..1 +inverseA ssociationC ollection 0..* +source 1 As part of the EVS 4.1 release, a prototype caGrid™ service was developed based on models used by the LexBIG terminology infrastructure. The LexBIG model is informed by HL7 CTS and ISO 11179 standards, and capable of defining all caBIG™ terminologies in terms of a common representation. For the prototype, a limited section or vertical ‘slice’ of the model was selected to support common query functions. Deployment and Registration Once again, grid functions were developed as an analytic service. Implemented search methods were selected as a representative sample of the LexBIG query API, allowing basic retrieval of concepts, properties, and associations. Grid services were implemented in a stateful manner; programming to the grid services essentially mirrors programming against the local Java API. The vertical ‘slice’ of the LexBIG model was approved and registered to caDSR. This was carried out in preparation for formal review and registration of the full LexBIG model in as part of production rollout. Prototyped services are currently deployed to a sandbox caGrid environment within the Mayo Clinic, but are not externally accessible. Full LexBIG Model As part of the EVS 4.2 release, a caGrid™ service will be developed based on a fully expanded version of the LexBIG model (see below). Once approved and registered to the caDSR, the fully enhanced model will serve as reference for Silver Level review. In the 4.2 release this model, dubbed the ‘LexEVS’ model, will coexist with the legacy EVS model. In the EVS 5.0 release this model will serve as the primary representation for EVS data as the legacy model is retired. Sample caGrid Service call getSupportedCodingSchemes() Effective with caCORE 4.0, EVS surfaced a terminology service node based on the caCORE 3.2 EVS API on caGrid™ version 1.1. Services were grounded in the EVS 3.2 data model, depicted above. The model was inferred by classes, parameters, and return values in the underlying Java implementation. Definition of unique but semantically similar concept classes for the MetaThesaurus reflect separate handling by the underlying API. LexBIG Installation caGrid Node hosting Service Client Client Invokes caGrid Service caGrid Service uses Distributed LexBIG to implement call Distributed LexBIG returns requested information to caGrid Service caGrid Service returns response to client Services are deployed to an NCICB-hosted server serving as a node on the caGrid™ and fulfilled through the EVS caCORE infrastructure. This infrastructure is currently being transitioned from a legacy architecture to one based on the caBIG™-sponsored LexBIG project. Whereas the legacy infrastructure imposed unique processing of MetaThesaurus content, the LexBIG infrastructure provides a common API for query of all sources. getMetaSources () Returns all Metathesaurus Sources contained in the EVS. getServiceSecurityMetadata () Returns the service's security metadata. getVocabularyNames () Returns all the vocabularies present in the Description Logic in caCORE 3.1 EVS service. searchDescLogicConcept (EVSDescLogicConceptSearchParams eVSDescLogicConceptSearchParams) Searches a valid Vocabulary such as NCI Thesaurus and returns Description Logic concepts that meet the search criteria. searchMetaThesaurus (EVSMetaThesaurusSearchParams eVSMetaThesaurusSearchParams) Searches NCI meta thesaurus and returns Meta Thesaurus information that meet the search criteria. searchSourceByCode(EVSSourceSearchParams eVSSourceSearchParams) Searches the Meta Thesaurus based on Source code. caGrid™ Node Hosting Service Client Program In addition to the model being approved and registered to caDSR, services are currently registered for availability on the caGrid Portal. The portal provides a visual display of services running on the caGrid infrastructure as well as institutions that are participating in the caBIG program. Client caGrid Service Distributed LexBIG Calls caGrid ‘getSupportedCodingSchemes()’ Calls Distributed LexBIG ‘getSupportedCodingSchemes() Returns result of call to caGrid Service Results are returned to client with all appropriate caGrid security mechanisms Sample applications have been developed against the prototype caGrid™ services as proof of concept, including command-line driven programs and a modified version of the LexBIG Graphical User Interface. Because the stateful nature of the LexBIG API has been preserved, existing applications were quickly migrated to the grid with little change to core logic. In the EVS 4.2 release, the prototype service will be enhanced to provide full functionality of the LexBIG query API and a formal Silver Level review package will be submitted. In the 4.2 release this service, dubbed the ‘LexEVS’ service, will be externally published and will coexist with the legacy EVS service (to be deprecated). In the EVS 5.0 release, the LexEVS service will provide the primary interface to EVS functions as the legacy service is retired. As part of EVS 4.2 release activities, the LexEVS caGrid™ service will be deployed on the NCI CBIIT production servers as an externally accessible grid node. Internally, this service will rely on the distributed LexBIG API to invoke services on a separate server where the full compliment of LexBIG services has been deployed. Database storage for serviced vocabularies may reside in yet another tier. In addition to NCI CBIIT, it is anticipated that other installations of EVS services will be deployed and registered to the grid. These installations will contribute to a federated system of terminologies, allowing extended discovery and use in grid-based applications. NCI Thes LOINC Other … Discover caGRID Clients Adoption EVS Hosting Services

CaBIG™ Terminology Services Path to Grid Enablement Thomas Johnson 1, Scott Bauer 1, Kevin Peterson 1, Christopher Chute 1, Johnita Beasley 2, Frank Hartel

Embed Size (px)

Citation preview

Page 1: CaBIG™ Terminology Services Path to Grid Enablement Thomas Johnson 1, Scott Bauer 1, Kevin Peterson 1, Christopher Chute 1, Johnita Beasley 2, Frank Hartel

class Diagrams

«XSDcomplexType»Collections::Resolv edConceptReferenceList

«XSDattribute»- incomplete: Boolean = new java.lang.B...

«XSDcomplexType»Core::Resolv edConceptReference

«XSDattribute»- codingSchemeURN: String- codingSchemeVersion: String

«XSDcomplexType»commonTypes::

entityDescription

- content: String = ""

«XSDcomplexType»concepts::codedEntry

«XSDattribute»- conceptCode: String- conceptStatus: String- isActive: Boolean- isAnonymous: Boolean

«XSDcomplexType»Collections::AssociationList

«XSDcomplexType»Core::ConceptReference

- codingScheme: String

«XSDattribute»- conceptCode: String

«XSDcomplexType»Core::AssociatedConcept

«XSDattribute»+ isNavigable: Boolean

«XSDcomplexType»commonTypes::

v ersionableAndDescribable

«XSDcompl...concepts::comment

«XSDcompl...concepts::

conceptProperty

«XSDcomplexType»concepts::concepts

«XSDattribute»- dc: String = "concepts"

«XSDcomplexType»concepts::definition

«XSDattribute»- isPreferred: Boolean

«XSDcompl...concepts::instruction

«XSDcomplexType»concepts::presentation

«XSDattribute»- degreeOfFidelity: String- isPreferred: Boolean- matchIfNoContext: Boolean- representationalForm: String

«XSDcomplexType»concepts::propertyLink

«XSDattribute»- l ink: String- sourceProperty: String- targetProperty: String

«XSDcomplexType»codingSchemes::codingScheme

«XSDattribute»- approxNumConcepts: Integer- codingScheme: String- copyright: String [0]- defaultLanguage: String- formalName: String- isNative: Boolean- localNameList: String [0..1]- registeredName: String- representsVersion: String

lgVer:entityVersion

«XSDcomplexType»codingSchemes::

codingSchemeVersion

«XSDcomplexType»commonTypes::v ersionable

«XSDattribute»- deprecated: Boolean- firstRelease: Boolean- modifiedInRelease: Boolean

«XSDcomplexType»commonTypes::property

- propertyId: String

«XSDattribute»- language: String- presentationFormat: String- property: String- usageContext: String [0..*]

«XSDcomplexType»Collections::AssociatedConceptList

«XSDcompl...commonTypes::

describable

«XSDcomplexType»Core::CodingSchemeSummary

«XSDattribute»- codingSchemeURN: String- localName: String- representsVersion: String

«XSDelement»- formalName: String

«XSDcomplexType»Core::NameAndValue

- content: String = ""

«XSDattribute»- name: String

«XSDcomplexType»Core::Association

«XSDattribute»- associationName: String- directionalName: String

lang::Object

-associatedConcept

+codingScheme

0..1

-concepts 0..*-propertyLinkList 0..*

-conceptPropertyList

0..*

-instructionList

0..*

-commentList

0..*

«XSDextension»

-codingSchemeDescription

0..1

+concepts

-conceptList

1..*

+presentationList 1..*

«XSDextension»

+AssociatedConcept 0..1

-nameAndValueList 0..*

+versionableAndDescribable 0..1

-entityDescription 0..1

«XSDextension»

+describable 0..1

-entityDescription

0..1

-definitionList

0..*

-referencedEntry

0..1

-associationList 0..*

-resolvedConceptReferenceList 0..*

+codingSchemeVersion 0..1

-_concepts 0..1

-anyObject 0..*

+associationReference

0..1

«XSDextension»

«XSDextension»

-associatedConceptList 0..*

-targetOf 0..1-sourceOf 0..1

+entityDescription

0..1

«XSDextension»

«XSDextension»«XSDextension»

«XSDextension»

caBIG™ Terminology ServicesPath to Grid Enablement

Thomas Johnson1, Scott Bauer1, Kevin Peterson1, Christopher Chute1, Johnita Beasley2, Frank Hartel2

1Mayo Clinic, 2NCICB

Acknowledgements• We wish to thank all members of the NCICB EVS and Mayo LexGrid teams, who continue to

contribute to the architecture, development and deployment of LexEVS services.• We wish to thank those who continue to provide mentorship for caDSR registration, caGrid™ and

related tooling, and the Silver Level review process including Robert Freimuth, Tahsin Kurc, Scott Oster, Joshua Phillips, Nicole Thomas , John White , and Claire Wolfe.

Preliminary Service Enhanced Prototype

Partial LexBIG Query API

Sample Applications

Full LexBIG Query API

Deployment

Production Delivery

Limited Query API

Grid functions were developed as an analytic service. Initial services were selected to meet basic query needs, with focus on providing access to concepts in the NCI Thesaurus and NCI MetaThesaurus vocabularies. Separate methods and parameters were defined to search the NCI MetaThesaurus. This was an artifact of the legacy EVS infrastructure (see below).

EVS 3.2 Model

Registration

Deployment

cd Logical Model_ev sgrid3.1

serv ice::EVSDescLogicConceptSearchParams

- vocabularyName: String- searchTerm: String- l im it: int

serv ice::EVSMetaThesaurusSearchParams

- searchTerm: String = nul l- l im it: int = 0- source: String = nul l- cui : boolean = false- shortResponse: boolean = false- score: boolean = false

serv ice::EVSHistoryRecordsSearchParams

- vocabularyName: String = nul l- conceptCode: String = nul l

serv ice::EVSSourceSearchParams

- code: String = nul l- sourceAbbreviation: String = nul l

serv ice::EVSQueryServ ice

+ searchDescLogicConcept(EVSDescLogicConceptSearchParams) : DescLogicConcept[]+ searchMetaThesaurus(EVSMetaThesaurusSearchParams) : MetaThesaurusConcept[]+ getHistoryRecords(EVSHistoryRecordsSearchParams) : HistoryRecord[]+ getVocabularyNames() : DescLogicConceptVocabularyName[]+ getMetaSources() : Source[]+ searchSourceByCode(EVSSourceSearchParams) : MetaThesarusConcepts[]

serv ice::DescLogicConceptVocabularyName

- vocabularyName: String = nul l

Distrib

uted

LexB

IG A

PI

caCORE 4.0

LexWrapper

LexBIG

Co

nv

en

ien

ce

Me

tho

ds

3.2 EVSAPI

Java

SOAP

REST

Java

MySQL LexBIG

DB

Lucene IndexFIles

caCORE 3.2 DTSRPC DTS

Metaphrase

Met

ath

es

auru

s

Ind

i vid

ua

l T

erm

ino

log

ies

3.2 EVS Model

SOAP3.2

EVS API

REST

Java

The Legacy Infrastructure

Partial LexBIG Modelclass caCORE 3.2 EVS

domain::AttributeSetDescriptor

- name: String- WITH_ALL_ATTRIBUTES: int = 1 {readOnly}- WITH_ALL_PROPERTIES: int = 3 {readOnly}- WITH_ALL_ROLES: int = 2 {readOnly}- WITH_NO_ATTRIBUTES: int = 0 {readOnly}

domain::DescLogicConcept

- code: String- hasChildren: Boolean- hasParents: Boolean- isRetired: Boolean- name: String- namespaceId: int- semanticTypeVector: Vector

domain::History

- editAction: String- editActionDate: Date- namespaceId: int- referenceCode: String

domain::MetaThesaurusConcept

- cui: String- name: String- synonymCollection: ArrayList

domain::Property

- name: String- value: String

domain::Role

- name: String- value: String

domain::Source

- abbreviation: String- code: String- description: String

domain::SemanticType

- id: String- name: String

domain::Definition

- definition: String

domain::HistoryRecord

- descLogicConceptCode: String

domain::Atom

- code: String- lui: String- name: String- origin: String

domain::Qualifier

- name: String- value: String

domain::Association

- name: String- value: String

domain::EdgeProperties

- isA: boolean- links: HashSet- name: String- traverseDown: boolean

domain::Silo

- id: int- name: String

domain::Vocabulary

- description: String- name: String- namespaceId: int

security::SecurityToken

- accessToken: String- password: String- userName: String

domain::TreeNode

- isA: boolean- links: HashSet- name: String- traverseDown: boolean

+qualifierCollection 0..*

+propertyCollection

0..*

+roleCollection

0..*

+roleCollection

0..*

+semanticTypeCollection

0..*

+sourceCollection

0..*

+propertyCollection 0..*

+source

0..1

+definitionCollection 0..*

+historyCollection

0..*

+atomCollection

1..*

+inverseRoleCollection

0..*

+qualifierCollection

0..*+associationCollection

0..*

+treeNode

0..1

+edgeProperties

0..1

+siloCollection

0..*

+vocabulary 1

+historyRecord 0..1

+securityToken

0..1

+inverseAssociationCollection

0..*

+source 1

As part of the EVS 4.1 release, a prototype caGrid™ service was developed based on models used by the LexBIG terminology infrastructure. The LexBIG model is informed by HL7 CTS and ISO 11179 standards, and capable of defining all caBIG™ terminologies in terms of a common representation. For the prototype, a limited section or vertical ‘slice’ of the model was selected to support common query functions.

Deployment and Registration

Once again, grid functions were developed as an analytic service. Implemented search methods were selected as a representative sample of the LexBIG query API, allowing basic retrieval of concepts, properties, and associations. Grid services were implemented in a stateful manner; programming to the grid services essentially mirrors programming against the local Java API.

The vertical ‘slice’ of the LexBIG model was approved and registered to caDSR. This was carried out in preparation for formal review and registration of the full LexBIG model in as part of production rollout. Prototyped services are currently deployed to a sandbox caGrid environment within the Mayo Clinic, but are not externally accessible.

Full LexBIG Model

As part of the EVS 4.2 release, a caGrid™ service will be developed based on a fully expanded version of the LexBIG model (see below). Once approved and registered to the caDSR, the fully enhanced model will serve as reference for Silver Level review. In the 4.2 release this model, dubbed the ‘LexEVS’ model, will coexist with the legacy EVS model. In the EVS 5.0 release this model will serve as the primary representation for EVS data as the legacy model is retired.

Sample caGrid Service callgetSupportedCodingSchemes()

Effective with caCORE 4.0, EVS surfaced a terminology service node based on the caCORE 3.2 EVS API on caGrid™ version 1.1. Services were grounded in the EVS 3.2 data model, depicted above. The model was inferred by classes, parameters, and return values in the underlying Java implementation. Definition of unique but semantically similar concept classes for the MetaThesaurus reflect separate handling by the underlying API.

LexBIG Installation

caGrid Nodehosting Service

Client

Client Invokes caGridService

caGrid Service usesDistributed LexBIG toimplement call

Distributed LexBIG returnsrequested information tocaGrid Service

caGrid Servicereturns responseto client

Services are deployed to an NCICB-hosted server serving as a node on the caGrid™ and fulfilled through the EVS caCORE infrastructure. This infrastructure is currently being transitioned from a legacy architecture to one based on the caBIG™-sponsored LexBIG project. Whereas the legacy infrastructure imposed unique processing of MetaThesaurus content, the LexBIG infrastructure provides a common API for query of all sources.

getMetaSources()           Returns all Metathesaurus Sources contained in the EVS.

getServiceSecurityMetadata()            Returns the service's security metadata.

getVocabularyNames()           Returns all the vocabularies present in the Description Logic in caCORE 3.1 EVS service.

searchDescLogicConcept(EVSDescLogicConceptSearchParams eVSDescLogicConceptSearchParams)           Searches a valid Vocabulary such as NCI Thesaurus and returns Description Logic concepts that meet the search criteria.

searchMetaThesaurus(EVSMetaThesaurusSearchParams eVSMetaThesaurusSearchParams)           Searches NCI meta thesaurus and returns Meta Thesaurus information that meet the search criteria.

searchSourceByCode(EVSSourceSearchParams eVSSourceSearchParams)           Searches the Meta Thesaurus based on Source code.

caGrid™ NodeHosting Service

ClientProgram

In addition to the model being approved and registered to caDSR, services are currently registered for availability on the caGrid Portal. The portal provides a visual display of services running on the caGrid infrastructure as well as institutions that are participating in the caBIG program.

Client caGrid Service Distributed LexBIGCalls caGrid ‘getSupportedCodingSchemes()’

Calls Distributed LexBIG‘getSupportedCodingSchemes()

Returns result of call to caGrid Service

Results are returned to clientwith all appropriate caGrid security mechanisms

Sample applications have been developed against the prototype caGrid™ services as proof of concept, including command-line driven programs and a modified version of the LexBIG Graphical User Interface. Because the stateful nature of the LexBIG API has been preserved, existing applications were quickly migrated to the grid with little change to core logic.

In the EVS 4.2 release, the prototype service will be enhanced to provide full functionality of the LexBIG query API and a formal Silver Level review package will be submitted. In the 4.2 release this service, dubbed the ‘LexEVS’ service, will be externally published and will coexist with the legacy EVS service (to be deprecated). In the EVS 5.0 release, the LexEVS service will provide the primary interface to EVS functions as the legacy service is retired.

As part of EVS 4.2 release activities, the LexEVS caGrid™ service will be deployed on the NCI CBIIT production servers as an externally accessible grid node. Internally, this service will rely on the distributed LexBIG API to invoke services on a separate server where the full compliment of LexBIG services has been deployed. Database storage for serviced vocabularies may reside in yet another tier.

In addition to NCI CBIIT, it is anticipated that other installations of EVS services will be deployed and registered to the grid. These installations will contribute to a federated system of terminologies, allowing extended discovery and use in grid-based applications.

NCI Thes

LOINC

Other …

Discover

caGRIDClients

Adoption

EVSHostingServices