public static BioExtV1 toBioExtract(BETSV1 bets) {
        BioExtV1 bioExt = new BioExtV1();

        //get name and id for BioExt from bets Name.  Name = *Name*-*id*

        bioExt.setName(bets.getName()); //set the name to index 0 - (indexOfDash - 1) 
        //bioExt.setId(Integer.parseInt(toolName.substring(dash + 1))); //Get substring from dash + 1 to end of string, parseInt
        bioExt.setId(Integer.parseInt(bets.getVersion()));
        bioExt.setDescription(bets.getDescription());

        //set inputs
        List<org.usd.edu.btl.betsconverter.BETSV1.Input> betsInputs = bets.getInputs();
        List<org.usd.edu.btl.betsconverter.BioExtV1.Inputs> bioExtInputs = new ArrayList<>();

        for (int i = 0; i < betsInputs.size(); i++) {
            Input betsInput = betsInputs.get(i); //get first bets input
            Inputs bExtInput = new Inputs(); //create new bExtinput
            bExtInput.setName(betsInput.getName());
            bExtInput.setDescription(betsInput.getDescription());
            bExtInput.setRequired(betsInput.getRequired());
            List<Constraint> bExtInCons = betsInput.getConstraint(); //get the list of constraints for this input
            for (int j = 0; j < bExtInCons.size(); j++) {
                Constraint inCon = bExtInCons.get(j);
                String conLabel = inCon.getLabel();

                switch (conLabel) {
                    case "ID":
                        bExtInput.setId(Integer.parseInt(inCon.getValue()));
                        break;
                    case "Namespace":
                        bExtInput.setNamespace(inCon.getValue());
                        break;
                    default:
                        System.out.println("default");
                }

            }

            bioExtInputs.add(bExtInput);
        }

        bioExt.setInputs(bioExtInputs);

        //set outputs
        //set inputs
        List<org.usd.edu.btl.betsconverter.BETSV1.Output> betsOutputs = bets.getOutputs();
        List<org.usd.edu.btl.betsconverter.BioExtV1.Outputs> bioExtOutputs = new ArrayList<>();

        for (int i = 0; i < betsOutputs.size(); i++) {
            Output betsOutput = betsOutputs.get(i); //get first bets input
            Outputs bExtOutput = new Outputs(); //create new bExtinput

            bExtOutput.setName(betsOutput.getName());

            List<Constraint> bExtOutCons = betsOutput.getConstraint(); //get the list of constraints for this input
            for (int j = 0; j < bExtOutCons.size(); j++) {
                Constraint outCon = bExtOutCons.get(j);
                String conLabel = outCon.getLabel();

                switch (conLabel) {
                    case "ID":
                        bExtOutput.setId(Integer.parseInt(outCon.getValue()));
                        break;
                    case "Namespace":
                        bExtOutput.setNamespace(outCon.getValue());
                        break;
                    case "Description":
                        bExtOutput.setDescription(outCon.getValue());
                        break;
                    default:
                        System.out.println("default");
                }

            }

            bioExtOutputs.add(bExtOutput);
        }

        bioExt.setOutputs(bioExtOutputs);

        return bioExt;
    }