Import/Export XML

XML Input/Output is supported in Astah Professional.

XML Export

Export Astah Project file to XML file (.xml).

Example
import com.change_vision.jude.api.inf.AstahAPI;
import com.change_vision.jude.api.inf.project.ProjectAccessor;

public class Test {
  public static void main(String[] args) {
    try {
       ProjectAccessor prjAccessor = AstahAPI.getAstahAPI().getProjectAccessor();

       prjAccessor.open("C:\\API\\pro305.asta");
       prjAccessor.exportXMI("C:\\API\\pro305_xmi.xml");
       prjAccessor.close();

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

XML Import

Import XML project file(.xml) to a Astah project file.

Ensure to let the ClassPath go through the jar that locates in the Astah professional Install folder\lib to execute XML Import.

Save as

Save as a new project(.asta).

Example of XML Import and saving it as Project with name
import com.change_vision.jude.api.inf.AstahAPI;
import com.change_vision.jude.api.inf.project.ProjectAccessor;

public class Test {
  public static void main(String[] args) {
    try {
      ProjectAccessor prjAccessor = AstahAPI.getAstahAPI().getProjectAccessor();

      prjAccessor.importXMI("C:\\API\\pro305_xmi.xml");
      prjAccessor.saveAs("C:\\API\\pro305_2.asta");
      prjAccessor.close();

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

Process of Import/Export XML with Astah API

Here is a process of Import/Export XML using Astah API.

Example: Export Astah project file to XML - Modify the XML - Import XML - Save as Astah project file
import com.change_vision.jude.api.inf.AstahAPI;
import com.change_vision.jude.api.inf.project.ProjectAccessor;

public class Test {
 public static void main(String[] args) {
   try {
     ProjectAccessor prjAccessor = AstahAPI.getAstahAPI().getProjectAccessor();

     prjAccessor.open("C:\\API\\pro305.asta");
     prjAccessor.exportXMI("C:\\API\\pro305_xmi.xml");
     prjAccessor.close();

     // Edit

     prjAccessor.importXMI("C:\\API\\pro305_xmi.xml");
     prjAccessor.saveAs("C:\\API\\pro305_2.asta");
     prjAccessor.close();

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