<div dir="ltr"><div class="gmail_default" style="font-size:small">Hmmm. It is always the case that changes in cardinality are the most disruptive in a database schema or API...</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Having said that, I agree with Theresa that losing information that people put into registry records seems wrong. Are there other cases where information in someone&#39;s publishing registry does not make it into RegTAP? <br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">How bad is it to add the security_method table with just the identifiers now (to preserve that content)?  Then we can use that as a base to prototype what if anything else might go inside a securityMethod element and hence that table... that would probably rule out PR before Paris.<br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">My personal bet: I don&#39; think anything will go in there and I&#39;d store an array of URI in the interface table but that&#39;s opening up a whole different can of worms so *waves hands* let&#39;s discuss how that sort of thing could work over drinks in Paris :-)<br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small"><br></div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div>--<br></div><div>Patrick Dowler<br></div>Canadian Astronomy Data Centre<br></div>Victoria, BC, Canada<br></div></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 12 Apr 2019 at 07:44, Theresa Dower &lt;<a href="mailto:dower@stsci.edu">dower@stsci.edu</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div>


<div dir="ltr">
<div id="gmail-m_1623695440676944808x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif">
<p><br>
</p>
<p>OK, I&#39;m working on re-implementing what we decide here for the ST RegTAP service. The current proposal looks fairly straightforward for our ingest implementation.<br>
</p>
<p><br>
</p>
<p><span>I think Markus is right that the RegTAP 1.2 solution is adding another table once we understand what further information is really helpful for our use cases.</span><br>
</p>
<p><br>
</p>
<p>I don&#39;t like that in *removing* security_method_id we&#39;re losing information about which security methods each endpoint supports (yes, it&#39;s just an identifier, not much loss, but still potentially actionable information), and expecting client changes at this
 stage, but given the alternatives are changing keys or creating a table that isn&#39;t fully defined by use cases yet, I don&#39;t see a better idea either.</p>
<p><br>
</p>
<p>--Theresa<br>
</p>
<p><br>
</p>
<p><br>
</p>
</div>
<hr style="display:inline-block;width:98%">
<div id="gmail-m_1623695440676944808x_divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" face="Calibri, sans-serif" color="#000000"><b>From:</b> <a href="mailto:registry-bounces@ivoa.net" target="_blank">registry-bounces@ivoa.net</a> &lt;<a href="mailto:registry-bounces@ivoa.net" target="_blank">registry-bounces@ivoa.net</a>&gt; on behalf of Markus Demleitner &lt;<a href="mailto:msdemlei@ari.uni-heidelberg.de" target="_blank">msdemlei@ari.uni-heidelberg.de</a>&gt;<br>
<b>Sent:</b> Friday, April 12, 2019 7:09:57 AM<br>
<b>To:</b> <a href="mailto:registry@ivoa.net" target="_blank">registry@ivoa.net</a><br>
<b>Subject:</b> Late RegTAP rr.interface update [was: rr.interface+auth=ouch]</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt">
<div class="gmail-m_1623695440676944808PlainText">Dear Registry,<br>
<br>
In the issue of how to sensibly represent securityMethod in RegTAP:<br>
<br>
On Mon, Apr 08, 2019 at 12:59:20PM +0200, Markus Demleitner wrote:<br>
&gt; On Fri, Apr 05, 2019 at 02:28:53PM -0700, Patrick Dowler wrote:<br>
&gt; &gt; ** and the interesting change:<br>
&gt; &gt; <br>
&gt; &gt; - updated ivo://<a href="http://cadc.nrc.ca/sia" target="_blank">cadc.nrc.ca/sia</a> and ivo://<a href="http://cadc.nrc.ca/tap" target="_blank">cadc.nrc.ca/tap</a> records to<br>
&gt; &gt; include multiple securityMethod(s) in the accessURL (for sia I only did<br>
&gt; &gt; this in the SIA-2.0 capability); this seems to be schema-valid given that<br>
&gt; &gt; the records refer to VOResource-1.0 but I don&#39;t know if/how this kight<br>
&gt; &gt; effect recipients of such records<br>
&gt; &gt; <br>
&gt; &gt; Let me  know if this works OK or if I need to make any further tweaks,<br>
&gt; <br>
&gt; As far as I can see, this is fine as such, but it has uncovered an<br>
&gt; issue this poses with RegTAP (and it shows once again we shouldn&#39;t<br>
&gt; make anything a REC without implementation. Good thing we caught it<br>
&gt; now).<br>
&gt; <br>
&gt; In RegTAP 1.0, rr.interface is supposed to have a primary key (ivoid,<br>
&gt; intf_index), where intf_index is something like the sibling index of<br>
&gt; or anything else uniquely identifying the index element.<br>
[...]<br>
&gt; Solution (b)<br>
&gt; ------------<br>
&gt; <br>
&gt; We could also forget about the de-normalisation and drop the<br>
&gt; security_method_id column in rr.interface; in the proposed sample<br>
&gt; queries, it was only used to filter for &quot;unauth access possible&quot;<br>
&gt; anyway.  For that, we could add a column &quot;open_access&quot; (or a bit more<br>
&gt; provicative, fair_interface:-) to rr.interface, which is true if<br>
&gt; there&#39;s an empty securityMethod or none at all, false otherwise.<br>
&gt; <br>
&gt; And then we wait what kind of discovery problems actually arise in<br>
&gt; the context of authentication and will probably add<br>
&gt; rr.security_method table in RegTAP 1.2.<br>
<br>
...I&#39;ve now put this solution (b) into RegTAP (volute rev. 5385).<br>
The passage central to this issue now reads:<br>
<br>
  In VOResource, interfaces can have zero or more \vorent{securityMethod}<br>
  children to convey support for authentication and authorization methods.<br>
  Apart from an identifier for an authentication method, no actual content<br>
  has been specified so far for these elements.  Also, there are as of now<br>
  no actual discovery cases employing this information except ``filter out<br>
  services requiring authentication&#39;&#39;.  Hence, RegTAP 1.1 does not attempt<br>
  to map \vorent{securityMethod} except through the<br>
  \rtent{authenticated\_only} column which is required to be 0 when there<br>
  is no \vorent{securityMethod} or at least one \vorent{securityMethod}<br>
  without a \vorent{standardId} on an<br>
  interface, 1 otherwise.<br>
<br>
  Clients not prepared to authenticate to services should always include a<br>
  \verb|authenticated_only=0| condition when retrieving access URLs<br>
  from RegTAP 1.1 services, as it is conceivable that a future VO will<br>
  contain many services requiring authentication and users should not have<br>
  to try out which of them they can actually use.<br>
<br>
I&#39;m going to roll this out to the <a href="http://reg.g-vo.org" target="_blank">reg.g-vo.org</a> services pretty soon<br>
(because they keep shouting at me they don&#39;t like CADC&#39;s last<br>
update).  I will keep the rr.interface.security_method_id column (at<br>
constant NULL until ~the end of the year, though, in order not to<br>
break clients that may already have adopted the recommendation to<br>
constrain it to NULL from previous versions).<br>
<br>
That doesn&#39;t mean this is cast in stone.  If you feel this<br>
should be done differently, it would still be great if you could<br>
protest soon, since I&#39;d like RegTAP to go into RFC before Paris.<br>
<br>
            -- Markus<br>
</div>
</span></font>
</div>

</blockquote></div>