/[volute]/trunk/projects/grid/VOSI/VOSI.tex
ViewVC logotype

Diff of /trunk/projects/grid/VOSI/VOSI.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3454 by msdemlei, Fri May 6 17:22:59 2016 UTC revision 3455 by major.brian, Tue Jul 5 23:29:30 2016 UTC
# Line 198  Line 198 
198  \xmlel{http://www.ivoa.net/xml/VODataService/v1.1\#TableSet}. The table metadata for a single table (see below) shall be represented as an  \xmlel{http://www.ivoa.net/xml/VODataService/v1.1\#TableSet}. The table metadata for a single table (see below) shall be represented as an
199  XML document of which the root element is of type \xmlel{http://www.ivoa.net/xml/VODataService/v1.1\#Table}. This element may contain any mix of elements allowed by the VODataService XML schema.  XML document of which the root element is of type \xmlel{http://www.ivoa.net/xml/VODataService/v1.1\#Table}. This element may contain any mix of elements allowed by the VODataService XML schema.
200    
201  In the REST binding, the tableset metadata shall be a hierarchical web resource with a registered URL. This base REST endpoint must support an optional query parameter named detail with value min.  In the REST binding, the TableSet metadata shall be a hierarchical web resource with a registered URL.  There are two levels of TableSet metadata detail that may be returned from the base \textit{tables} endpoint.  Maximum detail (max) is the complete metadata including all details of the Table elements.  Minimum detail (min) includes the full set of Table elements with names and optional descriptions, but does not include Table elements of type Column or ForeignKey.
202    
203    If the parameter \textit{detail} accompanies the request with values of either \textit{max} or \textit{min}, the service should take this as a suggestion as to what level of detail to return, but may return either level.  If the parameter \textit{detail} is not present, the service may choose the level of metadata detail to return.
204    
205    For example, the request:
206    
207  \begin{verbatim}  \begin{verbatim}
208  GET http://example.net/srv/tables?detail=min  GET http://example.net/srv/tables?detail=min
209  \end{verbatim}  \end{verbatim}
210    
211  If the caller requests detail=min, the response (TableSet) document must not include elements of type Column or ForeignKey; the tables described have names and optional descriptions but no column or foreign key details).  should be taken as a suggestion to return the minimum level of TableSet metadata detail.
212    
213    Services with a large number of tables and/or columns cannot normally respond with a usable TableSet document that has the maximum level of detail so may wish to always respond with the minimum level of detail.
214    
215  The REST endpoint must also support a child resource for each table described in the TableSet document. The child resource must be  The REST endpoint must also support a child resource for each table described in the TableSet document. The child resource must be
216  named with the fully-qualified table name and without any intervening schema name. For example:  named with the fully-qualified table name and without any intervening schema name. For example:
# Line 213  Line 219 
219  GET http://example.net/srv/tables/ivoa.ObsCore  GET http://example.net/srv/tables/ivoa.ObsCore
220  \end{verbatim}  \end{verbatim}
221    
222  would return a Table document describing the ivoa.ObsCore table.  would return a Table document describing the ivoa.ObsCore table in full detail.
   
 Services with a large number of tables and/or columns cannot normally respond with a usable TableSet document. These services may  
 force the caller to accept the minimum detail level by redirecting requests without the detail=min parameter. The redirect should use HTTP status code 303 (See Other) with a (HTTP header) Location value that includes the detail=min parameter. Clients can make use of detail=min to get a list of available tables and then use the child table resource to get details about individual tables.  
   
223    
224  \section{Registration of VOSI endpoints}  \section{Registration of VOSI endpoints}
225  \label{sec:endpoints}  \label{sec:endpoints}
# Line 335  Line 337 
337  \end{lstlisting}  \end{lstlisting}
338    
339    
340  \subsection{Example 2: TAP tables}  \subsection{Example 2: TAP tables, maximum detail}
341    
342  A sample response from a tables resource describing a TAP service.  A sample response from a tables resource describing a TAP service in full (maximum) detail.
343    
344  \begin{lstlisting}[language=XML]  \begin{lstlisting}[language=XML]
345  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
# Line 397  Line 399 
399  </vosi:tableset>  </vosi:tableset>
400  \end{lstlisting}  \end{lstlisting}
401    
402  \subsection{Example 3: Tables, minimal detail}  \subsection{Example 3: Tables, minimum detail}
403    
404  A sample response from a tables resource with detail=min parameter (e.g. http://example.net/srv/tables?detail=min).  A sample response from a tables resource with no Column or ForeignKey elements.
405    
406  \begin{lstlisting}[language=XML]  \begin{lstlisting}[language=XML]
407  <?xml version="1.0" encoding="UTF-8"?>  <?xml version="1.0" encoding="UTF-8"?>
# Line 743  Line 745 
745    
746  Added alternate root element (table) to VOSITables schema.  Added alternate root element (table) to VOSITables schema.
747    
748  Extended VOSITables REST binding to include detail=min param and child table resource for scalability.  Extended VOSITables REST binding to include detail level and parameter and child table resource for scalability.
749    
750  Defined \#tables-1.1 standardID.  Defined \#tables-1.1 standardID.
751    

Legend:
Removed from v.3454  
changed lines
  Added in v.3455

msdemlei@ari.uni-heidelberg.de
ViewVC Help
Powered by ViewVC 1.1.26