CTS2 Links for LexEVS 6.0 |
---|
Introduction
LexEVS CTS2 Code System Authoring API provides capability to author Code System and its contents.
Here are the authoring functions that can be performed on code system and its contents:
- Create - This function provides capability to create:
- New Code System
- Add new property to Code System
- New Concept
- Add new property to Concept
- New AssociationType
- New Code System Suppliment
- Edit - This function provides capability to update:
- Code System metadata
- Property of a Code System
- Concept metadata
- Property of a Concept
- AssociationType
- Remove - This function provides capability to remove:
- Entire Code System
- Property of a Code System
- Concept
- Property of a Concept
- Status Change - This function provides capability to update Status attributes:
- Code System Status
- Concept Status
Interface
org.lexevs.cts2.author.CodeSystemAuthoringOperation is the main interface for all the authoring operations against Code System. This interface can be accessed using main LexEVSCTS2 interface, like:
org.lexevs.cts2.author.CodeSystemAuthoringOperation csAuthOp = new org.lexevs.cts2.LexEvsCTS2Impl().getAuthoringOperation().getCodeSystemAuthoringOperation();
Revision Information
All the authoring functions described here requires information about the author and revision/version id to be assigned to entities for each of these operations. These is done passing object
org.lexevs.cts2.core.update.RevisionInfo RevisionInfo object has following attributes:
- java.lang.String changeAgent - (Optional) The source that participated in this particular change.
- java.lang.String changeInstruction - (Optional) A human or machine readable set of instructions on how to apply this change.
- java.lang.String revisionId - (Mandatory) The unique identifier of this revision.
- java.lang.Long editOrder - (Optional) The relative order that this revision is to be applied if in a systemRelease.
- java.util.Date revisionDate - (Optional) The end date for which this version is operative (considered commited).
- java.lang.String description - (Optional) The description of the resource/change.
- java.lang.String systemReleaseURI - (Optional) The official URI of this release
Authoring Functions
Following sections contains detailed functions provided by CodeSystemAuthoringOperation interface.
Create Operations
Create Operation provides capability to create Code System, Concept, AssociationType, Property and Code System Suppliment. For every entry that gets created, a unique revision(version) identifier will be assigned to that entry. This helps in retrieving snapshots of an entry based on its revision(version) identifier. This unique id can be passed in using the RevisionInfo object described above.
createCodeSystem
This function provides capability to create a new Code System to contain a set of new coded concepts. The Code System is created by defining the set of meta-data properties that describe it. At this point there no concepts are added.
createCodeSystem(RevisionInfo revision, String codingSchemeName, String codingSchemeURI, String formalName, String defaultLanguage, long approxNumConcepts, String representsVersion, List<String> localNameList, List<org.LexGrid.commonTypes.Source> sourceList, Text copyright, Mappings mappings)
Description: |
Creates new coding system. |
---|---|
Input: |
|
Output: |
org.LexGrid.codingSchemes.CodingScheme - Created Code System |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
addCodeSystemProperties
This function provides capability to add new properties to Code System.
addCodeSystemProperties(RevisionInfo revision, String codingSchemeName, String codingSchemeURI, String representsVersion, Properties properties)
Description: |
Adds new properties to code system. |
---|---|
Input: |
|
Output: |
org.LexGrid.codingSchemes.CodingScheme - Updated Code System |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
createCodeSystemSuppliment
This function creates a new Code System Supplement as a container of a set of concepts and concept properties to be appended to a target code system. This function does not add the concepts and properties.
createCodeSystemSuppliment(AbsoluteCodingSchemeVersionReference parent, AbsoluteCodingSchemeVersionReference supplement)
Description: |
Creates a new Code System Supplement as a container of a set of concepts and concept properties to be appended to a target code system. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.lexevs.cts2.exception.author.InvalidCodeSystemSupplementException |
Sample Call: |
|
createConcept
This function creates a concept to be included in a Code System. The new concept is defined by the set of meta-data properties that describe it.
createConcept(String codingSchemeUri, String codeSystemVersion, String conceptCode, String namespace, RevisionInfo revision)
Description: |
Creates new concept in a code system. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
addNewConceptProperty
This function provides capability to add a new property to a concept.
addNewConceptProperty(String codingSchemeUri, String codeSystemVersion, String conceptCode, String namespace, Property property, RevisionInfo revision)
Description: |
Adds a new property to a concept. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
createAssociationType
This function provides capability to create a new association type, an instance of which may be used to link two concepts.
createAssociationType(String codingSchemeUri, String codeSystemVersion, String relationsContainerName, String associationName, String forwardName, String reverseName, Boolean isNavigable, Boolean isTransitive, RevisionInfo revision)
Description: |
Creates new association type. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
Edit Operations
The edit operation provides the capability to modify existing code system resources like code system metadata, property, concept, association type etc. For every entry that gets modified, a unique revision(version) identifier will be assigned to that entry. This helps in retrieving snapshots of an entry based on its revision(version) identifier. This unique id can be passed in using the RevisionInfo object described above.
updateCodeSystem
This function provides capability to modify the meta-data that describes the Code System. This method takes in any changes to the meta-data as a form of input parameters. If 'null' no changes will be performed on that particular attribute.
updateCodeSystem(RevisionInfo revision, String codingSchemeName, String codingSchemeURI, String formalName, String defaultLanguage, long approxNumConcepts, String representsVersion, List<String> localNameList, List<org.LexGrid.commonTypes.Source> sourceList, Text copyright, Mappings mappings)
Description: |
Modify the meta-data that describes the Code System. |
---|---|
Input: |
|
Output: |
org.LexGrid.codingSchemes.CodingScheme - Modified Code System |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
updateCodeSystemProperties
This function provides capability to update properties of a Code System.
updateCodeSystemProperties(RevisionInfo revision, String codingSchemeName, String codingSchemeURI, String representsVersion, Properties properties)'
Description: |
Updates properties of a code system. |
---|---|
Input: |
|
Output: |
org.LexGrid.codingSchemes.CodingScheme - Updated Code System |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
updateConcept
This function provides capability to modify existing concept in a Code System.
updateConcept(String codingSchemeUri, String codeSystemVersion, Entity entity, RevisionInfo revisionInfo)
Description: |
Modified an existing concept in a code system. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
updateConceptProperty
This function provides capability to modify existing property of a concept.
updateConceptProperty(String codingSchemeUri, String codeSystemVersion, String conceptCode, String namespace, Property property, RevisionInfo revision)
Description: |
Modifies existing property of a concept. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
updateAssociationType
This function provides capability to modify existing association type.
updateAssociationType(String codingSchemeUri, String codeSystemVersion, AssociationEntity associationEntity, RevisionInfo revision)
Description: |
Modifies existing association type. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
Remove Operations
Remove operation provides capability to remove code system and its contents.
removeCodeSystem
This function provides capability to remove entire code system from terminology service.
removeCodeSystem(RevisionInfo revision, String codingSchemeURI, String representsVersion)
Description: |
Remove entire code system from terminology service. |
---|---|
Input: |
|
Output: |
boolean - True means deletion was success, otherwise false. |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
removeCodeSystemProperty
This function provides capability to remove property of a Code System.
removeCodeSystemProperty(RevisionInfo revision, String codingSchemeURI, String representsVersion, String propertyId)
Description: |
Removes a property of a Code System |
---|---|
Input: |
|
Output: |
org.LexGrid.codingSchemes.CodingScheme - Updated Code System |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
deleteConcept
This function provides capability to remove a concept from code system.
deleteConcept(String codingSchemeUri, String codeSystemVersion, String conceptCode, String namespace, RevisionInfo revision)
Description: |
Removes a concept from code system. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
deleteConceptProperty
This function provides capability to remove property of a concept.
deleteConceptProperty(String codingSchemeUri, String codeSystemVersion, String conceptCode, String namespace, Property property, RevisionInfo revision)
Description: |
Removes a property of a concept. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
Status Change Operations
Status Change operations provides the capability to change the status a code system or a concept. Status could anything like: isActive, retired, published, pending etc. There is also a flag called 'isActive' that is associated with both code system and concept meta-data that can be changed using this function as well.
'isActive' flag: True means that this resource is searchable and browsable if the temporal context of the operation falls between effectiveDate and expirationDate. False means that this resource is only accessible if requested by id or by a search that specifies that inactive retrievals are allowed. Default: True
updateCodeSystemVersionStatus
This function modifies the status of a code system.
updateCodeSystemVersionStatus(String codingSchemeURI, String codeSystemVersion, String status, Boolean isActive, RevisionInfo revision)
Description: |
Modifies the status of a code system. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|
updateConceptStatus
This function modifies the status of a concept.
updateConceptStatus(String codingSchemeUri, String codeSystemVersion, String conceptCode, String namespace,String status,Boolean isActive, RevisionInfo revisionInfo)
Description: |
Modifies the status of a concept. |
---|---|
Input: |
|
Output: |
None |
Exception: |
org.LexGrid.LexBIG.Exceptions.LBException |
Sample Call: |
|