Uma suposta sintaxe para esse objeto poderia ser algo como:

editoraConsultar(in editora:Editora, out livrosDisponiveis:Livros [1..*], out autores:Pessoa[1..*]): ConsultaOk

Observe nesse exemplo que:

É possível juntar os dois conceitos, utilizando o que é chamado de “in out”. Isso ocorre quando precisamos passar argumentos para método, modifica-los dentro do método, e posteriormente retorná-los.

Exemplo: para que o método abaixo possa passar, modificar e retornar dois objetos como resposta, optou-se por passa-los como referência na linha de argumentos.

consultarCliente (in out cliente:Cliente, in out movimentação:Movimentacao):Ok
Copyright © 2014 AIEC.