Olá Fagner,
A primeira coisa que necessita saber é que estudando o codigo do Alfresco Share não vai achar a solução. O alfresco share é somente uma interface de acesso que utiliza chamadas remotas para realizar ações, e todo o processamento é feito pelo Explorer, então creio que se queres estudar como isto funciona a fundo tens que se focar no estudo do Explorer.
Para sua criação de tipos documentais através de programação você poderia utilizar uma forma mais simples, que é a criação de nodes em <strong>/app:company_home/app:dictionary/app:models</strong> cujo conteúdo é um xml do tipo documental. Assim porerias criar um modulo que simplesmente agiria sobre este xml realizando as inserções e remoções dos metadados desejados.
Lembre-se que modificação de tipos documentais em ambientes de produção pode ser muito perigoso, uma vez que podes remover um campo que fora preenchido em documentos presentes na base do alfresco. Outro pronto importante é verificar a compatibilidade de tipos. (ex: converter int para date)
[]s