<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Oct 21, 2014 at 12:15 PM, Kenichi Oomichi <span dir="ltr"><<a href="mailto:oomichi@mxs.nes.nec.co.jp" target="_blank">oomichi@mxs.nes.nec.co.jp</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hi Amit,<br>
<br>
Thanks for picking this topic up,<br>
<br>
Honestly I don't have a strong opinion about validation libraries.<br>
Each project implements based on different web frameworks and<br>
the options of validation libraries would be limited from its web<br>
framework. For example, Nova implements its own wsgi framework and<br>
it is difficult to use pecan/wsme due to its API routing/parameter<br>
names. So Nova uses jsonschema for a new API(Nova v2.1 API) because<br>
of its flexibility and portability.<br>
>From quick seeing, stoplight seems flexible and it could cover many<br>
cases. That would be nice for me, but I'm not sure that stoplight is<br>
the best library because jsonschema is a common way/library and portable.<br>
<br>
Related to this topic, I'd like to suggest that we have common validation<br>
patterns across OpenStack projects. Now each project contains its owns<br>
validation patterns for the other project's resource. For example, Nova<br>
contains validation patterns for project-id and image-id on the code[1].<br>
Ideally, these validation patterns would be nice to be ported/shared from<br>
Keystone and Glance and it is the best to use the same validation patterns<br>
between whole OpenStack projects for consistent interfaces. Maybe we can<br>
implement these patterns even if using different validation libraries.<br>
<br></blockquote><div><br></div><div>This sounds good. Would you mind adding it to the wiki here?</div><div><br></div><div><a href="https://wiki.openstack.org/wiki/Governance/Proposed/APIGuidelines">https://wiki.openstack.org/wiki/Governance/Proposed/APIGuidelines</a><br></div><div><br></div><div>So we don't lose track of it - we don't have the git/gerrit repository up quite yet.</div><div><br></div><div>Regards,</div><div><br></div><div>Chris</div></div></div></div>