code: def _extract_mining_schema(trxf_rules):
      mining_fields = {}
      for rule in trxf_rules:
          for predicate in rule.conjunction.predicates:
              name = predicate.feature.variable_names[0]
              if name not in mining_fields:
                  mining_field = models.MiningField(name=name)
                  mining_fields[name] = mining_field
      return models.MiningSchema(
          miningFields=list(mining_fields.values())
      )
  
file_path: AIX360/aix360/algorithms/rule_induction/trxf/pmml_export/reader/trxf_reader.py
imports: from typing import Dict
  import numpy
  import pandas
  from aix360.algorithms.rule_induction.trxf.classifier import ruleset_classifier
  from aix360.algorithms.rule_induction.trxf.classifier.ruleset_classifier import RuleSetClassifier
  from aix360.algorithms.rule_induction.trxf.core import Conjunction, Relation
  from aix360.algorithms.rule_induction.trxf.pmml_export import models
  from aix360.algorithms.rule_induction.trxf.pmml_export.models.data_dictionary import Value
  from aix360.algorithms.rule_induction.trxf.pmml_export.reader import AbstractReader
  from aix360.algorithms.rule_induction.trxf.pmml_export.models import SimplePredicate, Operator, CompoundPredicate, BooleanOperator
label_desc: Use image node_id 3 for calling a global function with example usage: _extract_mining_schema(trxf_rules) and returns: models