Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 2 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ VECTORFIGURES =


# Additional files to distribute (e.g., CSS, schema files, examples...)
AUX_FILES = $(SCHEMA_FILE) sample.xml
AUX_FILES = $(SCHEMA_FILE) sample.xml

-include ivoatex/Makefile

Expand All @@ -37,13 +37,8 @@ ivoatex/Makefile:
@echo
git submodule update --init


sample.xml: make-sample.sh
./make-sample.sh > sample.xml

install:
# local to Markus' setup
~/gavo/standards/fixschema $(SCHEMA_FILE) > ~/gavo/trunk/gavo/resources/schemata/TAPRegExt.xsd
./make-sample.sh

STILTS ?= stilts
SCHEMA_FILE=TAPRegExt-v1.1.xsd
Expand Down
111 changes: 103 additions & 8 deletions TAPRegExt-v1.1.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:vr="http://www.ivoa.net/xml/VOResource/v1.0"
xmlns:vm="http://www.ivoa.net/xml/VOMetadata/v0.1"
xmlns:tr="http://www.ivoa.net/xml/TAPRegExt/v1.0"
version="1.1-pre1"
version="1.1-pre2"
targetNamespace="http://www.ivoa.net/xml/TAPRegExt/v1.0"
elementFormDefault="unqualified"
attributeFormDefault="unqualified"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://vo.ari.uni-heidelberg.de/docs/schemata/XMLSchema.xsd">
>
<xs:annotation>
<xs:appinfo>
<vm:schemaName>TAPRegExt</vm:schemaName>
Expand Down Expand Up @@ -82,8 +82,7 @@ xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://vo.ari.uni-heidelber
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on the time between job creation and
destruction time.
Default limits for how long a service will retain async jobs.
</xs:documentation>
</xs:annotation>
</xs:element>
Expand All @@ -92,7 +91,7 @@ xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://vo.ari.uni-heidelber
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on executionDuration.
Default limits on the time after which a query will be cancelled.
</xs:documentation>
</xs:annotation>
</xs:element>
Expand All @@ -101,7 +100,7 @@ xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://vo.ari.uni-heidelber
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on the size of data returned.
Deafult limits on the size of data returned.
</xs:documentation>
</xs:annotation>
</xs:element>
Expand All @@ -110,12 +109,19 @@ xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://vo.ari.uni-heidelber
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on the size of uploaded data.
Default limits on the size of uploaded data.
</xs:documentation>
</xs:annotation>
</xs:element>


<xs:element name="limits" type="tr:PerModeLimits"
minOccurs="0">
<xs:annotation>
<xs:documentation>
Per-mode overrides of the limits defined gobally.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
Expand Down Expand Up @@ -602,4 +608,93 @@ xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://vo.ari.uni-heidelber
</xs:simpleContent>
</xs:complexType>

<xs:complexType name="PerModeLimits">

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's one per-mode use case that I'm thinking about that doesn't logically fit within PerModeLimits: output formats with mode-specific technical constraints. For example, we're considering VOParquet support exclusively for async queries, since partitioning large result sets across multiple files isn't feasible within sync queries.

What would be the optimal design if we wan to consider this? Should we rename PerModeLimits to PerModeCapabilities to encompass both limits and format capabilities, or would per-mode formats warrant a separate grouping?

<xs:annotation>
<xs:documentation>
The limits corresponding to an access mode (auth/non-auth, sync/async).
</xs:documentation>
</xs:annotation>

<xs:sequence>
<xs:element name="retentionPeriod" type="tr:TimeLimits"
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits for how long a service will retain async jobs
in this limit element's mode.
</xs:documentation>
</xs:annotation>
</xs:element>

<xs:element name="executionDuration" type="tr:TimeLimits"
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on the time after which a query will be cancelled
in this limit element's mode.
</xs:documentation>
</xs:annotation>
</xs:element>

<xs:element name="outputLimit" type="tr:DataLimits"
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on the size of data returned
in this limit element's mode.
</xs:documentation>
</xs:annotation>
</xs:element>

<xs:element name="uploadLimit" type="tr:DataLimits"
minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
Limits on the size of uploaded data
in this limit element's mode.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>

<xs:attribute name="mode">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="anonymous-sync">
<xs:annotation>
<xs:documentation>
These limits apply to unauthenticated clients running
synchronous queries.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="anonymous-async">
<xs:annotation>
<xs:documentation>
These limits apply to unauthenticated clients running
asynchronous queries.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="auth-sync">
<xs:annotation>
<xs:documentation>
These limits apply to authenticated clients running
synchronous queries.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="auth-async">
<xs:annotation>
<xs:documentation>
These limits apply to authenticated clients running
asynchronous queries.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
</xs:attribute>

</xs:complexType>
</xs:schema>
Loading