Changeset 168

Show
Ignore:
Timestamp:
08/28/06 16:54:51 (2 years ago)
Author:
thomase
Message:

Added docstrings to custom install. Regenerated with new AGX release (1.5), which felt the need, evidently, to touch just about every file.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • PleiadesThesauri/trunk/PleiadesThesauri/Extensions/AppInstall.py

    r166 r168  
    55 
    66def install(self): 
     7    """ 
     8    Custom installation for the PleiadesThesauri product. 
     9    """ 
    710    installThesauri(self) 
    811     
    912def installThesauri(self): 
     13    """ 
     14    Custom installation of specific thesauri to be managed with the PleiadesThesauri product. This code 
     15    looks in a subdirectory for a file with a name specified by VOCABLISTFILE (imported from AppConfig.py). 
     16    The contents of this file are parsed to get a list of other vdex xml files, which are loaded for installation 
     17    as individual thesauri. 
     18    """ 
    1019    logger = logging.getLogger(PROJECTNAME + '.AppInstall.installThesauri') 
    1120    th_list_path = os.path.join(os.environ['INSTANCE_HOME'], 'Products', PROJECTNAME, 'thesauri') 
     
    1726     
    1827def installThesaurus(self, th_file_path): 
     28    """ 
     29    The full path to a vdex xml file containing a thesaurus is passed to this function. It parses the file 
     30    and creates appropriate content (a *thesaurus* with subordinate *terms*) in the portal_thesauri 
     31    tool. 
     32    """ 
    1933    logger = logging.getLogger(PROJECTNAME + '.AppInstall.installThesaurus') 
    2034    th_dom = getXMLDOM(th_file_path) 
     
    2236 
    2337    def getText(nodelist): 
     38        """ 
     39        Provides a concatenated string version of the content of all subordinate text nodes in the passed 
     40        node list. 
     41        """ 
    2442        alltext = "" 
    2543        for node in nodelist: 
     
    3755         
    3856    def handleTerms(terms): 
     57        """ 
     58        Loops through a list of term nodes, calling a handler for each node. 
     59        """ 
    3960        for term in terms: 
    4061            handleTerm(term) 
     
    4364        logger.info('handleTerm = ' + getText(term.childNodes)) 
    4465 
     66    # create a new thesaurus in portal_thesauri 
     67    # set new thesaurus title = vocabName 
     68    # set new thesaurus identifier = vocabIdentifier 
     69    # leave new thesaurus description empty (there's nothing in vdex to correspond) 
     70    # for each term in the thesaurus 
     71    #     create a new term in this thesaurus 
     72    #     title = english caption of term 
     73    #     identifier = termIdentifier 
     74    #     description = english description 
    4575    handleVocabName(thesaurus[0].getElementsByTagName("vocabName")[0]) 
    4676    handleVocabIdentifier(thesaurus[0].getElementsByTagName("vocabIdentifier")[0]) 
     
    5080         
    5181def getThesaurusList(self, th_list_path, th_list_file): 
     82    """ 
     83    Loads the specified xml file and parses it in order to construct a python list of the individual 
     84    thesaurus files that are to be installed. 
     85    """ 
    5286    th_list = [] 
    5387    th_list_dom = getXMLDOM(os.path.join(th_list_path, th_list_file)) 
     
    5993         
    6094def getXMLDOM(file_path): 
     95    """ 
     96    Opens and reads the indicated file, parsing the contents into a minidom, which is returned to the 
     97    calling function. 
     98    """ 
    6199    xmlfile = open(file_path, 'r') 
    62100    xmldom = parse(xmlfile) 
  • PleiadesThesauri/trunk/PleiadesThesauri/Extensions/Install.py

    r161 r168  
     1# -*- coding: utf-8 -*- 
     2# 
    13# File: Install.py 
    24# 
    35# Copyright (c) 2006 by [] 
    4 # Generator: ArchGenXML Version 1.4.1 
     6# Generator: ArchGenXML Version 1.5.0 
    57#            http://plone.org/products/archgenxml 
    68# 
     
    6971    install_subskin(self, out, GLOBALS) 
    7072 
    71  
    72  
    73     #autoinstall tools 
     73    # autoinstall tools 
    7474    portal = getToolByName(self,'portal_url').getPortalObject() 
    7575    for t in ['Thesauri']: 
     
    8484            if e[0] != 'Bad Request': 
    8585                raise 
    86     #hide tools in the navigation 
     86 
     87    # hide tools in the search form 
     88    portalProperties = getToolByName(self, 'portal_properties', None) 
     89    if portalProperties is not None: 
     90        siteProperties = getattr(portalProperties, 'site_properties', None) 
     91        if siteProperties is not None and siteProperties.hasProperty('types_not_searched'): 
     92            for tool in ['Thesauri']: 
     93                current = list(siteProperties.getProperty('types_not_searched')) 
     94                if tool not in current: 
     95                    current.append(tool) 
     96                    siteProperties.manage_changeProperties(**{'types_not_searched' : current}) 
     97 
     98    # remove workflow for tools 
     99    portal_workflow = getToolByName(self, 'portal_workflow') 
     100    for tool in ['Thesauri']: 
     101        portal_workflow.setChainForPortalTypes([tool], '') 
     102 
     103    # uncatalog tools 
     104    for toolname in ['portal_thesauri']: 
     105        try: 
     106            portal[toolname].unindexObject() 
     107        except: 
     108            pass 
     109 
     110    # hide tools in the navigation 
    87111    portalProperties = getToolByName(self, 'portal_properties', None) 
    88112    if portalProperties is not None: 
    89113        navtreeProperties = getattr(portalProperties, 'navtree_properties', None) 
    90         if navtreeProperties: 
    91             navtreeProperties.idsNotToList = list(navtreeProperties.idsNotToList) + \ 
    92                                   [toolname for toolname in ['portal_thesauri'] \ 
    93                                             if toolname not in navtreeProperties.idsNotToList] 
     114        if navtreeProperties is not None and navtreeProperties.hasProperty('idsNotToList'): 
     115            for toolname in ['portal_thesauri']: 
     116                current = list(navtreeProperties.getProperty('idsNotToList')) 
     117                if toolname not in current: 
     118                    current.append(toolname) 
     119                    navtreeProperties.manage_changeProperties(**{'idsNotToList' : current}) 
     120 
    94121 
    95122    # try to call a workflow install method 
    96123    # in 'InstallWorkflows.py' method 'installWorkflows' 
    97124    try: 
    98         installWorkflows = ExternalMethod('temp', 
    99                                           'temp', 
    100                                           PROJECTNAME+'.InstallWorkflows',  
     125        installWorkflows = ExternalMethod('temp', 'temp', 
     126                                          PROJECTNAME+'.InstallWorkflows', 
    101127                                          'installWorkflows').__of__(self) 
    102128    except NotFound: 
     
    114140    factory_tool = getToolByName(self,'portal_factory') 
    115141    factory_types=[ 
     142        "Thesaurus", 
     143        "Term", 
     144        "Thesauri", 
    116145        ] + factory_tool.getFactoryTypes().keys() 
    117146    factory_tool.manage_setPortalFactoryTypes(listOfTypeIds=factory_types) 
     
    170199    out = StringIO() 
    171200 
     201    # unhide tools in the search form 
     202    portalProperties = getToolByName(self, 'portal_properties', None) 
     203    if portalProperties is not None: 
     204        siteProperties = getattr(portalProperties, 'site_properties', None) 
     205        if siteProperties is not None and siteProperties.hasProperty('types_not_searched'): 
     206            for tool in ['Thesauri']: 
     207                current = list(siteProperties.getProperty('types_not_searched')) 
     208                if tool in current: 
     209                    current.remove(tool) 
     210                    siteProperties.manage_changeProperties(**{'types_not_searched' : current}) 
     211 
    172212    # unhide tools 
    173213    portalProperties = getToolByName(self, 'portal_properties', None) 
    174214    if portalProperties is not None: 
    175215        navtreeProperties = getattr(portalProperties, 'navtree_properties', None) 
    176         if navtreeProperties
    177             navtreeProperties.idsNotToList = list(navtreeProperties.idsNotToList) 
    178             for toolname in [toolname for toolname in ['portal_thesauri'] \ 
    179                                       if toolname not in navtreeProperties.idsNotToList]
    180                 if toolname in navtreeProperties.idsNotToList: 
    181                     navtreeProperties.idsNotToList.remove(toolname
     216        if navtreeProperties is not None and navtreeProperties.hasProperty('idsNotToList')
     217            for toolname in ['portal_thesauri']: 
     218                current = list(navtreeProperties.getProperty('idsNotToList')) 
     219                if toolname in current
     220                    current.remove(toolname) 
     221                    navtreeProperties.manage_changeProperties(**{'idsNotToList' : current}
    182222 
    183223    # try to call a workflow uninstall method 
     
    185225    try: 
    186226        uninstallWorkflows = ExternalMethod('temp', 'temp', 
    187                                             PROJECTNAME+'.InstallWorkflows',  
     227                                            PROJECTNAME+'.InstallWorkflows', 
    188228                                            'uninstallWorkflows').__of__(self) 
    189229    except NotFound: 
     
    200240    # in 'AppInstall.py' method 'uninstall' 
    201241    try: 
    202         uninstall = ExternalMethod('temp', 'temp',  
     242        uninstall = ExternalMethod('temp', 'temp', 
    203243                                   PROJECTNAME+'.AppInstall', 'uninstall') 
    204244    except: 
     
    216256 
    217257    return out.getvalue() 
     258 
     259def beforeUninstall(self, reinstall, product, cascade): 
     260    """ try to call a custom beforeUninstall method in 'AppInstall.py' 
     261        method 'beforeUninstall' 
     262    """ 
     263    out = StringIO() 
     264    try: 
     265        beforeuninstall = ExternalMethod('temp', 'temp', 
     266                                   PROJECTNAME+'.AppInstall', 'beforeUninstall') 
     267    except: 
     268        beforeuninstall = [] 
     269 
     270    if beforeuninstall: 
     271        print >>out, 'Custom beforeUninstall:' 
     272        res = beforeuninstall(self, reinstall=reinstall 
     273                                  , product=product 
     274                                  , cascade=cascade) 
     275        if res: 
     276            print >>out, res 
     277        else: 
     278            print >>out, 'no output' 
     279    else: 
     280        print >>out, 'no custom beforeUninstall' 
     281    return (out,cascade) 
     282 
     283def afterInstall(self, reinstall, product): 
     284    """ try to call a custom afterInstall method in 'AppInstall.py' method 
     285        'afterInstall' 
     286    """ 
     287    out = StringIO() 
     288    try: 
     289        afterinstall = ExternalMethod('temp', 'temp', 
     290                                   PROJECTNAME+'.AppInstall', 'afterInstall') 
     291    except: 
     292        afterinstall = None 
     293 
     294    if afterinstall: 
     295        print >>out, 'Custom afterInstall:' 
     296        res = afterinstall(self, product=None 
     297                               , reinstall=None) 
     298        if res: 
     299            print >>out, res 
     300        else: 
     301            print >>out, 'no output' 
     302    else: 
     303        print >>out, 'no custom afterInstall' 
     304    return out 
  • PleiadesThesauri/trunk/PleiadesThesauri/Term.py

    r161 r168  
     1# -*- coding: utf-8 -*- 
     2# 
    13# File: Term.py 
    24# 
    35# Copyright (c) 2006 by [] 
    4 # Generator: ArchGenXML Version 1.4.1 
     6# Generator: ArchGenXML Version 1.5.0 
    57#            http://plone.org/products/archgenxml 
    68# 
     
    6668 
    6769class Term(BaseContent): 
     70    """ 
     71    """ 
    6872    security = ClassSecurityInfo() 
    6973    __implements__ = (getattr(BaseContent,'__implements__',()),) 
     
    7781    filter_content_types = 0 
    7882    global_allow = 0 
    79     allow_discussion = False 
    8083    #content_icon = 'Term.gif' 
    8184    immediate_view = 'base_view' 
     
    9598 
    9699 
    97 registerType(Term,PROJECTNAME) 
     100registerType(Term, PROJECTNAME) 
    98101# end of class Term 
    99102 
  • PleiadesThesauri/trunk/PleiadesThesauri/Thesauri.py

    r166 r168  
     1# -*- coding: utf-8 -*- 
     2# 
    13# File: Thesauri.py 
    24# 
    35# Copyright (c) 2006 by [] 
    4 # Generator: ArchGenXML Version 1.4.1 
     6# Generator: ArchGenXML Version 1.5.0 
    57#            http://plone.org/products/archgenxml 
    68# 
     
    5254 
    5355class Thesauri(UniqueObject, BaseFolder): 
     56    """ 
     57    """ 
    5458    security = ClassSecurityInfo() 
    5559    __implements__ = (getattr(UniqueObject,'__implements__',()),) + (getattr(BaseFolder,'__implements__',()),) 
     
    6367    filter_content_types = 1 
    6468    global_allow = 0 
    65     allow_discussion = False 
    6669    #content_icon = 'Thesauri.gif' 
    6770    immediate_view = 'base_view' 
     
    7174    typeDescMsgId = 'description_edit_thesauri' 
    7275    #toolicon = 'Thesauri.gif' 
     76 
     77    _at_rename_after_creation = True 
    7378 
    7479    schema = Thesauri_schema 
     
    8186    def __init__(self, id=None): 
    8287        BaseFolder.__init__(self,'portal_thesauri') 
     88        self.setTitle('Thesauri') 
    8389         
    8490        ##code-section constructor-footer #fill in your manual code here 
     
    8692 
    8793 
     94    # tool should not appear in portal_catalog 
     95    def at_post_edit_script(self): 
     96        self.unindexObject() 
     97         
     98        ##code-section post-edit-method-footer #fill in your manual code here 
     99        ##/code-section post-edit-method-footer 
     100 
     101 
    88102    # Methods 
    89103 
    90104 
    91 registerType(Thesauri,PROJECTNAME) 
     105registerType(Thesauri, PROJECTNAME) 
    92106# end of class Thesauri 
    93107 
  • PleiadesThesauri/trunk/PleiadesThesauri/Thesaurus.py

    r161 r168  
     1# -*- coding: utf-8 -*- 
     2# 
    13# File: Thesaurus.py 
    24# 
    35# Copyright (c) 2006 by [] 
    4 # Generator: ArchGenXML Version 1.4.1 
     6# Generator: ArchGenXML Version 1.5.0 
    57#            http://plone.org/products/archgenxml 
    68# 
     
    6668 
    6769class Thesaurus(BaseFolder): 
     70    """ 
     71    """ 
    6872    security = ClassSecurityInfo() 
    6973    __implements__ = (getattr(BaseFolder,'__implements__',()),) 
     
    7781    filter_content_types = 1 
    7882    global_allow = 0 
    79     allow_discussion = False 
    8083    #content_icon = 'Thesaurus.gif' 
    8184    immediate_view = 'base_view' 
     
    9598 
    9699 
    97 registerType(Thesaurus,PROJECTNAME) 
     100registerType(Thesaurus, PROJECTNAME) 
    98101# end of class Thesaurus 
    99102 
  • PleiadesThesauri/trunk/PleiadesThesauri/__init__.py

    r161 r168  
     1# -*- coding: utf-8 -*- 
     2# 
    13# File: PleiadesThesauri.py 
    24# 
    35# Copyright (c) 2006 by [] 
    4 # Generator: ArchGenXML Version 1.4.1 
     6# Generator: ArchGenXML Version 1.5.0 
    57#            http://plone.org/products/archgenxml 
    68# 
     
    3739#       with a method register(context) to register the policy. 
    3840 
    39 from zLOG import LOG, INFO 
     41from zLOG import LOG, INFO, DEBUG 
    4042 
    41 LOG('PleiadesThesauri',INFO, 'Installing Product') 
     43LOG('PleiadesThesauri', DEBUG, 'Installing Product') 
    4244 
    4345try: 
     
    5052from Products.CMFCore import CMFCorePermissions 
    5153from Products.CMFCore import DirectoryView 
    52 from Products.CMFPlone.PloneUtilities import ToolInit 
     54from Products.CMFPlone.utils import ToolInit 
    5355from Products.Archetypes.atapi import * 
    5456from Products.Archetypes import listTypes 
     
    8183    ToolInit( PROJECTNAME +' Tools', 
    8284                tools = tools, 
    83                 product_name = PROJECTNAME, 
    8485                icon='tool.gif' 
    8586                ).initialize( context ) 
  • PleiadesThesauri/trunk/PleiadesThesauri/config.py

    r161 r168  
     1# -*- coding: utf-8 -*- 
     2# 
    13# File: PleiadesThesauri.py 
    24# 
    35# Copyright (c) 2006 by [] 
    4 # Generator: ArchGenXML Version 1.4.1 
     6# Generator: ArchGenXML Version 1.5.0 
    57#            http://plone.org/products/archgenxml 
    68# 
  • PleiadesThesauri/trunk/PleiadesThesauri/version.txt

    r166 r168  
    1 0.1 build 13 
     10.1 build 16 
  • PleiadesThesauri/trunk/archgenxml.log

    r167 r168  
    33main       DEBUG Model file is './models/PleiadesThesauri.xmi'. 
    44main       DEBUG Figuring out the settings we're passing to the main program... 
    5 main       DEBUG Keys available through the option parser: ['ape_support', 'author', 'backreferences_support', 'build_msgcatalog', 'config_file', 'copyright', 'creation_roles', 'customization_policy', 'default_creation_permission', 'default_description_generation', 'default_field_generation', 'detailed_created_permissions', 'detailed_creation_permissions', 'email', 'force', 'generateActions', 'generateDefaultActions', 'generate_packages', 'generated_date', 'i18n_content_support', 'license', 'method_preservation', 'module_info_header', 'noclass', 'outfilename', 'parse_packages', 'prefix', 'rcs_id', 'relation_implementation', 'sql_storage_support', 'strip_html', 'unknownTypesAsString', 'version_info', 'widget_enhancement']. 
     5main       DEBUG Keys available through the option parser: ['ape_support', 'author', 'backreferences_support', 'build_msgcatalog', 'config_file', 'copyright', 'creation_roles', 'customization_policy', 'default_class_type', 'default_creation_permission', 'default_description_generation', 'default_field_generation', 'detailed_created_permissions', 'detailed_creation_permissions', 'email', 'force', 'generateActions', 'generateDefaultActions', 'generate_packages', 'generated_date', 'i18n_content_support', 'license', 'method_preservation', 'module_info_header', 'noclass', 'outfilename', 'parse_packages', 'pdb_on_exception', 'prefix', 'rcs_id', 'relation_implementation', 'sql_storage_support', 'strip_html', 'unknownTypesAsString', 'version_info', 'widget_enhancement']. 
    66main       DEBUG Option 'ape_support' has value '0'. 
    77main       DEBUG Option 'author' has value '[]'. 
     
    1212main       DEBUG Option 'creation_roles' has value 'python:('Manager','Owner')'. 
    1313main       DEBUG Option 'customization_policy' has value '0'. 
     14main       DEBUG Option 'default_class_type' has value 'content_class'. 
    1415main       DEBUG Option 'default_creation_permission' has value 'Add portal content'. 
    1516main       DEBUG Option 'default_description_generation' has value '0'. 
     
    3031main       DEBUG Option 'outfilename' has value './PleiadesThesauri'. 
    3132main       DEBUG Option 'parse_packages' has value 'None'. 
     33main       DEBUG Option 'pdb_on_exception' has value '0'. 
    3234main       DEBUG Option 'prefix' has value ''. 
    3335main       DEBUG Option 'rcs_id' has value '0'. 
     
    3840main       DEBUG Option 'version_info' has value '1'. 
    3941main       DEBUG Option 'widget_enhancement' has value '1'. 
    40 generator  DEBUG Initializing ArchetypesGenerator. We're being passed a file './models/PleiadesThesauri.xmi' and keyword arguments {'detailed_creation_permissions': 0, 'default_description_generation': 0, 'force': 1, 'backreferences_support': None, 'prefix': '', 'generateActions': 1, 'generated_date': 0, 'relation_implementation': 'basic', 'detailed_created_permissions': 0, 'customization_policy': 0, 'generate_packages': None, 'sql_storage_support': 0, 'copyright': '', 'author': [], 'outfilename': './PleiadesThesauri', 'generateDefaultActions': 0, 'email': [], 'config_file': None, 'version_info': 1, 'rcs_id': 0, 'module_info_header': 1, 'default_creation_permission': 'Add portal content', 'build_msgcatalog': 1, 'i18n_content_support': '', 'license': 'GPL', 'default_field_generation': 0, 'unknownTypesAsString': 0, 'method_preservation': 1, 'widget_enhancement': 1, 'strip_html': 0, 'ape_support': 0, 'noclass': 0, 'parse_packages': None, 'creation_roles': "python:('Manager','Owner')"}. 
     42generator  DEBUG Initializing ArchetypesGenerator. We're being passed a file './models/PleiadesThesauri.xmi' and keyword arguments {'detailed_creation_permissions': 0, 'default_description_generation': 0, 'force': 1, 'backreferences_support': None, 'prefix': '', 'default_class_type': 'content_class', 'generated_date': 0, 'relation_implementation': 'basic', 'detailed_created_permissions': 0, 'customization_policy': 0, 'generate_packages': None, 'sql_storage_support': 0, 'copyright': '', 'author': [], 'outfilename': './PleiadesThesauri', 'generateDefaultActions': 0, 'email': [], 'config_file': None, 'version_info': 1, 'pdb_on_exception': 0, 'generateActions': 1, 'rcs_id': 0, 'module_info_header': 1, 'default_creation_permission': 'Add portal content', 'build_msgcatalog': 1, 'i18n_content_support': '', 'license': 'GPL', 'default_field_generation': 0, 'unknownTypesAsString': 0, 'method_preservation': 1, 'widget_enhancement': 1, 'strip_html': 0, 'ape_support': 0, 'noclass': 0, 'parse_packages': None, 'creation_roles': "python:('Manager','Owner')"}. 
    4143generator  DEBUG After copying over the keyword arguments (read: OptionParser's options), outfilename is './PleiadesThesauri'. 
    4244generator  DEBUG Stripped off the eventual trailing slashes: './PleiadesThesauri'. 
     
    6062TGVregistry DEBUG Checking tag 'rename_after_creation' (category 'XMIParser.XMIClass') in the registry... 
    6163TGVregistry DEBUG Tag 'rename_after_creation' (category 'class') exists in the registry. 
    62 XMIparser  DEBUG Found the following tagged values: {u'rename_after_creation': u'true'}. 
     64XMIparser  DEBUG Found the following tagged values: {'rename_after_creation': 'true'}. 
    6365XMIparser  DEBUG Trying to find statemachines... 
    6466XMIparser  DEBUG Setting ownedElement to self.domElement as fallback. 
    65 XMIparser  DEBUG We set the owned element as: <DOM Element: UML:Class at 0xd4ed00>. 
     67XMIparser  DEBUG We set the owned element as: <DOM Element: UML:Class at 0xd52e90>. 
    6668XMIparser  DEBUG Found the following statemachines: []. 
    6769XMIparser  DEBUG Initializing from DOM: name='thesaurusIdentifier', id='.:0000000000001045'. 
     
    7173TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    7274TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
    73 XMIparser  DEBUG Found the following tagged values: {u'widget:label': u'Identifier'}. 
     75XMIparser  DEBUG Found the following tagged values: {'widget:label': 'Identifier'}. 
    7476XMIparser  DEBUG Initializing from DOM: name='thesaurusDescription', id='.:0000000000001053'. 
    7577XMIparser  DEBUG Gathering the taggedvalues for element thesaurusDescription. 
     
    7880TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    7981TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
    80 XMIparser  DEBUG Found the following tagged values: {u'widget:label': u'Description'}. 
    81 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
     82XMIparser  DEBUG Found the following tagged values: {'widget:label': 'Description'}. 
    8283XMIparser  DEBUG Initialising class. 
    8384XMIparser  DEBUG Package set to 'untitledModel'. 
     
    9091TGVregistry DEBUG Checking tag 'rename_after_creation' (category 'XMIParser.XMIClass') in the registry... 
    9192TGVregistry DEBUG Tag 'rename_after_creation' (category 'class') exists in the registry. 
    92 XMIparser  DEBUG Found the following tagged values: {u'rename_after_creation': u'true'}. 
     93XMIparser  DEBUG Found the following tagged values: {'rename_after_creation': 'true'}. 
    9394XMIparser  DEBUG Trying to find statemachines... 
    9495XMIparser  DEBUG Setting ownedElement to self.domElement as fallback. 
    95 XMIparser  DEBUG We set the owned element as: <DOM Element: UML:Class at 0xd5bc88>. 
     96XMIparser  DEBUG We set the owned element as: <DOM Element: UML:Class at 0xd5fe18>. 
    9697XMIparser  DEBUG Found the following statemachines: []. 
    9798XMIparser  DEBUG Initializing from DOM: name='termIdentifier', id='.:000000000000104B'. 
     
    101102TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    102103TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
    103 XMIparser  DEBUG Found the following tagged values: {u'widget:label': u'Identifier'}. 
     104XMIparser  DEBUG Found the following tagged values: {'widget:label': 'Identifier'}. 
    104105XMIparser  DEBUG Initializing from DOM: name='termDescription', id='.:0000000000001058'. 
    105106XMIparser  DEBUG Gathering the taggedvalues for element termDescription. 
     
    108109TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    109110TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
    110 XMIparser  DEBUG Found the following tagged values: {u'widget:label': u'Description'}. 
    111 XMIparser  DEBUG getName has to fallback to unicode: Term. Converting to utf-8. 
     111XMIparser  DEBUG Found the following tagged values: {'widget:label': 'Description'}. 
    112112XMIparser  DEBUG Initialising class. 
    113113XMIparser  DEBUG Package set to 'untitledModel'. 
     
    121121XMIparser  DEBUG Trying to find statemachines... 
    122122XMIparser  DEBUG Setting ownedElement to self.domElement as fallback. 
    123 XMIparser  DEBUG We set the owned element as: <DOM Element: UML:Class at 0xdcf8f0>. 
     123XMIparser  DEBUG We set the owned element as: <DOM Element: UML:Class at 0xdcea80>. 
    124124XMIparser  DEBUG Found the following statemachines: []. 
    125 XMIparser  DEBUG getName has to fallback to unicode: Thesauri. Converting to utf-8. 
    126125XMIparser  DEBUG Found the following state machines: []. 
    127126XMIparser  DEBUG Getting value for tag 'use_workflow' (default=). Note: we're not doing this recursively. 
     
    137136TGVregistry DEBUG Tag 'use_workflow' (category 'class') exists in the registry. 
    138137XMIparser  DEBUG Returning value '', 
    139 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    140 XMIparser  DEBUG getName has to fallback to unicode: Term. Converting to utf-8. 
    141 XMIparser  DEBUG getName has to fallback to unicode: Thesauri. Converting to utf-8. 
    142138XMIparser  DEBUG Ok, weve found an aggregation. 
    143 XMIparser  DEBUG Master '<DOM Element: UML:AssociationEnd at 0xd67dc8>', detail '<DOM Element: UML:AssociationEnd at 0xdc4a30>'. 
     139XMIparser  DEBUG Master '<DOM Element: UML:AssociationEnd at 0xdbef58>', detail '<DOM Element: UML:AssociationEnd at 0xdc3bc0>'. 
    144140XMIparser  DEBUG Initializing from DOM: name='', id='.:000000000000103D'. 
    145141XMIparser  DEBUG Gathering the taggedvalues for element . 
     
    152148XMIparser  DEBUG Found nothing. 
    153149XMIparser  DEBUG Ok, weve found an aggregation. 
    154 XMIparser  DEBUG Master '<DOM Element: UML:AssociationEnd at 0xdd3530>', detail '<DOM Element: UML:AssociationEnd at 0xdd7198>'. 
     150XMIparser  DEBUG Master '<DOM Element: UML:AssociationEnd at 0xdd26c0>', detail '<DOM Element: UML:AssociationEnd at 0xdd6328>'. 
    155151XMIparser  DEBUG Initializing from DOM: name='', id='.:000000000000106A'. 
    156152XMIparser  DEBUG Gathering the taggedvalues for element . 
     
    165161generator  DEBUG We've got an self.outfilename: ./PleiadesThesauri. 
    166162generator  DEBUG We've split off the last directory name: PleiadesThesauri. 
    167 XMIparser  DEBUG getName has to fallback to unicode: untitledModel. Converting to utf-8. 
    168163XMIparser  DEBUG Setting our name to 'PleiadesThesauri' the hard way. The automatic mechanism set it to 'untitledModel' already. 
    169164generator  DEBUG Set the name of the root generator to that directory name. 
     
    225220utils      DEBUG Trying to make directory '.\PleiadesThesauri\skins\PleiadesThesauri' (force=1). 
    226221utils      DEBUG Directory already exists. Fine. 
    227 XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    228 TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
    229 TGVregistry DEBUG Tag 'module' (category 'model') exists in the registry. 
    230 XMIparser  DEBUG Returning value '', 
    231 XMIparser  DEBUG Getting value for tag 'module_name' (default=). Note: we're not doing this recursively. 
    232 TGVregistry DEBUG Checking tag 'module_name' (category 'XMIParser.XMIModel') in the registry... 
    233 TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    234 XMIparser  DEBUG Returning value '', 
    235 XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    236 TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
    237 TGVregistry DEBUG Tag 'module' (category 'model') exists in the registry. 
    238 XMIparser  DEBUG Returning value '', 
    239 XMIparser  DEBUG Getting value for tag 'module_name' (default=). Note: we're not doing this recursively. 
    240 TGVregistry DEBUG Checking tag 'module_name' (category 'XMIParser.XMIModel') in the registry... 
    241 TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    242 XMIparser  DEBUG Returning value '', 
    243 generator  DEBUG Calling makeDir to create 'PleiadesThesauri\skins\PleiadesThesauri_public'. 
    244 generator  DEBUG Together with the targetroot that means '.\PleiadesThesauri\skins\PleiadesThesauri_public'. 
    245 utils      DEBUG Trying to make directory '.\PleiadesThesauri\skins\PleiadesThesauri_public' (force=1). 
    246 utils      DEBUG Directory already exists. Fine. 
    247 XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    248 TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
    249 TGVregistry DEBUG Tag 'module' (category 'model') exists in the registry. 
    250 XMIparser  DEBUG Returning value '', 
    251 XMIparser  DEBUG Getting value for tag 'module_name' (default=). Note: we're not doing this recursively. 
    252 TGVregistry DEBUG Checking tag 'module_name' (category 'XMIParser.XMIModel') in the registry... 
    253 TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    254 XMIparser  DEBUG Returning value '', 
    255 XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    256 TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
    257 TGVregistry DEBUG Tag 'module' (category 'model') exists in the registry. 
    258 XMIparser  DEBUG Returning value '', 
    259 XMIparser  DEBUG Getting value for tag 'module_name' (default=). Note: we're not doing this recursively. 
    260 TGVregistry DEBUG Checking tag 'module_name' (category 'XMIParser.XMIModel') in the registry... 
    261 TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    262 XMIparser  DEBUG Returning value '', 
    263 generator  DEBUG Calling makeFile to create 'PleiadesThesauri\skins\PleiadesThesauri_public\readme.txt'. 
    264 generator  DEBUG Together with the targetroot that means '.\PleiadesThesauri\skins\PleiadesThesauri_public\readme.txt'. 
    265 utils      DEBUG Making file '.\PleiadesThesauri\skins\PleiadesThesauri_public\readme.txt' (force=1). 
    266 utils      DEBUG Opening the file for writing and returning it. 
    267222XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    268223TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
     
    294249XMIparser  DEBUG Params: aggtypes='['none']', aggtypesTo='['none']'. 
    295250XMIparser  DEBUG Associations found: []. 
    296 generator  DEBUG Generating package <XMIParser.XMIModel instance at 0x00D40508>. 
     251generator  DEBUG Generating package <XMIParser.XMIModel instance at 0x00D436E8>. 
    297252XMIparser  DEBUG Looking if element has stereotype ['odStub', 'stub'] 
    298253umlprofile DEBUG Finding stereotypes for entities ['XMIParser.XMIModel']. 
     
    314269utils      DEBUG Trying to make directory '.\PleiadesThesauri' (force=1). 
    315270utils      DEBUG Directory already exists. Fine. 
    316 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    317 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    318271XMIparser  DEBUG Looking if element has stereotype ['odStub', 'stub'] 
    319272umlprofile DEBUG Finding stereotypes for entities ['XMIParser.XMIClass']. 
     
    331284TGVregistry DEBUG Tag 'module_name' (category 'class') exists in the registry. 
    332285XMIparser  DEBUG Returning value '', 
    333 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    334 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    335286XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    336287TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
     
    344295pyparser   DEBUG Initialising module parser for file '.\PleiadesThesauri\Thesaurus.py'. 
    345296pyparser   DEBUG In total, we found 5 protected sections. 
    346 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    347297generator  DEBUG Existing sources found for element Thesaurus: PleiadesThesauri\Thesaurus.py. 
    348298XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
     
    414364TGVregistry DEBUG Tag 'module_name' (category 'class') exists in the registry. 
    415365XMIparser  DEBUG Returning value '', 
    416 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    417 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    418366basegenerator DEBUG Trying to get value of option 'generated_date' for element 'Thesaurus' (default value is 'False', aggregate is 'False'). 
    419367basegenerator DEBUG Found the element. 
     
    431379basegenerator DEBUG The value is '1'. 
    432380basegenerator DEBUG We want version info in every file. 
     381basegenerator DEBUG Trying to get value of option 'encoding' for element 'Thesaurus' (default value is 'utf-8', aggregate is 'False'). 
     382basegenerator DEBUG Found the element. 
     383basegenerator DEBUG Trying our parent: PleiadesThesauri. 
     384basegenerator DEBUG Found nothing in the assorted taggedvalues. 
     385basegenerator DEBUG Now looking in the options. 
     386basegenerator DEBUG Returning default value 'utf-8'. 
     387basegenerator DEBUG Encoding for python files is set to utf-8 
    433388basegenerator DEBUG Finding suitable dispatching stereotype for element... 
    434389umlprofile DEBUG Finding stereotypes for entities ['XMIClass']. 
    435390umlprofile DEBUG Stripped off 'XMIParser.': ['XMIClass']. 
    436 basegenerator DEBUG Dispatching stereotypes found in our UML profile: [<StereoType name=plone_testcase entities=['XMIClass']>, <StereoType name=widget entities=['XMIClass']>, <StereoType name=content_class entities=['XMIClass']>, <StereoType name=field entities=['XMIClass']>, <StereoType name=setup_testcase entities=['XMIClass']>, <StereoType name=interface_testcase entities=['XMIClass']>, <StereoType name=testcase entities=['XMIClass']>, <StereoType name=doc_testcase entities=['XMIClass']>, <StereoType name=python_class entities=['XMIClass']>]. 
     391basegenerator DEBUG Dispatching stereotypes found in our UML profile: [<StereoType name=plone_testcase entities=['XMIClass']>, <StereoType name=widget entities=['XMIClass']>, <StereoType name=content_class entities=['XMIClass']>, <StereoType name=field entities=['XMIClass']>, <StereoType name=setup_testcase entities=['XMIClass']>, <StereoType name=interface_testcase entities=['XMIClass']>, <StereoType name=testcase entities=['XMIClass']>, <StereoType name=doc_testcase entities=['XMIClass']>, <StereoType name=zope_class entities=['XMIClass']>, <StereoType name=python_class entities=['XMIClass']>]. 
    437392XMIparser  DEBUG Looking if element has stereotype 'plone_testcase' 
    438393XMIparser  DEBUG Looking if element has stereotype 'widget' 
     
    443398XMIparser  DEBUG Looking if element has stereotype 'testcase' 
    444399XMIparser  DEBUG Looking if element has stereotype 'doc_testcase' 
     400XMIparser  DEBUG Looking if element has stereotype 'zope_class' 
    445401XMIparser  DEBUG Looking if element has stereotype 'python_class' 
    446 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    447402generator  INFO      Generating class 'Thesaurus'. 
    448 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    449 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    450403basegenerator DEBUG Trying to get value of option 'creation_permission' for element 'Thesaurus' (default value is 'None', aggregate is 'False'). 
    451404basegenerator DEBUG Found the element. 
     
    547500XMIparser  DEBUG Also looking recursively further down the family tree. 
    548501XMIparser  DEBUG Found: '[]'. 
    549 XMIparser  DEBUG getName has to fallback to unicode: Term. Converting to utf-8. 
    550502XMIparser  DEBUG Getting value for tag 'allowed_content_types' (default=). Note: we're not doing this recursively. 
    551503TGVregistry DEBUG Checking tag 'allowed_content_types' (category 'XMIParser.XMIClass') in the registry... 
     
    566518XMIparser  DEBUG Returning value '', 
    567519generator  DEBUG Determining whether the element 'Thesaurus' is folderish... 
    568 XMIparser  DEBUG getName has to fallback to unicode: Term. Converting to utf-8. 
    569520generator  DEBUG Found 1 aggregated classes. 
    570521XMIparser  DEBUG Looking for this class's parents... 
     
    637588TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    638589XMIparser  DEBUG Returning value '', 
    639 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    640 XMIparser  DEBUG getName has to fallback to unicode: thesaurusIdentifier. Converting to utf-8. 
    641590TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    642591TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
     
    690639basegenerator DEBUG Now looking in the options. 
    691640basegenerator DEBUG Returning default value '[]'. 
    692 XMIparser  DEBUG getName has to fallback to unicode: thesaurusIdentifier. Converting to utf-8. 
    693641TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    694642TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
     
    709657XMIparser  DEBUG Returning value '', 
    710658XMIparser  DEBUG Didn't find a tagged value 'documentation'. Returning empty string. 
    711 XMIparser  DEBUG getName has to fallback to unicode: thesaurusIdentifier. Converting to utf-8. 
    712 generator  DEBUG Trying to get formatted field. name='thesaurusIdentifier', fieldtype='StringField', doc='', rawType='string'. 
    713 XMIparser  DEBUG getName has to fallback to unicode: thesaurusDescription. Converting to utf-8. 
    714659TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    715660TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
     
    763708basegenerator DEBUG Now looking in the options. 
    764709basegenerator DEBUG Returning default value '[]'. 
    765 XMIparser  DEBUG getName has to fallback to unicode: thesaurusDescription. Converting to utf-8. 
    766710TGVregistry DEBUG Checking tag 'widget:label' (category 'XMIParser.XMIAttribute') in the registry... 
    767711TGVregistry DEBUG Tag 'widget:label' (category 'attribute') exists in the registry. 
     
    782726XMIparser  DEBUG Returning value '', 
    783727XMIparser  DEBUG Didn't find a tagged value 'documentation'. Returning empty string. 
    784 XMIparser  DEBUG getName has to fallback to unicode: thesaurusDescription. Converting to utf-8. 
    785 generator  DEBUG Trying to get formatted field. name='thesaurusDescription', fieldtype='TextField', doc='', rawType='text'. 
    786728basegenerator DEBUG Trying to get value of option 'generate_reference_fields' for element 'Thesaurus' (default value is 'True', aggregate is 'False'). 
    787729basegenerator DEBUG Found the element. 
     
    796738XMIparser  DEBUG Params: aggtypes='['none']', aggtypesTo='['none']'. 
    797739XMIparser  DEBUG Associations found: []. 
     740generator  DEBUG field_spec is {'map': {'widget': 'StringWidget(\n    label="Identifier",\n    label_msgid=\'PleiadesThesauri_label_thesaurusIdentifier\',\n    i18n_domain=\'PleiadesThesauri\',\n)'}, 'rawType': 'string', 'doc': '', 'array_field': False, 'name': 'thesaurusIdentifier', 'fieldtype': 'StringField', 'indent_level': 1}. 
     741generator  DEBUG Trying to get formatted field. name='thesaurusIdentifier', fieldtype='StringField', doc='', rawType='string'. 
     742generator  DEBUG field_spec is {'map': {'widget': 'TextAreaWidget(\n    label="Description",\n    label_msgid=\'PleiadesThesauri_label_thesaurusDescription\',\n    i18n_domain=\'PleiadesThesauri\',\n)'}, 'rawType': 'text', 'doc': '', 'array_field': False, 'name': 'thesaurusDescription', 'fieldtype': 'TextField', 'indent_level': 1}. 
     743generator  DEBUG Trying to get formatted field. name='thesaurusDescription', fieldtype='TextField', doc='', rawType='text'. 
    798744XMIparser  DEBUG Getting value for tag 'marshaller' (default=). Note: we're not doing this recursively. 
    799745TGVregistry DEBUG Checking tag 'marshaller' (category 'XMIParser.XMIClass') in the registry... 
     
    812758TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    813759XMIparser  DEBUG Returning value '', 
    814 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    815760XMIparser  DEBUG Looking for this class's parents... 
    816761XMIparser  DEBUG Found the following parents: '[]'. 
     
    830775TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    831776XMIparser  DEBUG Returning value '', 
    832 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    833777XMIparser  DEBUG Trying to find documentation for this element. 
    834778XMIparser  DEBUG First trying a tagged value. 
     
    870814XMIparser  DEBUG Looking for this class's parents... 
    871815XMIparser  DEBUG Found the following parents: '[]'. 
    872 XMIparser  DEBUG Getting value for tag 'base_actions' (default=). Note: we're not doing this recursively. 
    873 TGVregistry DEBUG Checking tag 'base_actions' (category 'XMIParser.XMIClass') in the registry... 
    874 TGVregistry DEBUG Tag 'base_actions' (category 'class') exists in the registry. 
    875 XMIparser  DEBUG Returning value '', 
    876 XMIparser  DEBUG Getting value for tag 'default_actions' (default=). Note: we're not doing this recursively. 
    877 TGVregistry DEBUG Checking tag 'default_actions' (category 'XMIParser.XMIClass') in the registry... 
    878 TGVregistry DEBUG Tag 'default_actions' (category 'class') exists in the registry. 
    879 XMIparser  DEBUG Returning value '', 
    880 generator  DEBUG Generating method actions... 
    881 generator  DEBUG First finding our methods. 
    882 XMIparser  DEBUG Getting method definitions (recursive=0)... 
    883 XMIparser  DEBUG Our own methods: []. 
    884816XMIparser  DEBUG Getting value for tag 'immediate_view' (default=). Note: we're not doing this recursively. 
    885817TGVregistry DEBUG Checking tag 'immediate_view' (category 'XMIParser.XMIClass') in the registry... 
     
    901833XMIparser  DEBUG Finding associations pointing at this class... 
    902834XMIparser  DEBUG Params: aggtypes='['composite']', aggtypesTo='['none']'. 
    903 XMIparser  DEBUG Associations found: [<XMIParser.XMIAssociation instance at 0x00DDE3F0>]. 
    904 XMIparser  DEBUG Found compositions that contain us: [<XMIParser.XMIAssociation instance at 0x00DDE3F0>]. 
     835XMIparser  DEBUG Associations found: [<XMIParser.XMIAssociation instance at 0x00DDD788>]. 
     836XMIparser  DEBUG Found compositions that contain us: [<XMIParser.XMIAssociation instance at 0x00DDD788>]. 
    905837XMIparser  DEBUG We *are* part of a composition plus we are not part of an aggregation, so we're stuck inside whatever it is that 'compositions' us. 
    906838XMIparser  DEBUG Check, though, if one of the parents is dependent.If True, count the class as dependent. 
    907839XMIparser  DEBUG Looking for this class's parents... 
    908840XMIparser  DEBUG Found the following parents: '[]'. 
    909 XMIparser  DEBUG End verdict: dependent = '1'. 
     841XMIparser  DEBUG End verdict: dependent = 'True'. 
    910842XMIparser  DEBUG Looking if element has stereotype 'hidden' 
    911843umlprofile DEBUG Finding stereotypes for entities ['XMIParser.XMIClass']. 
     
    942874TGVregistry DEBUG Tag 'content_icon' (category 'class') exists in the registry. 
    943875XMIparser  DEBUG Returning value '', 
    944 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    945 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    946876XMIparser  DEBUG Getting value for tag 'module' (default=). Note: we're not doing this recursively. 
    947877TGVregistry DEBUG Checking tag 'module' (category 'XMIParser.XMIModel') in the registry... 
     
    971901TGVregistry DEBUG Tag 'toolicon' (category 'tool') exists in the registry. 
    972902XMIparser  DEBUG Returning value '', 
    973 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    974 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    975 XMIparser  DEBUG Getting value for tag 'allow_discussion' (default=False). Note: we're not doing this recursively. 
    976 TGVregistry DEBUG Checking tag 'allow_discussion' (category 'XMIParser.XMIClass') in the registry... 
    977 TGVregistry DEBUG Tag 'allow_discussion' (category 'class') exists in the registry. 
    978 XMIparser  DEBUG Returning value 'False', 
    979903generator  DEBUG Determining whether the element 'Thesaurus' is folderish... 
    980 XMIparser  DEBUG getName has to fallback to unicode: Term. Converting to utf-8. 
    981904generator  DEBUG Found 1 aggregated classes. 
    982905XMIparser  DEBUG Looking for this class's parents... 
     
    1001924TGVregistry DEBUG Tag 'label' (category 'class') exists in the registry. 
    1002925XMIparser  DEBUG Returning value '', 
    1003 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    1004926XMIparser  DEBUG Getting value for tag 'typeDescription' (default=Thesaurus). Note: we're not doing this recursively. 
    1005927TGVregistry DEBUG Checking tag 'typeDescription' (category 'XMIParser.XMIClass') in the registry... 
    1006928TGVregistry DEBUG Tag 'typeDescription' (category 'class') exists in the registry. 
    1007929XMIparser  DEBUG Returning value 'Thesaurus', 
    1008 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8. 
    1009 basegenerator DEBUG Trying to get value of option 'rename_after_creation' for element 'Thesaurus' (default value is 'False', aggregate is 'False'). 
     930XMIparser  DEBUG Getting value for tag 'allow_discussion' (default=NOTSET). Note: we're not doing this recursively. 
     931TGVregistry DEBUG Checking tag 'allow_discussion' (category 'XMIParser.XMIClass') in the registry... 
     932TGVregistry DEBUG Tag 'allow_discussion' (category 'class') exists in the registry. 
     933XMIparser  DEBUG Returning value 'NOTSET', 
     934XMIparser  DEBUG Getting value for tag 'base_actions' (default=). Note: we're not doing this recursively. 
     935TGVregistry DEBUG Checking tag 'base_actions' (category 'XMIParser.XMIClass') in the registry... 
     936TGVregistry DEBUG Tag 'base_actions' (category 'class') exists in the registry. 
     937XMIparser  DEBUG Returning value '', 
     938XMIparser  DEBUG Getting value for tag 'default_actions' (default=). Note: we're not doing this recursively. 
     939TGVregistry DEBUG Checking tag 'default_actions' (category 'XMIParser.XMIClass') in the registry... 
     940TGVregistry DEBUG Tag 'default_actions' (category 'class') exists in the registry. 
     941XMIparser  DEBUG Returning value '', 
     942generator  DEBUG Generating method actions... 
     943generator  DEBUG First finding our methods. 
     944XMIparser  DEBUG Getting method definitions (recursive=0)... 
     945XMIparser  DEBUG Our own methods: []. 
     946basegenerator DEBUG Trying to get value of option 'rename_after_creation' for element 'Thesaurus' (default value is 'True', aggregate is 'False'). 
    1010947basegenerator DEBUG Found the element. 
    1011948basegenerator DEBUG The element has a matching tagged value. 
     
    1028965TGVregistry DEBUG Tag 'module_name' (category 'model') exists in the registry. 
    1029966XMIparser  DEBUG Returning value '', 
    1030 XMIparser  DEBUG getName has to fallback to unicode: Thesaurus. Converting to utf-8.