#!/usr/bin/python3.5 # -*-coding:Utf-8 -* #============================================================================== # TENET: config #------------------------------------------------------------------------------ # Class grouping the configuration data #============================================================================== #============================================================================== # Importing required modules #============================================================================== from lxml import etree #============================================================================== # Default Values #============================================================================== # Dev Tests req_100 = "CCTP-SRSA-IP-20210831-R100/" req_200 = "CCTP-SRSA-IP-20210831-R200/" req_300 = "CCTP-SRSA-IP-20210831-R300/" req_1100 = "CCTP-SRSA-IP-20210831-R1100/" corpus_40 = "CCTP-SRSA-IP-20210831/" corpus_ERTMS = "ERTMS/" corpus_PEV = "PEV-RSE-Approach/" #============================================================================== # Class #============================================================================== class Config: """Configuration data for Tenet process """ def __init__(self, config_file, source_corpus, source_ref, target_ref): # -- Config XML Tree config_tree = etree.parse(config_file) # -- Source and Target self.source_corpus = source_corpus self.source_ref = source_ref self.target_ref = target_ref # -- Working directories c_dir = config_tree.xpath("directory")[0] self.config_dir = c_dir.get("config") self.frame_dir = c_dir.get("frame") self.corpus_dir = c_dir.get("corpus") self.cts_dir = c_dir.get("cts") self.output_dir = c_dir.get("output") # -- Config File Definition c_file = config_tree.xpath("file")[0] self.schema_file = self.config_dir + c_file.get("schema") self.semantic_net_file = self.config_dir + c_file.get("semantic_net") self.dash_file = self.config_dir + c_file.get("dash") self.config_param_file = self.config_dir + c_file.get("config_param") self.cts_file = self.config_dir + c_file.get("cts") # -- Reference c_ref = config_tree.xpath("reference")[0] self.base_uri = c_ref.get("default_base_uri") self.onto_suffix = c_ref.get("default_ontology_suffix") # -- Source File Definition self.source_sentence_files = self.corpus_dir + self.source_corpus self.source_sentence_files += '**/*.ttl' # -- Target File Definition self.frame_ontology_file = self.frame_dir + self.target_ref self.frame_ontology_file += self.onto_suffix self.output_file = self.output_dir + self.source_ref + ".ttl" # TODO: fonction to print #============================================================================== # Test #============================================================================== if __name__ == '__main__': default_config_file = "../config.xml" config = Config(default_config_file, req_100, "R100", "system") print(config.__dict__)