A camada comum define as interfaces e os pontos de extensão, fornece as classes e interfaces de API. Ela também fornece os ganchos dos menus, das ações, dos marcadores da interface com o usuário do Eclipse. A camada de estrutura comum é inicializada pela arquitetura do editor do TPTP. Como os editores do RPT são extensões carregadas e inicializadas pela plataforma TPTP por meio do ponto de extensão org.eclipse.hyades.ui.editorExtensions, uma das responsabilidades da estrutura de editor comum é fornecer ganchos e APIs (Interfaces de Programação de Aplicativo) para implementações concretas dos editores para comunicação com o TPTP. A estrutura de editor comum define as classes que devem ser estendidas para um comportamento mais específico a ser utilizado pelas implementações do editor estendido. Essa extensão é realizada pela classe TestEditor que é estendida pelo plug-in Carregar Editor de Teste e chamada LoadTestEditor.
A camada de editor estende classes da camada de estrutura comum para fornecer implementações específicas para seus modelos. As camadas de protocolo podem ser básicas e dependentes. Os protocolos básicos não dependem de outros protocolos, como HTTP. Os protocolos dependentes são construídos sobre outros protocolos, por exemplo, Siebel sobre HTTP. As camadas de protocolos são implementadas sobre a camada do editor individual. As camadas de protocolo fornecem manipuladores para objetos específicos de protocolo.
Quando o editor precisa ser aberto em um arquivo de modelo, o Hyades determina qual editor pode manipular esse modelo específico e carrega e inicializa a extensão específica. A camada comum fornece sua implementação da classe de manipulador, a classe CommonEditorExtension. A camada do editor comum cria uma instância da classe TestEditor que deve ser estendida por essa camada. Após a criação do objeto TestEditor, os widgets e os componentes da UI (Interface com o Usuário) são criados para exibir os dados de modelo.
A classe TestEditor fornece a ponte entre o TPTP, o modelo, o Eclipse e o código do protocolo concreto. A classe CommonEditorExtension é utilizada. Quando o editor é fechado pelo usuário ou recarregado, a primeira instância da classe TestEditor é destruída e uma nova é criada.
A camadas descritas anteriormente são divididas em plug-ins separados. Cada plug-in define alguns pontos de extensão que são utilizados pelos plug-ins de nível superior, bem como pelos plug-ins de definição propriamente ditos. Além disso, existem algumas interfaces Java que devem ser usadas ao gravar classes.