Open BernardoFBBraga opened 8 years ago
@BernardoFBBraga , o que acha da gente pode colocar no dialogo da transformação para alloy uma tab com opções para transformação de datatypes, tipo nós fizemos para OWL?
O cara escolhe se transforma Int, String e Bol para os primitivos de alloy ou não.
Caso escolha usar String primitiva, a gente coloca uma caixa de dialogo para ele preencher com possíveis valores e usamos isso na transformação.
Se escolher usar o Int primitivo, ele escolhe o tamanho máximo de int que quer. Claro que respeitando os limites de Alloy.
Inclusive, Float, Decimal e similares também poderiam ser opcionalmente mapeados para o Int nativo.
@tgoprince acho boa idéia!
Atualmente, tendo datatypes Int e String no modelo, o OntoUML2Alloy os transforma para Int e String
Poderíamos transformá-los para as palavras chave reservadas, melhorando a performance.
Para isso, é preciso cuidar do escopo de String, que deve ser especificado exatamente e deve-se suprimir os seguintes constraints da transformaçao:
fact dataTypeCompleteness { DataType = Int+String }
fact topLevelDataTypesDisjointnes { disj[Int,String] disj[String,Int] }