public class GMLExport extends AbstractExportTool implements WandoraTool
Exports selected topic map in Wandora as GML (Graph Modelling Language) graph file. See http://www.infosun.fim.uni-passau.de/Graphlet/GML/ or http://en.wikipedia.org/wiki/Graph_Modelling_Language for more info about GML graph format.
Note that GML graph file format is rather simple and can't represent all details of Topic maps. Export converts all topics and occurrences as graph nodes. All associations are exported as graph edges. If association has more than two players, an itermediator node is added to link all players.
Lots of Topic map information is lost in export. Export doesn't convert subject locators, subject identifiers, different variant names, association roles, occurrence scopes etc.
Purpose of the export feature is to enable topic map visualization in GML supporting applications such as Cytoscape or yEd.
Modifier and Type | Field and Description |
---|---|
static boolean |
EXPORT_CLASSES |
static boolean |
EXPORT_DIRECTED |
static boolean |
EXPORT_N_ASSOCIATIONS |
static boolean |
EXPORT_OCCURRENCES |
boolean |
EXPORT_SELECTION_INSTEAD_TOPIC_MAP |
Constructor and Description |
---|
GMLExport() |
GMLExport(boolean exportSelection) |
Modifier and Type | Method and Description |
---|---|
void |
configure(Wandora admin,
Options options,
java.lang.String prefix)
If the tool is configurable, shows an user interface to configure the tool.
|
protected void |
echoEdge(java.lang.String source,
java.lang.String target,
java.lang.String label,
java.io.PrintWriter writer) |
protected void |
echoEdge(Topic source,
java.lang.String target,
Topic label,
java.io.PrintWriter writer) |
protected void |
echoEdge(Topic source,
Topic target,
java.lang.String label,
java.io.PrintWriter writer) |
protected void |
echoEdge(Topic source,
Topic target,
Topic label,
java.io.PrintWriter writer) |
protected void |
echoNode(int id,
java.lang.String name,
java.lang.String label,
java.io.PrintWriter writer) |
protected void |
echoNode(java.lang.String data,
java.io.PrintWriter writer) |
protected void |
echoNode(Topic t,
java.io.PrintWriter writer) |
void |
execute(Wandora admin,
Context context)
Runs the tool.
|
void |
exportGTM(java.io.OutputStream out,
TopicMap topicMap,
java.lang.String graphName,
WandoraToolLogger logger) |
java.lang.String |
getDescription()
AdminToolManager views tool descriptions while user browses available
tools and build user customizable GUI elements such as Tools menu.
|
javax.swing.Icon |
getIcon()
All tools may have identifying graphic icon used within tool GUI elements.
|
java.lang.String |
getName()
Tools name represent the tool in UI unless the tool has been given
explicitly another GUI name.
|
boolean |
isConfigurable()
Whether this tool is configurable.
|
protected int |
makeID(java.lang.String s) |
protected int |
makeID(Topic t) |
protected java.lang.String |
makeString(java.lang.String s) |
boolean |
requiresRefresh()
If any visible topic has been changed during tool execution GUI is
automatically refreshed.
|
getType, makeTopicMapWith, makeTopicMapWith
addUndoMarker, addUndoMarker, allowMultipleInvocations, clearAllThreads, clearThreads, clearThreads, clearToolLock, clearToolLock, clearToolLocks, execute, execute, forceStop, forceStop, getContext, getCurrentLogger, getDefaultLogger, getHistory, getLastLogger, getState, getThreads, getThreads, getToolMenuItem, getToolMenuItem, getTopicName, hlog, initialize, interruptAllThreads, interruptThreads, interruptThreads, isRunning, isRunning, lockLog, log, log, log, log, run, runInOwnThread, setContext, setDefaultLogger, setLogTitle, setProgress, setProgressMax, setState, setToolLogger, singleLog, singleLog, singleLog, solveContextTopicMap, solveNameForTopicMap, writeOptions
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
execute, execute, getContext, getToolMenuItem, getType, hlog, initialize, isRunning, log, log, log, log, setContext, setToolLogger, writeOptions
forceStop, getHistory, getState, lockLog, setLogTitle, setProgress, setProgressMax, setState
public boolean EXPORT_SELECTION_INSTEAD_TOPIC_MAP
public static boolean EXPORT_CLASSES
public static boolean EXPORT_OCCURRENCES
public static boolean EXPORT_N_ASSOCIATIONS
public static boolean EXPORT_DIRECTED
public javax.swing.Icon getIcon()
AbstractWandoraTool
getIcon
should return Icon
object of
the tool.getIcon
in interface WandoraTool
getIcon
in class AbstractExportTool
public boolean requiresRefresh()
AbstractWandoraTool
If any visible topic has been changed during tool execution GUI is automatically refreshed. If tool doesn't change topics but GUI still requires refresh, tool should override this method and return true.
For example tools that alter the GUI but change no topics should return true.
requiresRefresh
in interface WandoraTool
requiresRefresh
in class AbstractWandoraTool
public boolean isConfigurable()
AbstractWandoraTool
isConfigurable
in interface WandoraTool
isConfigurable
in class AbstractWandoraTool
public void configure(Wandora admin, Options options, java.lang.String prefix) throws TopicMapException
AbstractWandoraTool
configure
in interface WandoraTool
configure
in class AbstractWandoraTool
TopicMapException
public void execute(Wandora admin, Context context)
WandoraTool
execute
in interface WandoraTool
public java.lang.String getName()
AbstractWandoraTool
getName
in interface WandoraTool
getName
in class AbstractWandoraTool
public java.lang.String getDescription()
AbstractWandoraTool
getDescription
in interface WandoraTool
getDescription
in class AbstractWandoraTool
public void exportGTM(java.io.OutputStream out, TopicMap topicMap, java.lang.String graphName, WandoraToolLogger logger) throws TopicMapException
TopicMapException
protected void echoNode(Topic t, java.io.PrintWriter writer) throws TopicMapException
TopicMapException
protected void echoNode(java.lang.String data, java.io.PrintWriter writer)
protected void echoNode(int id, java.lang.String name, java.lang.String label, java.io.PrintWriter writer)
protected void echoEdge(Topic source, Topic target, java.lang.String label, java.io.PrintWriter writer) throws TopicMapException
TopicMapException
protected void echoEdge(java.lang.String source, java.lang.String target, java.lang.String label, java.io.PrintWriter writer)
protected void echoEdge(Topic source, java.lang.String target, Topic label, java.io.PrintWriter writer) throws TopicMapException
TopicMapException
protected void echoEdge(Topic source, Topic target, Topic label, java.io.PrintWriter writer) throws TopicMapException
TopicMapException
protected int makeID(Topic t)
protected int makeID(java.lang.String s)
protected java.lang.String makeString(java.lang.String s)
Copyright 2004-2015 Wandora Team