def test_convert(self): cv = MIxS6Converter() cv.core_filename = f'{INPUTS_DIR}/mixs6_core.tsv' cv.packages_filename = f'{INPUTS_DIR}/mixs6.tsv' cv.output_directory = OUTPUTS_DIR self.assertTrue(True) fn = cv.convert_and_save() g = PythonGenerator(fn) print(g.serialize()[0:1000]) g = JsonSchemaGenerator(fn) print(g.serialize()[0:1000]) g = OwlSchemaGenerator(fn) print(g.serialize()[0:1000])
def compile_model(model: str, print_python: bool = False) -> SchemaDefinition: gen = PythonGenerator(model, merge_imports=False, gen_classvars=False, gen_slots=False) code = gen.serialize() return code
gene sequence: uri: dist:seq typeof: string description: A gene sequence # Slots that are defined in this model extension slots: gene has sequence: description: A gene pattern domain: gene range: gene sequence slot_uri: dist:hasSeq required: true # Classes that are defined in this model extension classes: # The class name. For most generators, this will be transformed to CamelCase (MyGene) my gene: description: This is an example extension. Doesn't do a lot is_a: gene slots: - gene has sequence """ from linkml.generators.pythongen import PythonGenerator gen = PythonGenerator(model, log_level=ERROR) print(gen.serialize())