<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 9, 2015 at 1:22 PM, Jay Pipes <span dir="ltr"><<a href="mailto:jaypipes@gmail.com" target="_blank">jaypipes@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 01/20/2015 10:54 AM, Brian Rosmaita wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
From: Kevin L. Mitchell [<a href="mailto:kevin.mitchell@rackspace.com" target="_blank">kevin.mitchell@rackspace.com</a>]<br>
Sent: Monday, January 19, 2015 4:54 PM<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
When we look at consistency, we look at everything else in OpenStack.<br>
 From the standpoint of the nova API (with which I am the most familiar),<br>
I am not aware of any property that is ever omitted from any payload<br>
without versioning coming in to the picture, even if its value is null.<br>
Thus, I would argue that we should encourage the first situation, where<br>
all properties are included, even if their value is null.<br>
</blockquote>
<br>
That is not the case for the Images API v2:<br>
<br>
"An image is always guaranteed to have the following attributes: id,<br>
status, visibility, protected, tags, created_at, file and self. The other<br>
attributes defined in the image schema below are guaranteed to<br>
be defined, but is only returned with an image entity if they have<br>
been explicitly set." [1]<br>
</blockquote>
<br></span>
This was a mistake, IMHO. Having entirely extensible schemas means that there is little guaranteed consistency across implementations of the API.<br></blockquote><div><br></div><div>+1, Subtle hard to discover differences between clouds is a pain for interchangeability. </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
This is the same reason that I think API extensions are an abomination.<br>
<br>
Best,<br>
-jay<div class="HOEnZb"><div class="h5"><br>
<br>
______________________________<u></u>______________________________<u></u>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">OpenStack-dev-request@lists.<u></u>openstack.org?subject:<u></u>unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/<u></u>cgi-bin/mailman/listinfo/<u></u>openstack-dev</a><br>
</div></div></blockquote></div><br></div></div>