pool::RootCollection::RootCollectionSchemaEditor Node1 pool::RootCollection ::RootCollectionSchemaEditor # m_collection # m_description # m_tree # m_schemaWritten # m_poolOut + RootCollectionSchemaEditor() + setEventReferenceColumnName() + insertColumn() + insertColumn() + insertTokenColumn() + annotateColumn() + dropColumn() + renameColumn() + ~RootCollectionSchemaEditor() # addTreeBranch() # readSchema() # createTreeBranches() # writeSchema() Node2 pool::ICollectionSchemaEditor + setEventReferenceColumnName() + insertColumn() + insertColumn() + insertTokenColumn() + annotateColumn() + dropColumn() + renameColumn() + ~ICollectionSchemaEditor() Node2->Node1