\begin{manual}

\resetmancounter

\section*{Export ( GraphML\_writer )}
\label{Export}
\label{GraphML_writer}

\mansection{Definition}


\ensuremath{\mathit{GraphML\nspaceunderscore\_writer}} extends \ensuremath{\mathit{GraphML\nspaceunderscore\_graph}} and thus inherits from
\ensuremath{\mathit{graphml\nspaceunderscore\_attributes}\Ltemplateless \mathit{string}\Ltemplategreater }, \ensuremath{\mathit{graphml\nspaceunderscore\_parseinfo}\Ltemplateless \mathit{string}\Ltemplategreater }
and \ensuremath{\mathit{graphml\nspaceunderscore\_structure}\Ltemplateless \mathit{string}\Ltemplategreater }.
An instance \ensuremath{\mathit{gm}} of \ensuremath{\mathit{GraphML\nspaceunderscore\_writer}} is a data structure that holds 
references to a \ensuremath{\mathit{graph}} and associated \ensuremath{\mathit{node\nspaceunderscore\_}} and 
\ensuremath{\mathit{edge\nspaceunderscore\_array}}s, and allows to export the referenced graph
and its attributes in GraphML format.  

Any of the following types may be used for attribute data: \ensuremath{\mathit{bool}},
\ensuremath{\mathit{int}}, \ensuremath{\mathit{long}}, \ensuremath{\mathit{float}}, \ensuremath{\mathit{double}}, or \ensuremath{\mathit{string}} (i.e.\ \ensuremath{\mathit{leda\nspaceunderscore\_string}}). 
Types are identified by instances of 
\begin{quote}
\ensuremath{\mathit{GraphML\nspaceunderscore\_writer}\DP\ \mathit{gm\nspaceunderscore\_data\nspaceunderscore\_type}}\\
\ensuremath{\ =\ \{bool\nspaceunderscore\_data,} \ensuremath{int\nspaceunderscore\_data,} \ensuremath{long\nspaceunderscore\_data,} \ensuremath{float\nspaceunderscore\_data,} \ensuremath{double\nspaceunderscore\_data,} \ensuremath{
string\nspaceunderscore\_data\}}.
\end{quote}

When exporting a graph referred to by \ensuremath{\mathit{gm}} to a GraphML
document, the document type may be specified either using the 
GraphML Schema specification (recommended), or 
the GraphML Document Type Definition (DTD).
The specification method is identified by an instance of 
\begin{quote}
\ensuremath{\mathit{GraphML\nspaceunderscore\_writer}\DP\ \mathit{gm\nspaceunderscore\_specification\nspaceunderscore\_method}}\\
\ensuremath{\ =\ \{\mathit{no\nspaceunderscore\_spec},} \ensuremath{\mathit{schema\nspaceunderscore\_spec},} \ensuremath{\mathit{dtd\nspaceunderscore\_spec}\}}.
\end{quote}

Meta-information for light-weight parsers is added upon request.
     



\setlength{\declwidth}{1cm}\computewidths

\mansection{Creation}

\create{\ensuremath{\mathit{GraphML\nspaceunderscore\_writer}}}{\ensuremath{\mathit{gm}}}{\ensuremath{\mathit{graph}\&\ G}}
{
    creates an instance \ensuremath{\mathit{gm}} of type \ensuremath{\mathit{GraphML\nspaceunderscore\_writer}} for graph \ensuremath{G}.
     

}

\setlength{\typewidth}{1cm}\setlength{\callwidth}{1cm}\computewidths

\mansection{Operations}

\function{\ensuremath{\mathit{void}}}
{\ensuremath{\mathit{gm}\nspacedot.}write}
{\ensuremath{\mathit{ostream}\&\ \mathit{out},} \ensuremath{\mathit{gm\nspaceunderscore\_specification\nspaceunderscore\_type}\ \mathit{spec\nspaceunderscore\_type},} \ensuremath{\mathit{bool}\ \mathit{write\nspaceunderscore\_parseinfo}\ =\ \mathit{false}}}
{
    Exports \ensuremath{\mathit{gm}} to stream \ensuremath{\mathit{out}} in GraphML format.
    Argument \ensuremath{\mathit{spec\nspaceunderscore\_type}} indicates the document type specification 
    method to be included in the exported document:
    XML Schema specification, DTD or no specification.
     

}

\function{\ensuremath{\mathit{bool}}}
{\ensuremath{\mathit{gm}\nspacedot.}write}
{\ensuremath{\mathit{string}\ \mathit{filename},} \ensuremath{\mathit{gm\nspaceunderscore\_specification\nspaceunderscore\_type}\ \mathit{spec\nspaceunderscore\_type},} \ensuremath{\mathit{bool}\ \mathit{write\nspaceunderscore\_parseinfo}\ =\ \mathit{false}}}
{
    Exports \ensuremath{\mathit{gm}} to file \ensuremath{\mathit{filename}} in GraphML format.
    Returns \ensuremath{\mathit{true}} if and only if the operation was completed 
    successfully.  
    Argument \ensuremath{\mathit{spec\nspaceunderscore\_type}} indicates the document type specification 
    method to be included in the exported document:
    XML Schema specification, DTD or no specification.
     

}

\end{manual}


