def update_specifications(force: bool = False):
spec_dir = config["<STR_LIT>"]["<STR_LIT>"]["<STR_LIT>"]<EOL>if not os.path.isdir(spec_dir):<EOL><INDENT>os.mkdir(spec_dir)<EOL><DEDENT>log.info(f"<STR_LIT>")<EOL>if config["<STR_LIT>"]["<STR_LIT>"]["<STR_LIT>"]:<EOL><INDENT>github_belspec_files(spec_dir, force=force)<EOL><DEDENT>files = glob.glob(f"<STR_LIT>")<EOL>for fn in files:<EOL><INDENT>new_fn = fn.replace("<STR_LIT>", "<STR_LIT>")<EOL>os.rename(fn, new_fn)<EOL><DEDENT>files = glob.glob(f"<STR_LIT>")<EOL>versions = {}<EOL>for fn in files:<EOL><INDENT>filename = os.path.basename(fn)<EOL>check_version = filename.replace("<STR_LIT>", "<STR_LIT>").replace("<STR_LIT>", "<STR_LIT>").replace("<STR_LIT:_>", "<STR_LIT:.>")<EOL>json_fn = fn.replace("<STR_LIT>", "<STR_LIT>")<EOL>version = belspec_yaml2json(fn, json_fn)<EOL>if version != check_version:<EOL><INDENT>log.error(<EOL>f"<STR_LIT>"<EOL>)<EOL><DEDENT>versions[version] = filename<EOL><DEDENT>with open(f"<STR_LIT>", "<STR_LIT:w>") as f:<EOL><INDENT>json.dump(list(set(versions)), f, indent=<NUM_LIT:4>)<EOL><DEDENT>create_ebnf_parser(files)<EOL>
Update BEL specifications

    Collect BEL specifications from Github BELBio BEL Specification folder
    and store in local directory specified in belbio_conf.yaml

    Process all BEL Specifications in YAML into an enhanced JSON version
    and capture all BEL versions in a separate file for quick access.