001package ca.uhn.hl7v2.conf.store; 002import ca.uhn.hl7v2.conf.ProfileException; 003 004/** 005 * Created on 27-Aug-2003 006 * @author Neal Acharya 007 * Interface used retreiving and validating codes from user defined and HL7 specific tables 008 * that correspond to a conformance profile. 009 */ 010public interface CodeStore { 011 012 /** 013 * @param codeSystem a table of codes (for example, HL70001 for administrative sex) 014 * valid tables are defined in the HL7 table 0396 015 * @return a list of valid codes 016 * @throws ProfileException 017 * 018 * Retreives all codes for a given conformance profile and codeSystem. 019 */ 020 public String[] getValidCodes(String codeSystem) throws ProfileException; 021 022 /** 023 * @param codeSystem 024 * @return boolean 025 * boolean 026 * 027 * Validates the codeSystem against the input conformance profile. If valid then 028 * output is 'true' else 'false'. 029 */ 030 public boolean knowsCodes(String codeSystem); 031 032 /** 033 * @param codeSystem 034 * @param code 035 * @return boolean 036 * boolean 037 * 038 * Validates the input code value against the input conformance profile and corresponding input 039 * codeSystem. Returns true if the code is valid and false if it isn't. 040 */ 041 public boolean isValidCode(String codeSystem, String code); 042 043}//end interface