Class JasonExporter

java.lang.Object
com.tnsai.roles.export.frameworks.JasonExporter
All Implemented Interfaces:
RoleExporter

public class JasonExporter extends Object implements RoleExporter
Exports Role definitions to Jason/AgentSpeak format.

Jason is a multi-agent system interpreter for AgentSpeak(L), a BDI (Belief-Desire-Intention) agent-oriented programming language.

Example Output


 // Agent: Researcher
 // Goal: Find and analyze information
 // Domain: Research

 // Initial beliefs
 role(researcher).
 goal(find_and_analyze_information).

 // Duties
 duty(search_databases).
 duty(analyze_papers).

 // Safety constraints
 must_never(fabricate_data).
 must_always(cite_sources).

 // Plans for actions
 +!search_papers(Query) : role(researcher)
    <- .print("Searching for: ", Query);
       // Implementation here
       .
 
Author:
TnsAI Team
See Also:
  • Constructor Details

    • JasonExporter

      public JasonExporter()
  • Method Details

    • export

      public String export(Role role)
      Description copied from interface: RoleExporter
      Exports a Role instance to the target format.
      Specified by:
      export in interface RoleExporter
      Parameters:
      role - the role to export
      Returns:
      exported string representation
    • exportFromClass

      public String exportFromClass(Class<? extends Role> roleClass)
      Description copied from interface: RoleExporter
      Exports a Role class (using annotations) to the target format.
      Specified by:
      exportFromClass in interface RoleExporter
      Parameters:
      roleClass - the role class with annotations
      Returns:
      exported string representation
    • export

      public String export(ExportedRole metadata)
      Description copied from interface: RoleExporter
      Exports role metadata to the target format.
      Specified by:
      export in interface RoleExporter
      Parameters:
      metadata - the extracted role metadata
      Returns:
      exported string representation
    • getFileExtension

      public String getFileExtension()
      Description copied from interface: RoleExporter
      Returns the file extension for this export format.
      Specified by:
      getFileExtension in interface RoleExporter
      Returns:
      file extension (e.g., "json", "yaml", "asl")
    • getMimeType

      public String getMimeType()
      Description copied from interface: RoleExporter
      Returns the MIME type for this export format.
      Specified by:
      getMimeType in interface RoleExporter
      Returns:
      MIME type
    • getFormatName

      public String getFormatName()
      Description copied from interface: RoleExporter
      Returns the format name.
      Specified by:
      getFormatName in interface RoleExporter
      Returns:
      format name (e.g., "JSON", "YAML", "AgentSpeak")