NIH | National Cancer Institute | NCI Wiki  

The export functions for CTS2 are controlled by the Terminology Administration Profile.

The profile has the following requirements:

  • Exporter must be able to export set of code system associations (mappings).
  • Exporter must be able to export association type instances from a code system while applying filter criteria.
  • Exporter must be able to export a code system (terminology), subset criteria (specific set of concepts and/or associations/maps from the Terminology Server) by filtering the content and converting to the requested format for export (according to the semantic profile of the deployment jurisdiction).

XML exporter exports the LexEVS 6.0 contents (coding scheme and components) from LexEVS database to an XML file. The output XML file will be a valid LGXML file. The process of extracting content from LexEVS is done by using LexEVS 6 APIs. The exporter will also have the ability to export a subset of coding scheme content. Users will be able to provide criteria that will determine what content is returned. An example would be to export only associations. The exporter will stream the content from LexEVS to the XML file. This will allow for large ontologies to be exported. Right now the design to accomplish this is as follows:

  1. Read the CodingScheme object.
  2. Get CodedNodeSet/CodedNodeGraph from the coding scheme.
  3. Add a dummy entity to the coding scheme object.
  4. Add Entities (or associations) by applying the filter criteria.
    1. In the first phase of development two uses cases will be supported:
      1. Export the whole coding scheme
      2. Export only the associations of a coding scheme.
    2. Later, a richer set of user supplied criteria will be supported.
  5. Construct a marshaller that will marshal the selected contents in step 4.
  6. Create a listener that will take the CodedNoteSet, CodedNodeGraph and output file details as parameters.
  7. Add the listener to the marshaller.
  8. Marshal the coding scheme with the created marshaller. During the marshaling processes the listener will call into LexGrid to get contents to further marshal. For example, it will detect our dummy entity object and make a call to LexEVS to get a block of entity objects.
  9. The marshaller and listener will work together to stream the contents to the output file.
  • No labels