Deserializando XML - Qual melhor Opção?

0 respostas
S

Ola pessoal.

A Interface de um softeware, desenvolvida em GMF, gera um XML semelhante a este postado abaixo.
A partir deste preciso Gerar um XML mais organizado, ja tenho a DTD, e as classes java, para validação do novo. Se tudo ocorrer bem, para Serializar no novo formato vou usar JaxB.

Dúvidas:
@Qual a melhor maneira para Deserializar este XML postado a baixo? Sabendo que ainda nao possuo as classes java.

@Existe algum software que Gera Classes Java a partir deste XML?? (Faria um mais completo dai)

@Fiz alguns teste com XStream e esta dando erro nesta parte <userInputs xsi:type=“uid:EnumeratedUserInput”. Certamente é porque eu estou fazendo as classes na força bruta. .
Mas eu não entendi como o software identifica este <userInputs xsi:type. ALguem sabe me dizer??

<?xml version="1.0" encoding="UTF-8"?>
<uid:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:uid="uid">
  <states>
    <userInputs xsi:type="uid:EnumeratedUserInput" set="1" dataItem="Cor" options="azul, preto, branco"/>
  </states>
  <states>
    <dataItems set="1..1" name="nome" domain="String"/>
    <substates>
      <userInputs xsi:type="uid:OptionalEnumeratedUserInput" set="1" dataItem="Motor" options="1.0, 1.4, 1.6"/>
    </substates>
  </states>
  <initialState/>
  <transitions xsi:type="uid:UniTransition" source="//@states.0" target="//@states.1"/>
  <transitions xsi:type="uid:RegTransition" source="//@states.1" target="//@uidCalls.0"/>
  <transitions xsi:type="uid:BiTransition" source="//@states.1/@substates.0" target="//@states.0"/>
  <transitions xsi:type="uid:UniTransition" source="//@states.1/@dataItems.0" target="//@states.1"/>
  <uidCalls name="ddd"/>
  <conditions xsi:type="uid:PreCondition" value="carro selecionado"/>
  <conditions xsi:type="uid:PostCondition" value="carro pintado"/>
  <parameters value="zzzz"/>
  <initialStateTransition source="//@initialState" target="//@states.0"/>
</uid:Diagram>

Grato,
Filipe D.

Criado 16 de julho de 2009
Respostas 0
Participantes 1