Coder Social home page Coder Social logo

x2xmldatabinding's Introduction

X²XMLDataBinding

an alternative to the Delphi built-in XML data binding generator with a few benefits.

Key features

  • Proper namespace support
  • Output to a single file or multiple files, allowing types to be reused when included from several root schemas
  • Has properties for optional elements and attributes
  • IsNil properties for xsi:nil elements
  • Def methods to safely read optional values with a default
  • Read and write enumeration properties as a typed enum or raw text
  • Proper boolean support
  • Much improved support for date/time values
  • Support for Base64 encoded values
  • Basic validation for outputting XML documents which applies element order for sequences and checks for the presence of required elements
  • Influence the generator by using a Hints file

Dependencies

  • Works up from Delphi XE2

Documentation is available on ReadTheDocs.

x2xmldatabinding's People

Contributors

mvrens avatar herosofty avatar

Stargazers

Roald van Doorn avatar  avatar  avatar Tiberiu avatar Geoffrey Smith avatar Yury (bigjorj) Mikhalev avatar Lübbe Onken avatar Darian Miller avatar 球球 avatar El Salvador avatar Roman Hossain Shaon avatar Edwin Yip avatar Sven Harazim avatar  avatar Me avatar

Watchers

 avatar James Cloos avatar  avatar Yury (bigjorj) Mikhalev avatar  avatar Philipp avatar

x2xmldatabinding's Issues

ValidateRequiredElements with namespaces

ValidateRequiredElements in XMLDataBindingUtils does not have overloaded version with namespaces like CreateRequiredElements has.
There are a lot of false Missing element events In multi namespace environment.
It would be great if generated Txxxxxx.XSDValidateStrict could call that overloaded ValidateRequiredElements procedure.

Documentation nodes not recognized

This solution of merge request #4 ignores every documentation.
SchemaItem.Documentation is a collection of documentation nodes, therefore it never IsTextElement.
You have to check the collection items, i.e. SchemaItem.Documentation[0].IsTextElement

Stack overlfow by converting FHIR

Hello there.

There is a open project at
http://hl7.org/fhir/directory.html
when you download it (tested with 4.0.1) you will get an overflow error (or similar)
by importing/converting some of the files.
You can test it by using "xml.xsd" or "fhir-xhtml.xsd", which works perfectly fine,
but if you use "fhir-all.xsd" or "fhir-base.xsd" (which used "fhir-all.xsd") it fails.
First it stops at Units\XMLDataBindingGenerator.pas:IterateShemaItem
what I try to fix myself by adding an List to avoid adding the same file again and again,
but it doesn't work out.
XMLDataBindingGenerator.zip
Maybe it is anyway a good idea to do so and you want to use this.

Sorry for any gramar issues, I'm from germany.
So, greetings from germany
Gerit Freericks

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.