> An instance input module for Trang would be a nice feature. That is,
> allowing Trang to take an XML document as input and then best-guessing a
> schema from it. From a schema developer's point of view, this feature
> would be very good to have.
I think we can distinguish a couple of scenarios:
a) A user already has a collection of real example documents available.
Perhaps they have been getting by without a schema, but have now decided it
would be nice to have a schema for their document format.
b) A user is creating the example instance as part of the process of
designing the document format. They are using an example rather than
writing a schema directly because they find it easier.
In case (b), I think Examplotron makes good sense.
In case (a), something else is needed, more like Microsoft's XSD inference
tool. The big question in my mind is can this be done well enough to be
useful without some manual guidance from the user. Is it better to
generate something loose (and consequently smaller) and let the user
tighten it up, or something very constraining (and perhaps rather large)
and let the user generalize it?
Maybe an interactive tool would be more useful in this case. The tool could
present intelligent choices for the user to make with sensible defaults
based on the instance documents. For example,
- the user could specify that a particular set of elements share a common
content model
- for a particular attribute, there may be multiple datatypes that match
all the values found; the tool would allow the user to choose which of
these would be used
- an attribute of a particular name might be found on elements with
different names; the tool would allow the user to say whether the value of
the attribute depended on the parent element or not
Do any of the exisiting commercial tools do this sort of thing?
James