Eu criei um esquema XML - basicamente todo o código - e queria saber se existe uma maneira de o código gerar algo parecido com isto:
Se sim, como posso fazer isso?
Eu criei um esquema XML - basicamente todo o código - e queria saber se existe uma maneira de o código gerar algo parecido com isto:
Se sim, como posso fazer isso?
Respostas:
O aplicativo java da linha de comando de código aberto 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 no mouse.
Aqui está um exemplo de um diagrama gerado
http://xsdvi.sourceforge.net/ipo.svg
O software pode ser baixado em
http://sourceforge.net/projects/xsdvi/
Pode ser executado da seguinte maneira (assumindo que o Java esteja instalado e java.exe
esteja no caminho): -
dist/lib
pastajava -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
java -jar xsdvi.jar <input1.xsd> [<input2.xsd> [<input3.xsd> ...]] [style]
(de xsdvi.zip /res/readme.txt)
O diagrama XSD é gratuito (licença aberta GNU), não precisa ser construído e fornece um diagrama interativo. Você acabou de abrir o arquivo e adicionar os tipos desejados no diagrama (inicialmente em branco). Bem direto.
O visualizador interno do Oracle JDeveloper 11g é, na 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 me engano, a Oracle disponibiliza o JDeveloper gratuitamente (requer apenas registro na OTN).
Você pode usar o visualizador Online do XMLGrid , que fornece um ótimo suporte XSD e muitos outros recursos:
Captura de tela:
No Linux (com mono, disponível via apt-get
Debian) e Windows:
Se você estiver no Windows, recomendo que você dê uma olhada em:
Ambas as ferramentas são gratuitas e podem fornecer visualizações semelhantes, como mostrado no seu exemplo.
Se você precisar de uma documentação simples e mais orientada a texto do seu XSD, consulte 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 caras quanto outras e tão capazes!
Essa imagem é gerada a partir de uma ferramenta de edição de esquema XML, como o XMLSpy da Altova .
Existem várias ferramentas XML disponíveis, todas as quais incluem um Graphical XSD Viewer. Eu mencionei o XML Spy simplesmente porque é o líder da marca. Muitos IDEs gerais, como Eclipse, Visual Studio e Oracle JDeveloper, poderão executar esse truque.
O Visual Studio 2013 possui um visualizador muito legal incorporado.
Arquivo -> Abrir -> Arquivo escolha seu .xsd e arraste elementos do XML Schema Explorer para a superfície do designer.
Oferecemos uma ferramenta chamada DocFlex / XML XSDDoc que permite que você aproveite as duas coisas ao mesmo tempo:
De fato, os diagramas são gerados não por nós, mas pelo Altova XMLSpy . Implementamos uma integração com XMLSpy (com o suporte total de todos os hiperlinks do diagrama):
Aqui você pode ver o documento completo: http://www.filigris.com/docflex-xml/xsddoc/examples/html/XMLSchema/index.html
A coisa toda oferece uma funcionalidade não oferecida por nenhum fornecedor no momento!
Alguns de nossos clientes ficaram tão impressionados que compraram uma licença extra para XMLSpy somente por causa de nossa ferramenta. (Isso não é brincadeira!)
Atualmente, também implementamos integrações semelhantes com outros editores de XML:
Consulte: http://www.filigris.com/docflex-xml/OxygenXML/demo/html/xslt20/index.html
Consulte: http://www.filigris.com/docflex-xml/LiquidXML/demo/html/XMLSchema/index.html
Com relação ao que todos esses diagramas representam ... Essencialmente, eles são todos sobre modelo de conteúdo de elementos XSD (bem como outros componentes XSD que levam a elementos: complexTypes, elemento / grupo de atributos). Parece, existem duas abordagens aqui:
Pessoalmente, acredito que os diagramas gerados pelo XMLSpy são mais úteis.
No entanto, até o momento, não havia tentativas (pelo menos conhecidas) de representar graficamente qualquer outra coisa contida nos esquemas XML, embora se possa imaginar muitas ...
Há uma nova ferramenta da web gratuita para usar, na qual é possível visualizar qualquer esquema xml:
Visualizador de esquema XML online
Ele foi escrito completamente em JavaScript, sendo executado nos navegadores mais modernos.
Aqui está minha abordagem - baixe o freemind e o Editor de modelos XML do CAM . Em seguida, abra o CAM XML, crie um novo modelo a partir do XML, Exibir -> Exibir modelo como mapa mental
Profissionais desta solução:
Contras:
Experimente o meu xsd-viewer disponível em https://github.com/santhosh-tekuri/jlibs .
O Grid-ML Schema Viewer é ótimo para pesquisar e visualizar esquemas XML: https://gridml.com/xml-schema-viewer . Acho melhor do que outras ferramentas quando se trata de esquemas grandes ou quando a navegação em um diagrama não é viável. A ferramenta também permite copiar o caminho XPath ou JSON do item de seleção.