validator Como visualizar um esquema XML?




xml xsd validator (12)

Eu fiz um XML Schema - basicamente todo o código - e queria saber se existe uma maneira que o código possa gerar algo assim:

Se sim, como posso fazer isso?


O aplicativo java da linha de comando de software livre xsdvi cria um diagrama interativo no formato SVG a partir de uma definição de esquema XML. O arquivo SVG gerado pode ser exibido por um navegador da Web moderno, onde o usuário pode expandir e recolher a árvore clicando com o mouse.

Aqui está um exemplo de um diagrama gerado

http://xsdvi.sourceforge.net/ipo.svg

O software pode ser baixado

http://sourceforge.net/projects/xsdvi/

Ele pode ser executado da seguinte maneira (supondo que o Java esteja instalado e o java.exe esteja no caminho): -

  1. Vá para a pasta dist/lib .
  2. Execute o seguinte comando java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]

O Diagrama XSD é gratuito (licença GNU aberta), não precisa ser construído e fornece um diagrama interativo. Basta abrir o arquivo e adicionar os tipos desejados no diagrama (inicialmente em branco). Bem direto.


O Visual Studio 2013 tem um visualizador bem legal embutido.

Arquivo -> Abrir -> Arquivo escolha seu .xsd e arraste elementos do XML Schema Explorer para a superfície do designer.


Essa imagem é gerada a partir de uma ferramenta de edição do XML Schema, como o XMLSpy da Altova .

Há várias ferramentas XML ao redor, todas elas incluindo um visualizador gráfico XSD. Mencionei XML Spy simplesmente porque é o líder da marca. Também muitos IDEs gerais como o Eclipse, o Visual Studio e o Oracle JDeveloper poderão fazer esse truque.


Se alguém trabalha com o IBM Rational Application Developer, o navegador XSD é construído nele.


O visualizador embutido do Oracle JDeveloper 11g é, em minha opinião, superior ao disponível para o Eclipse (que, além de outros pontos de comparação desfavoráveis, eu só consegui instalar no Indigo, mas não no Juno ). Se não estou enganado, a Oracle disponibiliza o JDeveloper gratuitamente (requer apenas registro no OTN).


Usamos o Liquid XML Studio, que fornece uma representação editável intuitiva de um esquema XSD. Ele também mostra as anotações em linha, o que achamos muito útil e a visualização split code / gfx é inestimável ao escrever ou editar um XSD.


Oferecemos uma ferramenta chamada DocFlex / XML XSDDoc que permite que você aproveite as duas coisas ao mesmo tempo:

  • Para ter representação de diagrama do seu esquema XML
  • Para que todos esses diagramas sejam incorporados (e com hiperlinks) em uma documentação de esquema XML altamente sofisticada

Os diagramas, de fato, são gerados não por nós, mas pela Altova XMLSpy . Implementamos uma integração com o XMLSpy (com o suporte total de todos os hyperlinks do diagrama):

Aqui você pode ver a íntegra deste documento: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html

A coisa toda fornece uma funcionalidade que não é oferecida por nenhum único fornecedor agora no mercado!

Alguns de nossos clientes ficaram tão impressionados que compraram uma licença extra para o XMLSpy apenas por causa de nossa ferramenta. (Isso não é brincadeira!)

Atualmente, também implementamos integrações semelhantes com outros editores de XML:

Com o <oXygen /> Editor de XML :

Veja: http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html

Com Liquid XML Studio :

Veja: http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html

Quanto ao que todos esses diagramas representam ... Essencialmente, eles são todos sobre o modelo de conteúdo dos elementos XSD (bem como outros componentes XSD que levam a elementos: complexTypes, elementos / grupos de atributos). Parece que existem duas abordagens aqui:

  1. Para mostrar o que seria um modelo de conteúdo de resultado (representado pelo componente fornecido). Essa é a abordagem do XMLSpy.
  2. Para mostrar como um determinado modelo de conteúdo (do componente fornecido) foi derivado de outros componentes. Essa é a abordagem do <oXygen /> XML e Liquid XML.

Eu pessoalmente acredito que os diagramas gerados pelo XMLSpy são mais úteis.

No entanto, não houve tentativas até agora (pelo menos conhecido por mim) para representar graficamente qualquer outra coisa contida em esquemas XML, embora se possa imaginar muitos ...


Aqui está minha abordagem - faça o download do freemind e do CAM XML Template Editor . Em seguida, abra CAM XML, crie um novo modelo a partir de XML, View -> View Template como Mind Map
Prós desta solução:

  • Ele funciona localmente, então arquivos secretos podem ser processados,
  • totalmente grátis,
  • Código aberto.

Contras:

  • Bastante instável com arquivos grandes (mais de 20 MB).

Você pode usar o visualizador on-line do XMLGrid , que fornece um excelente suporte a XSD e muitos outros recursos:

  • Exibir dados XML em uma grade de dados XML.
  • Suporta os tipos de arquivo XML, XSL, XSLT, XSD, HTML.
  • Fácil de modificar ou excluir nós existentes, atributos, comentários.
  • Fácil adicionar novos nós, atributos ou comentários.
  • Fácil de expandir ou reduzir a árvore de nós XML.
  • Ver código-fonte XML.

Captura de tela:


No Linux (com mono, disponível via apt-get no Debian) e Windows:

Se você está no Windows, eu recomendo que você dê uma olhada:

Ambas as ferramentas são gratuitas e ambas podem fornecer visualizações semelhantes, como mostrado no seu exemplo.


Se você precisa de uma documentação simples e mais orientada ao texto do seu XSD, confira xs3p - uma folha de estilo XSLT que transformará seu XSD em um formato HTML mais legível. Muito bom e totalmente gratuito.

Se isso não for suficiente, confira algumas das ferramentas comerciais disponíveis - eu pessoalmente prefiro o Liquid XML Studio - não tão caro quanto os outros, e tão capaz quanto!







xsd