Home > inferdtd

inferdtd

Inferdtd is a project mainly written in Python, based on the GPL-2.0 license.

An implementation of the InferDTD algorithm as described in "Bex et al. Inference of concise DTDs from XML data"

Introduction

This package implements the algorithm iDTD described in Bex et al., Inference of consise DTDs from XML data__

.. _Bex2006: http://www.vldb.org/conf/2006/p115-bex.pdf _ Bex2006

Given a set of XML sample the algorithm infers a DTD which can validate those XML sample. There are some restrictions, though:

  1. The inference is restricted to the structure of the document, i.e. no attempt is made to infer the data type of the data involved.

  2. Currently we have only implemented the inference of SORE, not CRX. So many samples should be provided in order to infer a good DTD. Notice that if your XML is like a listing, then you can provide many samples of the items in a single XML document.

Warning

I haven't had the time to finish this project; the basic algorithm is implemented, however it still lacks the main functionality of generating the DTD. Volunteers are welcome!

License

Alpha versions of this package are distribute under the terms of GPL version 2.

We plan to make relicense stable versions to LGPL.