}
@Override
protected ArchetypeVertex createVertex(Map attributeMap) {
Graph mGraph = getGraph();
StringLabeller mLabeller = getLabeller();
if (mGraph == null) {
throw new FatalException("Error parsing graph. Graph element must be specified before node element.");
}
String idString = ((String) attributeMap.remove("id")).replaceAll(AbstractPersistence.Initial+" *", "");
DeterministicDirectedSparseGraph.DeterministicVertex vertex =
new DeterministicDirectedSparseGraph.DeterministicVertex(VertexID.parseID(idString));// this ID will be subsequently modified when we look at the "VERTEX" tag.
mGraph.addVertex(vertex);
try {
mLabeller.setLabel(vertex,idString);
} catch (StringLabeller.UniqueLabelException ule) {
throw new FatalException("Ids must be unique");
}