Ficha Nº3
Exercício Nº1
2012.01.16

Registo Desportivo


Hoje em dia, há uma preocupação crescente com a saúde individual de cada pessoa. Cada vez mais, os médicos prescrevem sessões de jogging ou ginásio no lugar de medicamentos.

Muitas pessoas começam por seguir o conselho do médico e começam com as suas sessões de jogging. Mas como o desporto, e a corrida em particular são actividades viciantes, cedo o praticante começa a querer mais. Daí até à participação em eventos e provas a distância é pequena.

Neste cenário, o registo do que se faz é importante pois permite analisar "a posteriori" a evoluação de cada um.

Foi-te atribuída a tarefa de criares um sistema de registos desportivos que deverá ficar disponível como um Web Service.

Apresenta-se a seguir um registo desportivo para exemplificar a estrutura e servir como base para o trabalho que irás realizar.
<sportevents>
  <event>
    <data>2011-01-30</data>
	<designacao>Meia-maratona de Viana do Castelo, <distancia>21.095</distancia>Km, Estrada</designacao>
	<url></url>
	<local>Viana do Castelo</local>
	<resultado><tempo>01:42:44</tempo></resultado> 
  </event>...
</sportevents>

Desenvolva então as seguintes alíneas:

(a)Especifique um Schema para o ficheiro XML que guardará os vários registos.

(b)Utilize o documento disponibilizado nos recursos para verificar se o seu Schema faz o pretendido.

(c)Crie uma script em PHP, usando o SimpleXML, para listar numa tabela HTML o conteúdo do ficheiro.

(d)Crie outra script em PHP, que utilizando o SimpleXML, apresenta um formulário para introdução de um novo registo e o insere no documento.

(e)Depois de testadas estas scripts, crie um Web Service onde irá expôr as duas funcionalidades: listar e inserir (não se esqueça de que terá de fazer algumas adaptações).

(f)Crie um cliente para listar os registos.

(g)Crie um cliente, poderá ser um formulário, para inserir um novo registo.

(h)Depois de os ter testado, avise o docente de que está pronto. O seu serviço será colocado num servidor externo para que adapte o cliente e verifique se este consegue consumir o serviço externo.