// file: CarOntology.java generated by ontology bean generator.  DO NOT EDIT, UNLESS YOU ARE REALLY SURE WHAT YOU ARE DOING!
package ld5_2.ontology;

import jade.content.onto.*;
import jade.content.schema.*;

/** file: CarOntology.java
 * @author ontology bean generator
 * @version 2026/04/16, 00:12:37
 */
public class CarOntology extends jade.content.onto.Ontology  {

  private static final long serialVersionUID = -5895757859747330689L;

  //NAME
  public static final String ONTOLOGY_NAME = "Car";
  // The singleton instance of this ontology
  private static Ontology theInstance = new CarOntology();
  public static Ontology getInstance() {
     return theInstance;
  }


   // VOCABULARY
    public static final String BUYCARMSG_BUYCARLINE="BuyCarLine";
    public static final String BUYCARMSG="BuyCarMsg";
    public static final String BUYCARRESPONSEMSG_BUYCARRESLINE="BuyCarResLine";
    public static final String BUYCARRESPONSEMSG="BuyCarResponseMsg";
    public static final String CARSEARCHMSG_CARSEARCHLINE="CarSearchLine";
    public static final String CARSEARCHMSG="CarSearchMsg";
    public static final String CARLISTMSG_CARLISTLINE="CarListLine";
    public static final String CARLISTMSG="CarListMsg";
    public static final String CARLIST_COUNT="Count";
    public static final String CARLIST_LIST="list";
    public static final String CARLIST="CarList";
    public static final String CARMODEL_MODIFICATION="Modification";
    public static final String CARMODEL_MODELNAME="ModelName";
    public static final String CARMODEL_MAKER="Maker";
    public static final String CARMODEL_MID="MID";
    public static final String CARMODEL="CarModel";
    public static final String ZMOGUS_ADDRESS="Address";
    public static final String ZMOGUS_ID="ID";
    public static final String ZMOGUS_LASTNAME="LastName";
    public static final String ZMOGUS_NAME="Name";
    public static final String ZMOGUS="Zmogus";
    public static final String BUYCARRESPONSE_PRICE="Price";
    public static final String BUYCARRESPONSE_REASON="reason";
    public static final String BUYCARRESPONSE_ISAPPROVED="isApproved";
    public static final String BUYCARRESPONSE_VIN="VIN";
    public static final String BUYCARRESPONSE="BuyCarResponse";
    public static final String CARSEARCH_PRICEFROM="priceFrom";
    public static final String CARSEARCH_COUNTRY="country";
    public static final String CARSEARCH_PRICETO="priceTo";
    public static final String CARSEARCH_YEARTO="yearTo";
    public static final String CARSEARCH_YEARFROM="yearFrom";
    public static final String CARSEARCH="CarSearch";
    public static final String CARDATA_OWNER="Owner";
    public static final String CARDATA_CARPRICE="carPrice";
    public static final String CARDATA_COLOR="Color";
    public static final String CARDATA_YEARBUILT="YearBuilt";
    public static final String CARDATA_VIN="VIN";
    public static final String CARDATA_MODEL="Model";
    public static final String CARDATA_ENGINE="Engine";
    public static final String CARDATA="CarData";
    public static final String CARMAKER_COUNTRY="Country";
    public static final String CARMAKER_MAKEADDRESS="MakeAddress";
    public static final String CARMAKER_GID="GID";
    public static final String CARMAKER_MAKENAME="MakeName";
    public static final String CARMAKER="CarMaker";
    public static final String BUYCAR_VIN="VIN";
    public static final String BUYCAR="BuyCar";

  /**
   * Constructor
  */
  private CarOntology(){ 
    super(ONTOLOGY_NAME, BasicOntology.getInstance());
    try { 

    // adding Concept(s)
    ConceptSchema buyCarSchema = new ConceptSchema(BUYCAR);
    add(buyCarSchema, ld5_2.ontology.BuyCar.class);
    ConceptSchema carMakerSchema = new ConceptSchema(CARMAKER);
    add(carMakerSchema, ld5_2.ontology.CarMaker.class);
    ConceptSchema carDataSchema = new ConceptSchema(CARDATA);
    add(carDataSchema, ld5_2.ontology.CarData.class);
    ConceptSchema carSearchSchema = new ConceptSchema(CARSEARCH);
    add(carSearchSchema, ld5_2.ontology.CarSearch.class);
    ConceptSchema buyCarResponseSchema = new ConceptSchema(BUYCARRESPONSE);
    add(buyCarResponseSchema, ld5_2.ontology.BuyCarResponse.class);
    ConceptSchema zmogusSchema = new ConceptSchema(ZMOGUS);
    add(zmogusSchema, ld5_2.ontology.Zmogus.class);
    ConceptSchema carModelSchema = new ConceptSchema(CARMODEL);
    add(carModelSchema, ld5_2.ontology.CarModel.class);
    ConceptSchema carListSchema = new ConceptSchema(CARLIST);
    add(carListSchema, ld5_2.ontology.CarList.class);

    // adding AgentAction(s)

    // adding AID(s)

    // adding Predicate(s)
    PredicateSchema carListMsgSchema = new PredicateSchema(CARLISTMSG);
    add(carListMsgSchema, ld5_2.ontology.CarListMsg.class);
    PredicateSchema carSearchMsgSchema = new PredicateSchema(CARSEARCHMSG);
    add(carSearchMsgSchema, ld5_2.ontology.CarSearchMsg.class);
    PredicateSchema buyCarResponseMsgSchema = new PredicateSchema(BUYCARRESPONSEMSG);
    add(buyCarResponseMsgSchema, ld5_2.ontology.BuyCarResponseMsg.class);
    PredicateSchema buyCarMsgSchema = new PredicateSchema(BUYCARMSG);
    add(buyCarMsgSchema, ld5_2.ontology.BuyCarMsg.class);


    // adding fields
    buyCarSchema.add(BUYCAR_VIN, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carMakerSchema.add(CARMAKER_MAKENAME, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    carMakerSchema.add(CARMAKER_GID, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carMakerSchema.add(CARMAKER_MAKEADDRESS, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.OPTIONAL);
    carMakerSchema.add(CARMAKER_COUNTRY, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    carDataSchema.add(CARDATA_ENGINE, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    carDataSchema.add(CARDATA_MODEL, carModelSchema, ObjectSchema.MANDATORY);
    carDataSchema.add(CARDATA_VIN, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carDataSchema.add(CARDATA_YEARBUILT, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carDataSchema.add(CARDATA_COLOR, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.OPTIONAL);
    carDataSchema.add(CARDATA_CARPRICE, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carDataSchema.add(CARDATA_OWNER, zmogusSchema, ObjectSchema.MANDATORY);
    carSearchSchema.add(CARSEARCH_YEARFROM, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carSearchSchema.add(CARSEARCH_YEARTO, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carSearchSchema.add(CARSEARCH_PRICETO, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carSearchSchema.add(CARSEARCH_COUNTRY, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    carSearchSchema.add(CARSEARCH_PRICEFROM, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    buyCarResponseSchema.add(BUYCARRESPONSE_VIN, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    buyCarResponseSchema.add(BUYCARRESPONSE_ISAPPROVED, (TermSchema)getSchema(BasicOntology.BOOLEAN), ObjectSchema.MANDATORY);
    buyCarResponseSchema.add(BUYCARRESPONSE_REASON, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.OPTIONAL);
    buyCarResponseSchema.add(BUYCARRESPONSE_PRICE, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    zmogusSchema.add(ZMOGUS_NAME, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    zmogusSchema.add(ZMOGUS_LASTNAME, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    zmogusSchema.add(ZMOGUS_ID, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    zmogusSchema.add(ZMOGUS_ADDRESS, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.OPTIONAL);
    carModelSchema.add(CARMODEL_MID, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carModelSchema.add(CARMODEL_MAKER, carMakerSchema, ObjectSchema.MANDATORY);
    carModelSchema.add(CARMODEL_MODELNAME, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.MANDATORY);
    carModelSchema.add(CARMODEL_MODIFICATION, (TermSchema)getSchema(BasicOntology.STRING), ObjectSchema.OPTIONAL);
    carListSchema.add(CARLIST_LIST, carDataSchema, 1, 5);
    carListSchema.add(CARLIST_COUNT, (TermSchema)getSchema(BasicOntology.INTEGER), ObjectSchema.MANDATORY);
    carListMsgSchema.add(CARLISTMSG_CARLISTLINE, carListSchema, ObjectSchema.MANDATORY);
    carSearchMsgSchema.add(CARSEARCHMSG_CARSEARCHLINE, carSearchSchema, ObjectSchema.MANDATORY);
    buyCarResponseMsgSchema.add(BUYCARRESPONSEMSG_BUYCARRESLINE, buyCarResponseSchema, ObjectSchema.MANDATORY);
    buyCarMsgSchema.add(BUYCARMSG_BUYCARLINE, buyCarSchema, ObjectSchema.MANDATORY);

    // adding name mappings

    // adding inheritance

   }catch (java.lang.Exception e) {e.printStackTrace();}
  }
}
