NIH | National Cancer Institute | NCI Wiki  

Error rendering macro 'rw-search'

null

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

LexEVS GraphResolve


Use Case/Requirements Statement:

The requirement is to provide an iterator that contains results of a relationship search:

(1) Given a coding scheme (name and version) and an association name, such as Anatomical_Structure_Is_a_Physical_Part_Of in NCI Thesaurus,

find all source concepts related to any target concept through this specified association such that the target concept matches with a collection of user specified search criteria.

(Refer to the NCI Thesaurus Advanced Search web page for user-specified search criteria)

 

(2) Given a coding scheme (name and version) and an association name, such as Anatomical_Structure_Is_a_Physical_Part_Of in NCI Thesaurus,

find all target concepts related to any source concept through this specified association such that the source concept matches with a collection of user specified search criteria.

(Refer to the NCI Thesaurus Advanced Search web page for user-specified search criteria)

 

(3) If no association name is specified, then search all supported associations.

Knowledge Base/FAQ

How are we performing searches in The NodeGraphResolutionExtensionImpl class

The search is being performed through the text searches available in the CodedNodeSet API and matched to the methods referencing NCI term browser regular and advanced search methods.  This will be wrapped in a hybrid API where coded node entity codes are being referenced for a resolution against the graph database.  The graph database can return enough information to construct basic ConceptReferences containing entity code and namespace attributes.  The current method signature is for Iterator<ConceptReference> and iterates over the parent or child total graph resolution for one or more text search results.  (I’m currently limiting this to 10).  I am working on getting a query into the LexEVS database that provides a prescreening of any text search results that do not have a valid presence in the designated association.  (either does not participate in the relationship or only participates where it’s target or source is anonymous)

Is the graphing database a micro service?

We have implemented a spring boot micro service over the instance of Arangodb which is in turn loaded with graph edges from terminologies.  This micro service has an JSON interface that would be available to users.  This service currently only provides complete resolution of parents or children for a given vertex identifier (entity code).  We could provide other options for this service, but this one allows the high performing return of values and therefore an accurate count where appropriate for a given iterator or list.

Does this include or support LexEVS Coded Node Graph APIs

No coded node graph API would be included in or supported by the micro service.  It will serve up JSON result lists of code/namespace attributes only.

Can it be easily integrated with SPARQL?

We currently load the Arango graph database from LexEVS.  There is no current or compelling reason we can't perform the same load from a triple store. 


  • No labels