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

Panel
titleContents of this Page
Table of Contents
minLevel2

...

Introduction

This document is a section of the LexEVS 6.0 Programmer's Guide. NEEDS UPDATING

...

The LexEVS Value Set Services expose the API particularly for the Value Set Definition elements of the LexGrid Logical Model. For more information on LexGrid model see the LexGrid model schema

LexEVSValueSetDefinitionServices Class Diagram

LexEVSValueSetDefinitionServices is the main interface for all the services provided by LexEVS Value Set API. Here is the class diagram of LexEVSValueSetDefinitionServices:

LexEVS Value Set Definition Services API

LexEVS Value Set Definition Services provides three major functions:

...

Each of these functions are described in following sections.

Administration Functions

LexEVS Value Set Definition Services provide s following administration functions :

...

Note: These administration operations can be performed in LexEVS 'Local' environment only. This can not be performed using LexEVS Distributed environment.

Loading Value Set Definitions

There are two methods that could be used to load Value Set Definitions:

  • Loading Value Set Definition Object - This function provides the capability to load supplied ValueSetDefinition object into the system.
  • Loading Value Set Definitions in file - This function provides the capability to load Value Set Definitions found in file that are in LexGrid XML format.

Loading Value Set Definition Object

This function provides the capability to load supplied ValueSetDefinition object into the system.

...

Step 3: Call the load method by passing the Value Set Definition object and optionally the System Release URI and mappings:
vsdServ.loadValueSetDefinition(vsd, systemReleaseURI, mappings); |

Loading Value Set Definitions in file

This function provides the capability to load Value Set Definitions found in file that are in LexGrid XML format.

...

Panel

vsdServ.loadvalueSetDefinition(inputXMLFile, true); |

Export Value Set

There are two export functions available :
1. Export Value Set Definition - This function provides the capability to export Value Set Definition to a file in LexGrid XML format. This will be helpful if there is a need to import this exported Value Set Definition in different instance of LexEVS.
2. Export Value Set Resolution (Expanded Value Set) - This function provides the capability to resolve the Value Set Definition and exports the resolved(expanded) contents as a LexGrid Coding Scheme in XML format.

Export Value Set Definition

This function provides the capability to export Value Set Definition to a file in LexGrid XML format. This will be helpful if there is a need to import this exported Value Set Definition in different instance of LexEVS.

<u>exportValueSetDefinition(URI valueSetDefURI, String valueSetDefinitionRevisionId, String xmlFullPathName, boolean overwrite, boolean failOnAllErrors)</u>

Description:

Export Value Set Definition to a file in LexGrid XML format.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) the URI of value set definition to be exported.
java.lang.String valueSetDefinitionRevisionId - (Optional) revision id of the value set definition to export
java.lang.String xmlFullPathName - (Mandatory) Location to save the definition

Panel

boolean overwrite - True: to override the existing file.
boolean failOnAllErrors - True: stops exporting if any error. |

Output:

none

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

vsdServ.exportValueSetDefinition(valueSetDefinitionURI, null, true, false); |

Export Value Set Resolution

This function provides the capability to export Value Set Resolution (Expanded Value Set) to a file in LexGrid XML format as a Coding Scheme. This will be helpful if there is a need to import the contents of a value set as a separate Coding Scheme. The URI of the Coding Scheme will be set to URI of Value Set Definition being exported. And all the contents of the value set will be represented as an entities within that Coding Scheme.

<u>exportValueSetResolution(URI valueSetDefinitionURI, String valueSetDefinitionRevisionId, URI exportDestination, AbsoluteCodingSchemeVersionReferenceList csVersionList, String csVersionTag, boolean overwrite, boolean failOnAllErrors)</u>

Description:

Export Value Set Resolution to a file in LexGrid XML format as a Coding Scheme.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) the URI of value set definition to be exported.
java.lang.String valueSetDefinitionRevisionId - (Optional) revision id of the value set definition to export
java.net.URI exportDestination - (Mandatory) Location to save the definition

Panel

org.LexGrid.LexBIG.DataModel.Collections.AbsoluteCodingSchemeVersionReferenceList csVersionList - A list of coding scheme URI's and versions to be used. These will be used only if they are present in the service. If absent, the most recent version will be used instead.
boolean overwrite - True: to override the existing file.
boolean failOnAllErrors - True: stops exporting if any error. |

Output:

none

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

String codingSchemeName = "NCI_Thesaurus";
String version = "10.08e";
AbsoluteCodingSchemeVersionReferenceList csVersionList = new AbsoluteCodingSchemeVersionReferenceList();
csVersionList.addAbsoluteCodingSchemeVersionReference(Constructors.createAbsoluteCodingSchemeVersionReference(codingSchemeName, version));
vsdServ.exportValueSetResolution(valueSetDefinitionURI, null, csVersionList, "PRODUCTION", true, false); |

Remove Value Set Definition

Below is the function to remove value set definition from the system.

<u>{{removeValueSetDefinition(URI valueSetDefinitionURI)</u>}

Description:

Removes supplied value set definition from the system.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) the URI of value set definition to be removed.

Output:

none

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

vsdServ.removeValueSetDefinition(valueSetDefinitionURI); |

Query Functions

Here are some of the query functions that can be run against value set definitions using the LexEVS Value Set Definition Services.

Validate XML resources

Function to perform validation of source XML file without loading.

<u>validate(URI xmlFileLocation, int valicationLevel)</u>

Description:

Performs validation of the candidate resource without loading data.

Input:

...

java.net URI xmlFileLocation - (Mandatory) File containing ValueSetDefinitions in LexGrid XML format.
int validationLevel - validatation level includes :

  • 0 = Verify document is well-formed
  • 1 = Verify document is valid

...

Output:

none

Exception:

Org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

java.net URI xmlFileLocation = new URI("C:
myVSDFile.xml");

vsdServ.validaten(xmlFileLocation, true); |

isEntityInValueSet

There are two methods to check if supplied concept code is part of supplied value set definition.

<u>isEntityInValueSet(String entityCode, URI valueSetDefinitionURI, String valueSetDefinitionRevisionId, String versionTag)</u>

Description:

Determine whether the supplied entity code is a valid entity code somewhere in the supplied value set definition. This function is intended for use with simple value set definition that are drawn from a single coding scheme where most parameters can be defaulted.

Input:

java.lang.String entityCode - (Mandatory) the entity code to search for
java.net.URI valueSetDefinitionURI - (Mandatory) the URI of the value set definition to search
java.lang.String valueSetDefintionRevisionId - (Optional) the version of the value set definition
java.lang.String versionTag - (Optional) the version or tag (e.g. "devel", "production", etc.) to be used for <i>all</i> of the coding schemes searched.

...

Output:

org.LexGrid.LexBIG.DataModel.Core.AbsoluteCodingSchemeVersionReference - coding scheme and version if the entityCode is valid, null otherwise |

...

Panel

java.net.URI valueSetDefURI = new URI("http://someDomain.html/ValueSets/NCIT/C3367_Value_set");
String entityCode = "C3367";

'' AbsoluteCodingSchemeVersionReference acsvr = vsdServ.isEntityInValueSet(entityCode, valueSetDefURI, null, "PRODUCTION"); |<u>

isEntityInValueSet(String entityCode, URI entityCodeNamespace, URI valueSetDefinitionURI, String valueSetDefinitionRevisionId, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag)

...

h4. isEntityInValueSet(String entityCode, URI entityCodeNamespace, URI valueSetDefinitionURI, String valueSetDefinitionRevisionId, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag)

Description:

Similar to the previous method, this

Description:

Similar to the previous method, this method determines if the supplied entity code and entity namespace is a valid result for the supplied value set definition when resolved against the supplied Coding Scheme Version or Tag.

Input:

java.lang.String entityCode - (Mandatory) the entity code to search for
java.net.URI entityCodeNamespace - (Optional)the URI of the entity code namespace. If omitted, the default coding scheme namespace for the value set definition will be used, if it is present. Otherwise the first matching entity code, if any, will pass
java.net.URI valueSetDefinitionURI - (Mandatory) the URI of the value set definition to search
java.lang.String valueSetDefintionRevisionId - (Optional) the version of the value set definition
org.LexGrid.LexBIG.DataModel.Core. AbsoluteCodingSchemeVersionReference csVersionList - (Optional) a list of coding scheme URI's and versions to be used. These will be used only if they are present in the service. If absent, the most recent version will be used instead.
java.lang.String versionTag - (Optional) the version or tag (e.g. "devel", "production", etc.) to be used for <i>all</i> of the coding schemes searched.

...

Output:

org.LexGrid.LexBIG.DataModel.Core. AbsoluteCodingSchemeVersionReference - The codingScheme URI and version of that asserts that the code is in the value set

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

java.net.URI valueSetDefURI = new URI("http://someDomain.html/ValueSets/NCIT/C3367_Value_set");
String codingSchemeName = "NCI_Thesaurus";
String version = "10.08e";
String entityCode = "C3367";
String entityCodeNamespace = "NCI_Thesaurus";
AbsoluteCodingSchemeVersionReferenceList csVersionList = new AbsoluteCodingSchemeVersionReferenceList();
csVersionList.addAbsoluteCodingSchemeVersionReference(Constructors.createAbsoluteCodingSchemeVersionReference(codingSchemeName, version));

'' AbsoluteCodingSchemeVersionReference acsvr = vsdServ.isEntityInValueSet(entityCode, entityCodeNamespace, valueSetDefURI, null, csVersionList, "PRODUCTION"); |

listValueSetsWithEntityCode

Returns all the value set definition uris that contains supplied entity code.

<u>listValueSetsWithEntityCode(String entityCode, URI entityCodeNamespace, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag)</u>

Description:

Returns all the value set definition uris that contains supplied entity code.

Input:

java.lang.String entityCode - (Mandatory) the entity code to search for
java.net.URI entityCodeNamespace - (Optional)the URI of the entity code namespace. If omitted, the default coding scheme namespace for the value set definition will be used, if it is present. Otherwise the first matching entity code, if any, will pass
org.LexGrid.LexBIG.DataModel.Core. AbsoluteCodingSchemeVersionReference csVersionList - (Optional) a list of coding scheme URI's and versions to be used. These will be used only if they are present in the service. If absent, the most recent version will be used instead.
java.lang.String versionTag - (Optional) the version or tag (e.g. "devel", "production", etc.) to be used for <i>all</i> of the coding schemes searched.

...

Output:

java.util.List<String> - list of value set definition URIs that contain supplied entity code

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

String codingSchemeName = "NCI_Thesaurus";
String version = "10.08e";
String entityCode = "C3367";
String entityCodeNamespace = "NCI_Thesaurus";
AbsoluteCodingSchemeVersionReferenceList csVersionList = new AbsoluteCodingSchemeVersionReferenceList();
csVersionList.addAbsoluteCodingSchemeVersionReference(Constructors.createAbsoluteCodingSchemeVersionReference(codingSchemeName, version));

'' AbsoluteCodingSchemeVersionReference acsvr = vsdServ.listValueSetsWithEntityCode(entityCode, entityCodeNamespace, csVersionList, "PRODUCTION"); |

getCodedNodeSetForValueSetDefinition

Returns unresolved CodedNodeSet populated using definition entries in the value set definition.

<u>getCodedNodeSetForValueSetDefinition(URI valueSetDefinitionURI, String valueSetDefinitionRevisionId, AbsoluteCodingSchemeVersionReferenceList csVersionList, String csVersionTag)</u>

Description:

Returns unresolved CodedNodeSet populated using definition entries in the value set definition.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) the URI of the value set definition
java.lang.String valueSetDefintionRevisionId - (Optional) the version of the value set definition
org.LexGrid.LexBIG.DataModel.Core. AbsoluteCodingSchemeVersionReference csVersionList - (Optional) a list of coding scheme URI's and versions to be used. These will be used only if they are present in the service. If absent, the most recent version will be used instead.
java.lang.String versionTag - (Optional) the version or tag (e.g. "devel", "production", etc.) to be used for <i>all</i> of the coding schemes searched.

...

Output:

org.lexgrid.valuesets.dto.ResolvedValueSetCodedNodeSet - Unresolved CodedNodeSet populated using definition entries in the value set definition.

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

java.net.URI valueSetDefURI = new URI("http://someDomain.html/ValueSets/NCIT/C3367_Value_set");
String codingSchemeName = "NCI_Thesaurus";
String version = "10.08e";
AbsoluteCodingSchemeVersionReferenceList csVersionList = new AbsoluteCodingSchemeVersionReferenceList();
csVersionList.addAbsoluteCodingSchemeVersionReference(Constructors.createAbsoluteCodingSchemeVersionReference(codingSchemeName, version));

'' ResolvedValueSetCodedNodeSet rvsCNS = vsdServ.getCodedNodeSetForValueSetDefinition(valueSetDefURI, null, csVersionList, "PRODUCTION"); |

isSubSet

This method checks if childValueSetDefinition is a sub set of parentValueSetDefinition.

<u>isSubSet(URI childValueSetDefinitionURI, URI parentValueSetDefinitionURI, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag)</u>

Description:

Checks whether childValueSetDefinition is a sub set of parentValueSetDefinition

Input:

java.net.URI childValueSetDefinitionURI - (Mandatory) child value set definition URI
java.net.URI parentValueSetDefinitionURI- (Mandatory) parent value set definition URI
org.LexGrid.LexBIG.DataModel.Core. AbsoluteCodingSchemeVersionReference csVersionList - (Optional) a list of coding scheme URI's and versions to be used. These will be used only if they are present in the service. If absent, the most recent version will be used instead.
java.lang.String versionTag - (Optional) the version or tag (e.g. "devel", "production", etc.) to be used for <i>all</i> of the coding schemes searched.

...

Output:

boolean - YES, if all the elements of the child value set are in the parent value set. NO otherwise.

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

java.net.URI childValueSetDefinitionURI = new URI("http://someDomain.html/ValueSets/NCIT/Child_Value_set");
java.net.URI parentValueSetDefinitionURI = new URI("http://someDomain.html/ValueSets/NCIT/Parent_Value_set");
String codingSchemeName = "NCI_Thesaurus";
String version = "10.08e";
AbsoluteCodingSchemeVersionReferenceList csVersionList = new AbsoluteCodingSchemeVersionReferenceList();
csVersionList.addAbsoluteCodingSchemeVersionReference(Constructors.createAbsoluteCodingSchemeVersionReference(codingSchemeName, version));

'' boolean isSubSet = vsdServ.isSubSet(childValueSetDefinitionURI, parentValueSetDefinitionURI, csVersionList, "PRODUCTION"); |

getValueSetDefinition

Utility method that returns value set definition object for the supplied value set URI.

<u>getValueSetDefinition(URI valueSetDefinitionURI, String valueSetDefinitionRevisionId)</u>

Description:

Returns value set definition object for the supplied value set definition URI.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) value set definition URI
java.lang.String valueSetDefinitionRevisionId - (Optional) the version of the value set definition

...

Output:

org.LexGrid.valueSets.ValueSetDefinition - value set definition object

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Step 2: Call getValueSetDefinition method:

Panel

'' org.LexGrid.valueSets.ValueSetDefinition vsDef = vsdServ.getValueSetDefinition(valueSetDefinitionURI, null); |

listValueSetDefinitions

Utility method that lists all the URI's of the value set definition(s) for the supplied value set definition name. If the name is null, returns everything. If the name is not null, returns the value set definition(s) that have the assigned name.

<u>listValueSetDefinitions(String valueSetDefinitionName)</u>

Description:

Returns the URI's of the value set definition(s) for the supplied name. If the name is null, returns everything. If the name is not null, returns the value set definition(s) that have the assigned name.

Note: plural because there is no guarantee of Value Set Definition name uniqueness. If the name is the empty string "", returns all unnamed valueSetDefinition(s). |

Input:

java.lang.String valueSetDefinitionName - (Optional) name of the value set definition. If null, returns URIs all the value set definition(s) in the system, if empty string "", returns all unnamed value set definition URIs. If name is provided, returns value set definition uris with the name that matches supplied valueSetDefinitionName.

...

Output:

java.util.List<String> - List of matching value set definition uris

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Step 2: Call listValueSetDefinitions method:
'' List<String> uris = vsdServ.listValueSetDefinitions("someValueSetDefinitionName"); |

listValueSetDefinitionURIs

Utility method that lists all the URI's of the value set definition(s) that are loaded in the system.

<u>listValueSetDefinitionURIs()</u>

Description:

Returns all the URI's of the value set definition(s) that are loaded in the system.

Input:

none

Output:

java.util.List<String> - List of all the value set definition uris available in the system

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Step 2: Call listValueSetDefinitionURIs method:
'' List<String> uris = vsdServ.listValueSetDefinitionURIs(); |

getAllValueSetDefinitionsWithNoNames

This method returns all the value set definition URI's that contains no names.

<u>getAllValueSetDefinitionsWithNoNames()</u>

Description:

Returns the URI's of all unnamed value set definition(s).

Input:

none

Output:

java.util.List<String> - List of all unnamed value set definitions URI's

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

''List<String> uris = vsdServ.getAllValueSetDefinitionsWithNoNames(); |

getValueSetDefinitionEntitiesForTerm

This method resolves the supplied value set definition and returns only those concept codes that matches the supplied term.

<u>getValueSetDefinitionEntitiesForTerm(String term, String matchAlgorithm, URI valueSetDefinitionURI, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag)</u>

Description:

Resolves the value set definition supplied and restricts it to the term and matchAlgorith supplied. The returned object ResolvedValueSetCodedNodeSet contains the codingScheme URI and Version that was used to resolve and the CodedNodeSet.

...

Info
titleNote

...

The CodedNodeSet is unresolved

...

.

Input:

java.lang.String term - (Mandatory) text to match. Format is specific to the match algorithm
java.lang.String matchAlgorithm - (Optional) match algorithm to use. Must be the name of a supported match algorithm. Default - Lucene Query
java.net.URI valueSetDefinitionURI - (Mandatory) value set definition to resolve
org.LexGrid.LexBIG.DataModel.Core. AbsoluteCodingSchemeVersionReference csVersionList - (Optional) a list of coding scheme URI's and versions to be used. These will be used only if they are present in the service. If absent, the most recent version will be used instead.
java.lang.String versionTag - (Optional) the version or tag (e.g. "devel", "production", etc.) to be used for <i>all</i> of the coding schemes searched.

...

Output:

org.lexgrid.valuesets.dto.ResolvedValueSetCodedNodeSet - contains the codingScheme URI and Version that was used to resolve and the unresolved CodedNodeSet.

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

ResolvedValueSetCodedNodeSet vsvns = vsdServ.getValueSetDefinitionEntitiesForTerm ("General Motors", MatchAlgorithms.exactMatch.name(), new URI("AUTO:AllDomesticANDGM"), csVersionList, "PRODUCTION"); |

getCodingSchemesInValueSetDefinition

This method returns all the coding scheme referenced by supplied value set definition.

<u>getCodingSchemesInValueSetDefinition(URI valueSetDefinitionURI)</u>

Description:

Returns list of coding scheme summary that is referenced by the supplied value set definition.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) value set definition uri

...

Output:

org.LexGrid.LexBIG.DataModel.Collections.AbsoluteCodingSchemeVersionReferenceList - list of coding scheme summary referenced by the supplied value set definition

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

AbsoluteCodingSchemeVersionReferenceList csvList = vsdServ.getCodingSchemesInValueSetDefinition(new URI("AUTO:AllDomesticANDGM")); |

isValueSetDefinition

This method checks if the supplied entityCode is of type 'valueSetDefinition' in supplued coding scheme and version.

<u>isValueSetDefinition(String entityCode, String codingSchemeName, CodingSchemeVersionOrTag csvt)</u>

Description:

Determines if the supplied entity code is of type valueSetDefinition in the supplied coding scheme and, if it is, returns true; otherwise returns false.

Input:

...

java.lang.String entityCode - (Mandatory) entity code
java.lang.String codingSchemeName - (Mandatory) name of coding scheme
org.LexGrid.LexBIG.DataModel.Core.CodingSchemeVersionOrTag csvt - (Optional) coding scheme version or tag

...

Output:

boolean - TRUE : If entityCode is of type valueSetDefinition in supplied coding scheme, FALSE : otherwise

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Step 2: Call isValueSetDefinition method:
boolean isVSD = vsdServ.isValueSetDefinition("VSD005", "Automobiles", Constructors.createCodingSchemeVersionOrTag(null, "1.1")); |

getValueSetDefinitionURIsWithCodingScheme

This method returns a list of Value Set Definition URIs that references supplied coding scheme.

<u>getValueSetDefinitionURIsWithCodingScheme(String codingSchemename, String codingSchemeURI)</u>

Description:

Returns a list of Value Set Definition URIs that references supplied coding scheme.

Input:

...

java.lang.String codingSchemename - (Mandatory) Name of coding scheme to check
java.lang.String codingSchemeURI - (Mandatory) URI of coding scheme that codingSchemename belongs to

...

Output:

java.util.List<String> - List of value set definition URIs that references the supplied coding scheme name

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

List<String> uris = vsdServ.getValueSetDefinitionURIsWithCodingScheme("Automobiles", "urn:oid:11.11.0.1"); |

getValueSetDefinitionURIsWithConceptDomain

This method returns a list of Value Set Definition URIs that are bound to supplied concept domain.

<u>{{getValueSetDefinitionURIsWithConceptDomain(String conceptDomain, String codingSchemeURI)</u>}

Description:

Returns a list of Value Set Definition URIs that are bound to supplied concept domain.

Input:

...

java.lang.String conceptDomain- (Mandatory) name or uri of concept domain to check
java.lang.String codingSchemeURI - (Mandatory) URI of coding scheme that concept domain belongs to

...

Output:

java.util.List<String> - List of value set definition URIs that are bound to supplied concept domain

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

List<String> uris = vsdServ.getValueSetDefinitionURIsWithConceptDomain("Autos", "urn:oid:11.11.0.1"); |

getValueSetDefinitionURIsWithUsageContext

This method returns a list of Value Set Definition URIs that references supplied list of usage context(s).

<u>getValueSetDefinitionURIsWithUsageContext(List<String> usageContexts, String codingSchemeURI)</u>

Description:

Returns a list of Value Set Definition URIs that references supplied list of usage context(s).

Input:

...

java.util.List<java.lang.String> usageContexts- (Mandatory) list of name or uri of usage context to check
java.lang.String codingSchemeURI - (Mandatory) URI of coding scheme that usage context belongs to

...

Output:

java.util.List<String> - List of value set definition URIs that references the supplied list of usage context

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

List<String> usageContexts = new ArrayList<String>();
usageContexts.add("Automobiles");
''usageContexts.add("Domestic Auto Makers");
List<String> uris = vsdServ.getValueSetDefinitionURIsWithUsageContext(usageContexts, "urn:oid:11.11.0.1"); |

getValueSetDefinitionURIsWithConceptDomainAndUsageContext

This method Returns list of Value Set Definition URIs that are bound to supplied concept domain and in supplied usage context.

<u>getValueSetDefinitionURIsWithConceptDomainAndUsageContext(String conceptDomain, List<String> usageContexts, String codingSchemeURI)</u>

Description:

Returns list of Value Set Definition URIs that are bound to supplied concept domain and in supplied usage context.

Input:

...

java.lang.String conceptDomain - (Mandatory) name or uri of concept domain to check
java.util.List<java.lang.String> usageContexts- (Mandatory) list of name or uri of usage context to check
java.lang.String codingSchemeURI - (Mandatory) URI of coding scheme that usage context and concept domain belongs to

...

Output:

java.util.List<String> - List of value set definition URIs that are bound to supplied concept domain and references the supplied list of usage context

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

List<String> usageContexts = new ArrayList<String>();
usageContexts.add("Automobiles");
''usageContexts.add("Domestic Auto Makers");
List<String> uris = vsdServ.getValueSetDefinitionURIsWithConceptDomainAndUsageContext("Autos", usageContexts, "urn:oid:11.11.0.1"); |

Resolve Functions

Rsolve functions provides the capability to resolve the value set definition against specific coding scheme version and get back the list of entities that belongs to the value set. If no coding scheme version is provided, the API will pick the latest version of the coding scheme.

...

  • Resolve Stored Value Set Definition - This function allows you to resolve value set definition that are loaded in the system.
  • Resolve Supplied Value Set Definition - This function allows you to pass a ValueSetDefinition object that may not be loaded in the system and get it resolved.

Resolving Stored Value Set Definition

This function resolves the value set definition that is loaded in the system and returns set of valied concept codes plus the code systems and its versions that were used.

<u>resolveValueSetDefinition(URI valueSetDefinitionURI, String valueSetDefinitionRevisionId, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag, SortOptionList sortOptionList)</u>

Description:

Resolves a value set definition that is available in the system using the supplied set of coding scheme versions.

Input:

java.net.URI valueSetDefinitionURI - (Mandatory) value set definition uri to resolve
java.lang.String valueSetDefinitionRevisionId - (Optional) version of value set definition
org.LexGrid.LexBIG.DataModel.Core.AbsoluteCodingSchemeVersionReferenceList csVersionList - (Optional) list of coding scheme versions to use in resolution. IF the value set definition uses a version that isn't mentioned in this list, the resolve function will return the codingScheme and version that was used as a default for the resolution.
java.lang.String versionTag - (Optional) the tag (e.g. "devel", "production", ...) to be used to determine which coding scheme to be used

...

_org.LexGrid.LexBIG.DataModel.Collections.SortOptionList" sortOptionList - (Optional) List of sort options to apply during resolution. If supplied, the sort algorithms will be applied in the order provided. Any algorithms not valid to be applied in context of node set iteration, as specified in the sort extension description, will result in a parameter exception. Available algorithms can be retrieved through the LexBIGService getSortExtensions() method after being defined to the LexBIGServiceManager extension registry.

...

Output:

org.lexgrid.valuesets.dto.ResolvedValueSetDefinition - Resolved Value Set Definition

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

ResolvedValueSetDefinition rvdDef = vsdServ.resolveValueSetDefinition(new URI("SRITEST:AUTO:AllDomesticANDGM1"), null, csvList, "PRODUCTION", null); |

Resolving Supplied Value Set Definition Objects

This function resolves the value set definition that is supplied against the supplied coding scheme version(s) and returns set of valied concept codes plus the code systems and its versions that were used.

<u>resolveValueSetDefinition(ValueSetDefinition vsDef, AbsoluteCodingSchemeVersionReferenceList csVersionList, String versionTag, SortOptionList sortOptionList)</u>

Description:

Resolves a value set definition that is supplied using the supplied set of coding scheme version(s).

Input:

org.LexGrid.valueSets.ValueSetDefinition vsDef- (Mandatory) value set definition object to resolve
org.LexGrid.LexBIG.DataModel.Core.AbsoluteCodingSchemeVersionReferenceList csVersionList - (Optional) list of coding scheme versions to use in resolution. IF the value set definition uses a version that isn't mentioned in this list, the resolve function will return the codingScheme and version that was used as a default for the resolution.
java.lang.String versionTag - (Optional) the tag (e.g. "devel", "production", ...) to be used to determine which coding scheme to be used

...

_org.LexGrid.LexBIG.DataModel.Collections.SortOptionList" sortOptionList - (Optional) List of sort options to apply during resolution. If supplied, the sort algorithms will be applied in the order provided. Any algorithms not valid to be applied in context of node set iteration, as specified in the sort extension description, will result in a parameter exception. Available algorithms can be retrieved through the LexBIGService getSortExtensions() method after being defined to the LexBIGServiceManager extension registry.

...

Output:

org.lexgrid.valuesets.dto.ResolvedValueSetDefinition - Resolved Value Set Definition

...

Exception:

org.LexGrid.LexBIG.Exceptions.LBException

Implementation Details:

Implementation:

...

Panel

ResolvedValueSetDefinition rvdDef = vsdServ.resolveValueSetDefinition(vsd, csvList, "PRODUCTION", null); |

Resolved Value Set Objects

ResolvedValueSetCodedNodeSet

Contains Coding Scheme Version reference list that was used to resolve the Value Set Definition and the CodedNodeSet.
Note: The CodedNodeSet is not resolved.

ResolvedValueSetDefinition

A resolved Value Set Definition containing the Coding Scheme Version reference list that was used to resolve the Value Set Definition and an iterator for resolved concepts.

Error Handling

LexEVS Value Set Definition services uses org.LexGrid.LexBIG.Impl.loaders.MessageDirector to direct all fatal, error, warning, info messages with appropriate messages to the LexBIG log files in the 'log' folder of LexEVS install directory.

Along with MessageDirector, the services will also make use of org.LexGrid.LexBIG.exception.LBException to throw any fatal and error messages to the log file as well as to the console.

Load Scripts

Following are the scripts that can be used to load value set definition that are in LexGrid XML format into the system :

...

Panel

sh LoadValueSetDefinition.sh -in "file:///path/to/file.xml"

Sample Value Set Definition XML file

Below is a sample XML file containing Value Set Definitions in LexGrid format that can be loaded using LexEVS Value Set Definition Service.

<source>

Code Block

<?xml version="1.0" encoding="UTF-8"?>

...


<lgVD:valueSetDefinition  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

...

Panel

{panel}
    xsi:schemaLocation="http://LexGrid.org/schema/2010/01/LexGrid/versions http://LexGrid.org/schema/2010/01/LexGrid/versions.xsd
Image Removed
"


    xmlns="http://LexGrid.org/schema/2010/01/LexGrid/versions"


    xmlns:lgVer="http://LexGrid.org/schema/2010/01/LexGrid/versions"


    xmlns:lgCommon="http://LexGrid.org/schema/2010/01/LexGrid/commonTypes"


    xmlns:data="data"


    xmlns:lgVD="http://LexGrid.org/schema/2010/01/LexGrid/valueSets"


    xmlns:lgNaming="http://LexGrid.org/schema/2010/01/LexGrid/naming"


    valueSetDefinitionURI="SRITEST:AUTO:PropertyRefTest1-VSDONLY" valueSetDefinitionName="Property Reference Test 1" defaultCodingScheme="Automobiles" effectiveDate="2009-01-01T11:00:00Z" isActive="true" status="ACTIVE">


    <lgVD:mappings>


        <lgNaming:supportedCodingScheme localId="Automobiles" uri="urn:oid:11.11.0.1"></lgNaming:supportedCodingScheme>


        <lgNaming:supportedConceptDomain localId="Autos">Autos</lgNaming:supportedConceptDomain>


        <lgNaming:supportedSource localId="GM">GM</lgNaming:supportedSource>


        <lgNaming:supportedSource localId="Ford">Ford</lgNaming:supportedSource>


    </lgVD:mappings>


    <lgVD:source role="role1" subRef="subRef1">GM</lgVD:source>


    <lgVD:source role="role2" subRef="subRef2">Ford</lgVD:source>


    <lgVD:representsRealmOrContext>Automobiles</lgVD:representsRealmOrContext>


    <lgVD:representsRealmOrContext>Ford</lgVD:representsRealmOrContext>


    <lgVD:representsRealmOrContext>GM</lgVD:representsRealmOrContext>


    <lgVD:properties>


        <lgCommon:property propertyName="textualPresentation">


            <lgCommon:source role="PropRole1" subRef="PropSubRef1">GM</lgCommon:source>


            <lgCommon:source role="PropRole2" subRef="PropSubRef2">Ford</lgCommon:source>


            <lgCommon:usageContext>PropUsageContext GM</lgCommon:usageContext>


            <lgCommon:usageContext>PropUsageContext Ford</lgCommon:usageContext>


            <lgCommon:propertyQualifier propertyQualifierName="PropQual1Namuuuuu" propertyQualifierType="PQual Type 1">


                <lgCommon:value dataType="text">PropQualValue GM</lgCommon:value>


            </lgCommon:propertyQualifier>


            <lgCommon:propertyQualifier propertyQualifierName="PropQual2Namuuuuu" propertyQualifierType="PQual Type 2">


                <lgCommon:value dataType="text">PropQualValue Ford</lgCommon
:value>
:value>
            </lgCommon:propertyQualifier>


            <lgCommon:value>All Automobiles nodes</lgCommon:value>


        </lgCommon:property>


    </lgVD:properties>


    <lgVD:definitionEntry ruleOrder="1" operator="OR">


        <lgVD:propertyReference codingScheme="Automobiles">


            <lgVD:propertyMatchValue matchAlgorithm="LuceneQuery">General</lgVD:propertyMatchValue>


        </lgVD:propertyReference>


    </lgVD:definitionEntry>

{panel}
</lgVD:valueSetDefinition>

</source>

System Testing

The System test case for the LexEVS Value Set Definition service is performed using the JUnit test suite:

...

This test suite will be run as part of regular LexEVS test suites AllTestsAllConfigs and AllTestsNormalConfigs.

Installation / Packaging

Value Set Definition Services are integrated parts of core LexEVS API and are packaged and installed with other LexEVS services.

Value Set GUI

Visit LexEVS 6.0 Value Set GUI for detailed functionality and howto's about using Value Sets developer GUI tool</html>

Scrollbar
iconsfalse