XML wasn't my first choice. The 0.1.x versions used simple name/value pairs,
I gave this up after trying to fit the complex USB
configuration/interface/endpoint data into name/value pairs. Thinking about
text file formats that allow me to display hierarchical information, XML was
the obvious choice for me. Are there alternatives to get complex and
extendable information out to user space? (see
http://www.tjansen.de/devreg/devreg.output.txt for a example /proc/devreg
output)
My other ideas were:
- using a simple binary format, just dump structs. This would break all
applications every time somebody changes the format, and this should happen
very often because of the nature of the format
- using a complicated, extendable binary format, for example chunk-based like
(a|r)iff file formats. This would add more code in the kernel than XML
output, is difficult to understand and requires more work in user space
(because XML parsers are already available)
- making up a new text-based format with properties similar to XML because I
knew that many people dont like the idea of XML output in the kernel.. I
really thought about it, but it does not make much sense.
The actual code overhead of XML output compared to a format like
/proc/bus/usb/devices is almost zero, XML is only a little bit more verbose.
I agree that XML is not perfect for this kind of data, but it is simple to
generate, well known and I dont see a better alternative.
bye..
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/