Giter VIP home page Giter VIP logo

go-xml's Introduction

GoDoc Build Status

Installation

Requires go 1.9 or greater for golang.org/x/html dependency.

go get aqwari.net/xml/...

This repository contains a collection of Go packages for working with XML, with the ultimate goal of enabling code generation based on XML documents.

  • The xmltree package converts xml documents to a tree data structure, and provides convenient methods for manipulating and searching through that tree.
  • The xsd package implements a parser for XML Schema. It takes some liberties from the specification, and would need some work for use as a validator, but it handles type inheritance and XML namespaces in a relatively sane way.
  • The xsdgen package provides a customizable code generator that generates Go type declarations and marshal/unmarshal methods for an XML Schema.
  • The wsdl package parses Web Service Definition Language (WSDL) files, which describe a (usually) SOAP web service.
  • The wsdlgen package generates Go source code from WSDL files.
  • The xsdgen and wsdlgen commands generate Go code with default settings and are suitable for use with go generate.

The directory wsdlgen/examples contains packages that were (mostly) automatically generated using the wsdlgen package. You can run

go generate

within the subdirectories to re-generate the code if you make changes to the wsdlgen package. This code is still very rough around the edges, but I have succesfully used it to generate type declarations for some pretty complex XML schema from an Apache Axis application. There are github issues opened for missing functionality.

go-xml's People

Contributors

droyo avatar marcuscobden-nbs avatar shmsr avatar kortschak avatar leth avatar andreynering avatar carolinasolfernandez avatar kohenkatz avatar paulbellamy avatar flisky avatar davidalpert avatar doroginin avatar ianlopshire avatar elbuki avatar nrlakin avatar bombsimon avatar kvisscher avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.