{'fraction_non_alphanumeric': 0.020253164556962026, 'fraction_numerical': 0.0, 'mean_word_length': 4.25249169435216, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A universal PNML Tool

The PNML(Petri Net Markup Language) is an interchange format for Petri nets,
 which is currently being standadized. PNML is not restricted to a particular
 kind or version of Petri net, but can be used for every Petri net type. To this
 end, PNML allows the definition of new Petri net types.
 The definition of PNML makes use of Model-based Software Engineering technology,
 and there is an implementation of PNML based on EMF, which is called
 the PNML Framework. The PNML Framwork, however, needs to be recompiled
 whenever a new Petri net type is defined, and it provides an API only. It does
 not come with a graphical editor.
 In this thesis, a universal PNML tool is developed in which new Petri net types
 can be plugged in without recompiling the tool for every new type. Moreover,
 the universal PNML tool should come with a graphical editor that allows to
 create and edit Petri nets of any (plugged-in) type. Furthermore, the universal
 PNML tool should be able to interact with applications running on that Petri
 net, and to allow the applications to visualize the results in the graphical editor.
 For some features of new Petri net types, there are specific graphical representations.
 In order to allow the universal PNML tool to represent these features in
 this way, the type concept of PNML types needs to be enhanced with a concept
 for defining the graphical appearance of some features of a new Petri net type.
 The concepts for defining these appearances should be designed in this thesis
 and implemented in the universal PNML tool.