On Thu, Oct 19, 2017 at 9:17 PM, Philip Zeyliger <phi...@cloudera.com>
wrote:

> I'm shaky on the details here, but shouldn't humans be using the *.avdl
> form of specifying schemas?


Maybe.

As it is, I've seen a good number of open projects that work rely on JSON
schemas (.avsc files).

IDL is really more tailored towards being a convenience for writing
protocols. Schemas come as a nice bonus, but the tools don't really make
schemas a first-class use case.

For example, suppose that I want to use IDL to write schemas and then
generate specific classes for each schema, I could bring in the maven
plugin (or any number of community plugins for other tools) that reads IDL
and then writes out the generated code.

But then would I end up with a few bits of ugliness:
- the schemas have to be wrapped in a made-up protocol
- the generated code includes a generated protocol class I wouldn't care
about
- there are language features that are completely unrelated to my use of
schemas - I wouldn't care about errors or messages at all

This process _is_ sufficient for writing schemas, but I think the unneeded
inputs and outputs and unrelated functionality really contribute to a sense
that IDL isn't for writing schemas. If there was a more focused subset of
IDL that mapped directly onto schemas without some of the extra baggage, I
think it would be easier to recommend that as a high-level schema language.

- Bridger Howell

-- 


The information contained in this email message is PRIVATE and intended 
only for the personal and confidential use of the recipient named above. If 
the reader of this message is not the intended recipient or an agent 
responsible for delivering it to the intended recipient, you are hereby 
notified that you have received this message in error and that any review, 
dissemination, distribution or copying of this message is strictly 
prohibited.  If you have received this communication in error, please 
notify us immediately by email, and delete the original message.

Reply via email to