I've been trying not to get involved in this question, but it's not working.
JSON and XML are both complex formats that require formal parsers. JSON
can use a built-in parse, but that doesn't mean that a parser isn't
required. And one may reasonable argue than XML is more regular than
JSON and therefor simpler. In any case, the parse tree is about the same.
Both are overly verbose and waste a huge amount of space. Pox on each.
I've designed more database protocols than the average bear. I've
settled on XML for handshaking and heavily encoded binary object
serialization protocol after successful completion of the initial
security handshake. Works for me.
Generating XML with printf's is not a really good idea. Build of tree
of XML objects and serialize the sucker. Hand counting angle brackets
if for the birds.
Incidentally, when I have a protocol that requires user specified
parameter names (more on that only on request), I precede the encoded
objects with a StringCatalog that maps strings into integers for dense
and efficient encoding. Isomorphic to XML, but not XML. But the byte
count, parsing overhead, and memory usage by huge factor.
But all that said, I'm personally more comfortable with an initial
handshake with a robust standard like XML. Bloated, sure, relative high
parse cost, definition, but infinitely flexible and extensible.
On a distantly related topic, I hereby apologize for XDR. It seemed
like a good idea at the time, but...
On 11/10/2015 8:05 PM, Arno Brinkman wrote:
Hi,
Just my 2 cents:
I can see the benefit of an XML output, but then i would not use
underscores
inside the tags and params.
Also i would prefer using the base operation as tag and not everything
capsulated inside <Node operation="....">
Something like:
<SelectExpression>
<Filter>
<NestedLoopOuterJoin>
<NestedLoopInnerJoin>
<Filter>
<Table alias="R">RDB$RELATIONS</Table>
<FullScan/>
</Filter>
<Filter>
<Table alias="RF">RDB$RELATION_FIELDS</Table>
<BitMap>
<Index Scan="Range" Matching="Full">RDB$INDEX_4</Index>
</BitMap>
..........
</Filter>
</NestedLoopInnerJoin>
</NestedLoopOuterJoin>
</Filter>
</SelectExpression>
Kind Regards,
Arno Brinkman
ABVisie
------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel
------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel