http://api.toxbank.net/index.php?title=Special:Contributions&feed=atom&deletedOnly=&limit=250&target=Egonw&topOnly=&year=&month=ToxBank API Wiki - User contributions [en]2024-03-28T15:55:08ZFrom ToxBank API WikiMediaWiki 1.17.0http://api.toxbank.net/index.php/SearchSearch2011-12-01T09:28:13Z<p>Egonw: /* Query language */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= Query =<br />
<br />
== Query language ==<br />
<br />
Suggestion:<br />
<br />
:someQuery a tb:Query ;<br />
tb:hasKeyword <keywordUri1>, <keywordUri2> ;<br />
tb:searchTerm "free text search" ;<br />
tb:target tb:Protocol .<br />
<br />
=== Options ===<br />
<br />
(not mutually exclusive)<br />
<br />
GET parameters:<br />
Free text search, language could be similar to [http://www.google.co.uk/advanced_search Google advanced search]<br />
<br />
GET or POST parameters, defining SPARQL <br />
[http://www.w3.org/TR/rdf-sparql-query/ SPARQL]<br />
<br />
== Search ==<br />
{{HasOperation |id=Query:Search}}<br />
<br />
== Search Protocols ==<br />
<br />
[[API_Protocol|Protocols]]<br />
<br />
{{HasOperation |id=Query:SearchProtocols}}<br />
<br />
== Search Studies ==<br />
{{HasOperation |id=Query:SearchStudy}}<br />
<br />
== Search Data==<br />
[[API_Data|Data]] [[API_Study#Assays|Assays]]<br />
<br />
{{HasOperation |id=Query:SearchData}}<br />
<br />
== Create a predefined query ==<br />
{{HasOperation |id=Query:Create}}<br />
<br />
== Keyword hierarchy ==<br />
<br />
Web service access to ontologies<br />
<br />
== Filtering the query ==<br />
TBD<br />
<br />
= Alerts =<br />
<br />
An [[API_Alert|Alert]] is defined by [[API_Query|Query]] URI ,frequency and an [[API_User|User]] to be notified.</div>Egonwhttp://api.toxbank.net/index.php/ProtocolProtocol2011-11-24T13:35:17Z<p>Egonw: /* N3 representation of a Protocol */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
[[API_Protocol|Protocols]] contain document(s) and metadata, describing how to perform certain experiment (lab or in-silico). <br />
The results of performing the experiment are recorder in a (set of) [[API_Study|Study]]. <br />
<br />
A [[API_Protocol|Protocol]] may have [[API_Protocol#Protocol_versions|versions]], a Protocol version is another [[API_Protocol|Protocol]]. <br />
<br />
A Protocol includes links to a [[API_Protocol:RetrieveTemplate|Data template]] URI and its Author (an [[API_User|User]]). The rest of the fields may be defined as below.<br />
<br />
TBD: Parameter names to be added to the protocol representation, as in ISA-TAB<br />
<br />
=== Security ===<br />
<br />
==== Only a Principal Investigator (PI) is allowed to upload protocols ====<br />
<br />
=====Design=====<br />
*Be able to specify if the user is a PI - upon registration, or later.<br />
*Create OpenSSO group for PI, and a policy, allowing member of the PI group to POST to /protocols <br />
*On protocol upload, create write/update policy, allowing only the submitter to modify /protocol/id<br />
<br />
==== Protocol read rights are specified on upload, and can be modified later by the PI ====<br />
<br />
=====Design=====<br />
*Access levels, entered via GUI have to be translated into an OpenSSO policy.<br />
<br />
-Only authors - create specific policy for set of user names<br />
-Consortium - create policy for the group, corresponding to the selected project(s)<br />
-SEURAT - create policy for the group, corresponding to the entire SEURAT cluster<br />
-Public - create policy for the a group, corresponding to all registered users<br />
-Custom access - create specific policy for a set of user names<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol ===<br />
@prefix tb: <http://onto.toxbank.net/api/> .<br />
@prefix dcterms: <http://dublincore.org/documents/dcmi-terms/> .<br />
<http://toxbank.net/services/protocol/Protocol_9><br />
a tb:Protocol ;<br />
dcterms:title "Protocol title";<br />
dcterms:identifier "SEURAT-P1234567890";<br />
tb:hasAbstract "This is the abstract"^^xsd:string ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword ""^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:hasTemplate tb:Template_12 ;<br />
tb:isSummarySearchable "true"^^xsd:boolean ;<br />
tb:hasProject tb:DETECTIVE ;<br />
tb:hasDocument <http://toxbank.net/services/protocol/Protocol_9/ABC.pdf> ;<br />
tb:hasVersionInfo "123"^^xsd:string.<br />
<br />
tb:ORG5<br />
a tb:Organization .<br />
<br />
tb:DETECTIVE<br />
a tb:Project .<br />
<br />
tb:OliviaSanger<br />
a tb:User .<br />
<br />
== Retrieve the List of Protocols ==<br />
{{HasOperation |id=API_Protocol:RetrieveList}}<br />
<br />
== Upload a new Protocol ==<br />
{{HasOperation |id=API_Protocol:Upload}}<br />
<br />
<br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveMetadata}}<br />
<br />
== Retrieve Protocol files ==<br />
{{HasOperation |id=API_Protocol:Retrieve}}<br />
<br />
=== cURL example - retrieve the protocol in PDF and Word formats ===<br />
<br />
curl -X GET -H "application/pdf" /protocol/id/file -H "subjectid:TOKEN"<br />
<br />
curl -X GET -H "application/msword" /protocol/id/file -H "subjectid:TOKEN"<br />
<br />
= Protocol versions = <br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol with a previous version ===<br />
<http://toxbank.net/services/protocol/Protocol_10> a tb:Protocol ;<br />
tb:hasAbstract "New abstract"^^xsd:string ;<br />
tb:isSummarySearchable<br />
"false"^^xsd:boolean ;<br />
tb:protocolPriorVersion<br />
<http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:submissionDate<br />
"2011-09-15T00:00:00"^^xsd:dateTime ;<br />
tb:versionInfo "2011-09-15"^^xsd:string .<br />
<br />
== Retrieve versions of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveVersions }}<br />
<br />
== Upload a new Protocol version ==<br />
{{HasOperation |id=API_Protocol:UploadVersion}}</div>Egonwhttp://api.toxbank.net/index.php/ProtocolProtocol2011-11-24T13:32:48Z<p>Egonw: /* N3 representation of a Protocol */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
[[API_Protocol|Protocols]] contain document(s) and metadata, describing how to perform certain experiment (lab or in-silico). <br />
The results of performing the experiment are recorder in a (set of) [[API_Study|Study]]. <br />
<br />
A [[API_Protocol|Protocol]] may have [[API_Protocol#Protocol_versions|versions]], a Protocol version is another [[API_Protocol|Protocol]]. <br />
<br />
A Protocol includes links to a [[API_Protocol:RetrieveTemplate|Data template]] URI and its Author (an [[API_User|User]]). The rest of the fields may be defined as below.<br />
<br />
TBD: Parameter names to be added to the protocol representation, as in ISA-TAB<br />
<br />
=== Security ===<br />
<br />
==== Only a Principal Investigator (PI) is allowed to upload protocols ====<br />
<br />
=====Design=====<br />
*Be able to specify if the user is a PI - upon registration, or later.<br />
*Create OpenSSO group for PI, and a policy, allowing member of the PI group to POST to /protocols <br />
*On protocol upload, create write/update policy, allowing only the submitter to modify /protocol/id<br />
<br />
==== Protocol read rights are specified on upload, and can be modified later by the PI ====<br />
<br />
=====Design=====<br />
*Access levels, entered via GUI have to be translated into an OpenSSO policy.<br />
<br />
-Only authors - create specific policy for set of user names<br />
-Consortium - create policy for the group, corresponding to the selected project(s)<br />
-SEURAT - create policy for the group, corresponding to the entire SEURAT cluster<br />
-Public - create policy for the a group, corresponding to all registered users<br />
-Custom access - create specific policy for a set of user names<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol ===<br />
@prefix tb: <http://onto.toxbank.net/api/> .<br />
@prefix dcterms: <http://dublincore.org/documents/dcmi-terms/> .<br />
<http://toxbank.net/services/protocol/Protocol_9><br />
a tb:Protocol ;<br />
dcterms:title "Protocol title";<br />
dcterms:identifier "SEURAT-P1234567890";<br />
tb:hasAbstract "This is the abstract"^^xsd:string ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword ""^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:hasTemplate tb:Template_12 ;<br />
tb:isSummarySearchable "true"^^xsd:boolean ;<br />
tb:hasProject tb:DETECTIVE ;<br />
tb:hasDocument <http://toxbank.net/services/protocol/Protocol_9/ABC.pdf> ;<br />
tb:versionInfo "123"^^xsd:string.<br />
<br />
tb:ORG5<br />
a tb:Organization .<br />
<br />
tb:DETECTIVE<br />
a tb:Project .<br />
<br />
tb:OliviaSanger<br />
a tb:User .<br />
<br />
== Retrieve the List of Protocols ==<br />
{{HasOperation |id=API_Protocol:RetrieveList}}<br />
<br />
== Upload a new Protocol ==<br />
{{HasOperation |id=API_Protocol:Upload}}<br />
<br />
<br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveMetadata}}<br />
<br />
== Retrieve Protocol files ==<br />
{{HasOperation |id=API_Protocol:Retrieve}}<br />
<br />
=== cURL example - retrieve the protocol in PDF and Word formats ===<br />
<br />
curl -X GET -H "application/pdf" /protocol/id/file -H "subjectid:TOKEN"<br />
<br />
curl -X GET -H "application/msword" /protocol/id/file -H "subjectid:TOKEN"<br />
<br />
= Protocol versions = <br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol with a previous version ===<br />
<http://toxbank.net/services/protocol/Protocol_10> a tb:Protocol ;<br />
tb:hasAbstract "New abstract"^^xsd:string ;<br />
tb:isSummarySearchable<br />
"false"^^xsd:boolean ;<br />
tb:protocolPriorVersion<br />
<http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:submissionDate<br />
"2011-09-15T00:00:00"^^xsd:dateTime ;<br />
tb:versionInfo "2011-09-15"^^xsd:string .<br />
<br />
== Retrieve versions of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveVersions }}<br />
<br />
== Upload a new Protocol version ==<br />
{{HasOperation |id=API_Protocol:UploadVersion}}</div>Egonwhttp://api.toxbank.net/index.php/ProtocolProtocol2011-11-24T13:13:09Z<p>Egonw: /* N3 representation of a Protocol */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
[[API_Protocol|Protocols]] contain document(s) and metadata, describing how to perform certain experiment (lab or in-silico). <br />
The results of performing the experiment are recorder in a (set of) [[API_Study|Study]]. <br />
<br />
A [[API_Protocol|Protocol]] may have [[API_Protocol#Protocol_versions|versions]], a Protocol version is another [[API_Protocol|Protocol]]. <br />
<br />
A Protocol includes links to a [[API_Protocol:RetrieveTemplate|Data template]] URI and its Author (an [[API_User|User]]). The rest of the fields may be defined as below.<br />
<br />
TBD: Parameter names to be added to the protocol representation, as in ISA-TAB<br />
<br />
=== Security ===<br />
<br />
==== Only a Principal Investigator (PI) is allowed to upload protocols ====<br />
<br />
=====Design=====<br />
*Be able to specify if the user is a PI - upon registration, or later.<br />
*Create OpenSSO group for PI, and a policy, allowing member of the PI group to POST to /protocols <br />
*On protocol upload, create write/update policy, allowing only the submitter to modify /protocol/id<br />
<br />
==== Protocol read rights are specified on upload, and can be modified later by the PI ====<br />
<br />
=====Design=====<br />
*Access levels, entered via GUI have to be translated into an OpenSSO policy.<br />
<br />
-Only authors - create specific policy for set of user names<br />
-Consortium - create policy for the group, corresponding to the selected project(s)<br />
-SEURAT - create policy for the group, corresponding to the entire SEURAT cluster<br />
-Public - create policy for the a group, corresponding to all registered users<br />
-Custom access - create specific policy for a set of user names<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol ===<br />
@prefix tb: <http://onto.toxbank.net/api/> .<br />
@prefix dcterms: <http://dublincore.org/documents/dcmi-terms/> .<br />
<http://toxbank.net/services/protocol/Protocol_9><br />
a tb:Protocol ;<br />
dcterms:title "Protocol title";<br />
dcterms:identifier "SEURAT-P1234567890";<br />
tb:hasAbstract "This is the abstract"^^xsd:string ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword ""^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:hasTemplate tb:Template_12 ;<br />
tb:isSummarySearchable "true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:hasDocument <http://toxbank.net/services/protocol/Protocol_9/ABC.pdf> ;<br />
tb:versionInfo "123"^^xsd:string.<br />
<br />
tb:ORG5<br />
a tb:Organization .<br />
<br />
tb:DETECTIVE<br />
a tb:Project .<br />
<br />
tb:OliviaSanger<br />
a tb:User .<br />
<br />
== Retrieve the List of Protocols ==<br />
{{HasOperation |id=API_Protocol:RetrieveList}}<br />
<br />
== Upload a new Protocol ==<br />
{{HasOperation |id=API_Protocol:Upload}}<br />
<br />
<br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveMetadata}}<br />
<br />
== Retrieve Protocol files ==<br />
{{HasOperation |id=API_Protocol:Retrieve}}<br />
<br />
=== cURL example - retrieve the protocol in PDF and Word formats ===<br />
<br />
curl -X GET -H "application/pdf" /protocol/id/file -H "subjectid:TOKEN"<br />
<br />
curl -X GET -H "application/msword" /protocol/id/file -H "subjectid:TOKEN"<br />
<br />
= Protocol versions = <br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol with a previous version ===<br />
<http://toxbank.net/services/protocol/Protocol_10> a tb:Protocol ;<br />
tb:hasAbstract "New abstract"^^xsd:string ;<br />
tb:isSummarySearchable<br />
"false"^^xsd:boolean ;<br />
tb:protocolPriorVersion<br />
<http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:submissionDate<br />
"2011-09-15T00:00:00"^^xsd:dateTime ;<br />
tb:versionInfo "2011-09-15"^^xsd:string .<br />
<br />
== Retrieve versions of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveVersions }}<br />
<br />
== Upload a new Protocol version ==<br />
{{HasOperation |id=API_Protocol:UploadVersion}}</div>Egonwhttp://api.toxbank.net/index.php/How_to_monitor_changes_in_one_or_more_pageHow to monitor changes in one or more page2011-11-04T15:39:16Z<p>Egonw: /* Monitor changes on pages you worked on */</p>
<hr />
<div>This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now.<br />
<br />
== Monitor all changes in the wiki ==<br />
<br />
You can follow all changes in this wiki with the [[Special:RecentChanges|Recent changes]] page, linked to in the menu on the left.<br />
<br />
== Monitor changes on a single page ==<br />
<br />
=== History ===<br />
<br />
Wiki pages are versioned, and each page has a history. On the top of the page, along the tabs 'page' and 'edit' there is a page called 'history'. This will give you the full list of changes made to that particular page.<br />
<br />
=== Put it on your Watchlist ===<br />
<br />
Another tab is available called 'watch', which when clicked will put this wiki page on your [[Special:Watchlist|Watchlist]], allowing you to ''watch'' the changes of a set of wiki pages.<br />
<br />
== Monitor changes you made ==<br />
<br />
In the right top of the page their is a link 'my contributions' which you can click to see a history of all changes you made.</div>Egonwhttp://api.toxbank.net/index.php/How_to_monitor_changes_in_one_or_more_pageHow to monitor changes in one or more page2011-11-04T15:06:37Z<p>Egonw: /* Put it on your Watchlist */</p>
<hr />
<div>This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now.<br />
<br />
== Monitor all changes in the wiki ==<br />
<br />
You can follow all changes in this wiki with the [[Special:RecentChanges|Recent changes]] page, linked to in the menu on the left.<br />
<br />
== Monitor changes on a single page ==<br />
<br />
=== History ===<br />
<br />
Wiki pages are versioned, and each page has a history. On the top of the page, along the tabs 'page' and 'edit' there is a page called 'history'. This will give you the full list of changes made to that particular page.<br />
<br />
=== Put it on your Watchlist ===<br />
<br />
Another tab is available called 'watch', which when clicked will put this wiki page on your [[Special:Watchlist|Watchlist]], allowing you to ''watch'' the changes of a set of wiki pages.<br />
<br />
== Monitor changes on pages you worked on ==</div>Egonwhttp://api.toxbank.net/index.php/How_to_monitor_changes_in_one_or_more_pageHow to monitor changes in one or more page2011-11-04T15:06:25Z<p>Egonw: /* Monitor changes on a single page */</p>
<hr />
<div>This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now.<br />
<br />
== Monitor all changes in the wiki ==<br />
<br />
You can follow all changes in this wiki with the [[Special:RecentChanges|Recent changes]] page, linked to in the menu on the left.<br />
<br />
== Monitor changes on a single page ==<br />
<br />
=== History ===<br />
<br />
Wiki pages are versioned, and each page has a history. On the top of the page, along the tabs 'page' and 'edit' there is a page called 'history'. This will give you the full list of changes made to that particular page.<br />
<br />
=== Put it on your Watchlist ===<br />
<br />
Another tab is available called 'watch', which when clicked will put this wiki page on your [[Special:Watchlist]], allowing you to ''watch'' the changes of a set of wiki pages.<br />
<br />
== Monitor changes on pages you worked on ==</div>Egonwhttp://api.toxbank.net/index.php/How_to_monitor_changes_in_one_or_more_pageHow to monitor changes in one or more page2011-11-04T15:04:31Z<p>Egonw: /* Monitor changes on a single page */</p>
<hr />
<div>This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now.<br />
<br />
== Monitor all changes in the wiki ==<br />
<br />
You can follow all changes in this wiki with the [[Special:RecentChanges|Recent changes]] page, linked to in the menu on the left.<br />
<br />
== Monitor changes on a single page ==<br />
<br />
=== History ===<br />
<br />
Wiki pages are versioned, and each page has a history. On the top of the page, along the tabs 'page' and 'edit' there is a page called 'history'. This will give you the full list of changes made to that particular page.<br />
<br />
== Monitor changes on pages you worked on ==</div>Egonwhttp://api.toxbank.net/index.php/How_to_monitor_changes_in_one_or_more_pageHow to monitor changes in one or more page2011-11-04T15:02:31Z<p>Egonw: /* Monitor all changes in the wiki */</p>
<hr />
<div>This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now.<br />
<br />
== Monitor all changes in the wiki ==<br />
<br />
You can follow all changes in this wiki with the [[Special:RecentChanges|Recent changes]] page, linked to in the menu on the left.<br />
<br />
== Monitor changes on a single page ==<br />
<br />
== Monitor changes on pages you worked on ==</div>Egonwhttp://api.toxbank.net/index.php/How_to_monitor_changes_in_one_or_more_pageHow to monitor changes in one or more page2011-11-04T15:02:07Z<p>Egonw: Created page with "This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now. == Monitor all changes in the wiki == You can follo..."</p>
<hr />
<div>This page explains the options you have to follow what is changed in a MediaWiki like this one you are looking at right now.<br />
<br />
== Monitor all changes in the wiki ==<br />
<br />
You can follow all changes in this wiki with the [[Recent changes]] page, linked to in the menu on the left.<br />
<br />
== Monitor changes on a single page ==<br />
<br />
== Monitor changes on pages you worked on ==</div>Egonwhttp://api.toxbank.net/index.php/Main_PageMain Page2011-10-14T14:20:14Z<p>Egonw: </p>
<hr />
<div>'''ToxBank API wiki'''<br />
<br />
On the left are the main navigation menus, with two main blocks: the OpenTox API and the ToxBank extension.<br />
<br />
Further information:<br />
<br />
* [[How to monitor changes in one or more page]]<br />
* [[How to add a new API resource with operations]]<br />
<br />
<br />
== Media wiki getting started ==<br />
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]<br />
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]<br />
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]</div>Egonwhttp://api.toxbank.net/index.php/Main_PageMain Page2011-10-14T14:08:55Z<p>Egonw: </p>
<hr />
<div>'''ToxBank API wiki.'''<br />
<br />
* [[How to monitor changes in one or more page]]<br />
* [[How to add a new API resource with operations]]<br />
<br />
<br />
== Media wiki getting started ==<br />
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]<br />
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]<br />
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]</div>Egonwhttp://api.toxbank.net/index.php/Talk:ProtocolTalk:Protocol2011-10-14T14:00:53Z<p>Egonw: Removed test.</p>
<hr />
<div></div>Egonwhttp://api.toxbank.net/index.php/Talk:ProtocolTalk:Protocol2011-10-14T13:50:11Z<p>Egonw: Created page with "Hi Barry!"</p>
<hr />
<div>Hi Barry!</div>Egonwhttp://api.toxbank.net/index.php/How_to_add_a_new_API_resource_with_operationsHow to add a new API resource with operations2011-10-13T11:05:39Z<p>Egonw: Created page with "Adding a new API Resource to the ToxBank extension of the OpenTox API is as simple as creating a new wiki page, and adding this wiki source content: <pre> {{REST_resource}} </pr..."</p>
<hr />
<div>Adding a new API Resource to the ToxBank extension of the OpenTox API is as simple as creating a new wiki page, and adding this wiki source content:<br />
<br />
<pre><br />
{{REST_resource}}<br />
</pre><br />
<br />
This [[Template:REST_resource|REST_resource]] template ensure the proper RDF triples get created.<br />
<br />
Following that content, you can add a description of what the meaning is of this resource.<br />
<br />
= Operations =<br />
<br />
REST operations on this resource can be added too. Right now, the custom is to add a section, followed by a brief description and/or example how to use it with curl.<br />
<br />
The operation itself uses a separate page (or a wiki sub page), so that the the minimal operation wiki source in the resource page will look like:<br />
<br />
<pre><br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=Protocol:RetrieveMetadata}}<br />
</pre><br />
<br />
This particular example has a colon ':' in the wiki page name, indicating a sub page, but any wiki page will do.<br />
<br />
== The Operation page content ==<br />
<br />
The operation wiki page itself should use a template too, like the resource, but now it should use the [[Template:REST Operations|REST Operations]] template, so that the page content should like something like:<br />
<br />
<pre><br />
{{REST Operations<br />
|REST_op_description=Retrieves the protocol metadata<br />
|REST_resource=Protocol<br />
|REST_op_method=GET<br />
|REST_op_uri=/protocol/{id}/metadata<br />
|REST_op_params=TBD, search options to filter the requested metadata fields<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none?<br />
|REST_op_result=The metadata representation in supported media type<br />
|REST_op_mime_output=RDF,JSON,XML<br />
|REST_op_status=200,400,401,402,403<br />
}}<br />
</pre></div>Egonwhttp://api.toxbank.net/index.php/ProtocolProtocol2011-10-13T10:52:42Z<p>Egonw: Undo revision 481 by Egonw (talk)</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
[[API_Protocol|Protocols]] contain document(s) and metadata, describing how to perform certain experiment (lab or in-silico). <br />
The results of performing the experiment are recorder in a (set of) [[API_Study|Study]]. <br />
<br />
A [[API_Protocol|Protocol]] may have [[API_Protocol#Protocol_versions|versions]], a Protocol version is another [[API_Protocol|Protocol]]. <br />
<br />
A Protocol includes links to a [[API_Protocol:RetrieveTemplate|Template]] URI ,frequency and its Author (an [[API_User|User]]). The rest of the fields may be defined as below.<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol ===<br />
@prefix tb: <http://www.owl-ontologies.com/toxbank.owl#> .<br />
@prefix dcterms: <http://dublincore.org/documents/dcmi-terms/> .<br />
<http://toxbank.net/services/protocol/Protocol_9><br />
a tb:Protocol ;<br />
dcterms:title "Protocol title";<br />
dcterms:identifier "SEURAT-P1234567890";<br />
tb:hasAbstract "This is the abstract"^^xsd:string ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword ""^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:hasTemplate tb:Template_12 ;<br />
tb:isSummarySearchable "true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:hasDocument <http://toxbank.net/services/protocol/Protocol_9/ABC.pdf> ;<br />
tb:versionInfo "123"^^xsd:string.<br />
<br />
tb:ORG5<br />
a tb:Organization .<br />
<br />
tb:DETECTIVE<br />
a tb:Project .<br />
<br />
tb:OliviaSanger<br />
a tb:User .<br />
<br />
== Retrieve the List of Protocols ==<br />
{{HasOperation |id=API_Protocol:RetrieveList}}<br />
<br />
== Upload a new Protocol ==<br />
{{HasOperation |id=API_Protocol:Upload}}<br />
<br />
== Retrieve a single Protocol ==<br />
{{HasOperation |id=API_Protocol:Retrieve}}<br />
<br />
=== cURL example - retrieve the protocol in PDF and Word formats ===<br />
<br />
curl -X GET -H "application/pdf" /protocol/id<br />
<br />
curl -X GET -H "application/msword" /protocol/id<br />
<br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveMetadata}}<br />
<br />
= Protocol versions = <br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol with a previous version ===<br />
<http://toxbank.net/services/protocol/Protocol_10> a tb:Protocol ;<br />
tb:hasAbstract "New abstract"^^xsd:string ;<br />
tb:isSummarySearchable<br />
"false"^^xsd:boolean ;<br />
tb:protocolPriorVersion<br />
<http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:submissionDate<br />
"2011-09-15T00:00:00"^^xsd:dateTime ;<br />
tb:versionInfo "2011-09-15"^^xsd:string .<br />
<br />
== Retrieve versions of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveVersions }}<br />
<br />
== Upload a new Protocol version ==<br />
{{HasOperation |id=API_Protocol:UploadVersion}}<br />
<br />
=Protocol templates = <br />
<br />
Template content is specific for protocols. There will be predefined templates for different kind of data.<br />
Templates and guidance how to use them can be shown via "Help resources" panel (on the right in the paper prototype).<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Template===<br />
<br />
tb:Template_12<br />
a tb:Template .<br />
<br />
== Retrieve data templates, defined for a Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveTemplates}}<br />
<br />
== Create data template for a Protocol ==<br />
{{HasOperation |id=API_Protocol:UploadTemplate}}<br />
<br />
== Retrieve a data template ==<br />
{{HasOperation |id=API_Protocol:RetrieveTemplate}}</div>Egonwhttp://api.toxbank.net/index.php/ProtocolProtocol2011-10-13T10:47:41Z<p>Egonw: /* Retrieve the List of Protocols */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
[[API_Protocol|Protocols]] contain document(s) and metadata, describing how to perform certain experiment (lab or in-silico). <br />
The results of performing the experiment are recorder in a (set of) [[API_Study|Study]]. <br />
<br />
A [[API_Protocol|Protocol]] may have [[API_Protocol#Protocol_versions|versions]], a Protocol version is another [[API_Protocol|Protocol]]. <br />
<br />
A Protocol includes links to a [[API_Protocol:RetrieveTemplate|Template]] URI ,frequency and its Author (an [[API_User|User]]). The rest of the fields may be defined as below.<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol ===<br />
@prefix tb: <http://www.owl-ontologies.com/toxbank.owl#> .<br />
@prefix dcterms: <http://dublincore.org/documents/dcmi-terms/> .<br />
<http://toxbank.net/services/protocol/Protocol_9><br />
a tb:Protocol ;<br />
dcterms:title "Protocol title";<br />
dcterms:identifier "SEURAT-P1234567890";<br />
tb:hasAbstract "This is the abstract"^^xsd:string ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword ""^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:hasTemplate tb:Template_12 ;<br />
tb:isSummarySearchable "true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:hasDocument <http://toxbank.net/services/protocol/Protocol_9/ABC.pdf> ;<br />
tb:versionInfo "123"^^xsd:string.<br />
<br />
tb:ORG5<br />
a tb:Organization .<br />
<br />
tb:DETECTIVE<br />
a tb:Project .<br />
<br />
tb:OliviaSanger<br />
a tb:User .<br />
<br />
== Retrieve the List of Protocols ==<br />
{{HasOperation |id=Protocol:RetrieveList}}<br />
<br />
== Upload a new Protocol ==<br />
{{HasOperation |id=API_Protocol:Upload}}<br />
<br />
== Retrieve a single Protocol ==<br />
{{HasOperation |id=API_Protocol:Retrieve}}<br />
<br />
=== cURL example - retrieve the protocol in PDF and Word formats ===<br />
<br />
curl -X GET -H "application/pdf" /protocol/id<br />
<br />
curl -X GET -H "application/msword" /protocol/id<br />
<br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveMetadata}}<br />
<br />
= Protocol versions = <br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol with a previous version ===<br />
<http://toxbank.net/services/protocol/Protocol_10> a tb:Protocol ;<br />
tb:hasAbstract "New abstract"^^xsd:string ;<br />
tb:isSummarySearchable<br />
"false"^^xsd:boolean ;<br />
tb:protocolPriorVersion<br />
<http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:submissionDate<br />
"2011-09-15T00:00:00"^^xsd:dateTime ;<br />
tb:versionInfo "2011-09-15"^^xsd:string .<br />
<br />
== Retrieve versions of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveVersions }}<br />
<br />
== Upload a new Protocol version ==<br />
{{HasOperation |id=API_Protocol:UploadVersion}}<br />
<br />
=Protocol templates = <br />
<br />
Template content is specific for protocols. There will be predefined templates for different kind of data.<br />
Templates and guidance how to use them can be shown via "Help resources" panel (on the right in the paper prototype).<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Template===<br />
<br />
tb:Template_12<br />
a tb:Template .<br />
<br />
== Retrieve data templates, defined for a Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveTemplates}}<br />
<br />
== Create data template for a Protocol ==<br />
{{HasOperation |id=API_Protocol:UploadTemplate}}<br />
<br />
== Retrieve a data template ==<br />
{{HasOperation |id=API_Protocol:RetrieveTemplate}}</div>Egonwhttp://api.toxbank.net/index.php/Template:REST_resourceTemplate:REST resource2011-10-13T10:44:29Z<p>Egonw: </p>
<hr />
<div><noinclude><br />
This is the "REST_resource" template.<br />
It should be called in the following format:<br />
<pre><br />
{{REST_resource<br />
|REST_op=<br />
|REST_representation=<br />
}}<br />
</pre><br />
Edit the page to see the template text.<br />
</noinclude><includeonly><br />
{| class="wikitable" style="float: right; width: 24em; text-align: left; line-height: 1.5em; font-size: 90%; clear: right; table-layout:fixed; word-wrap: break-word;"<br />
! colspan=2 style="text-align: center; font-size: 125%" | {{{Name|{{PAGENAME}} }}}<br />
|-<br />
{{#if:{{{REST_op|}}} |<br />
{{!}} REST operation<br />
{{!}} [[REST op::{{{REST_op|}}}]]<br />
{{!}}-<br />
| }}<br />
{{#if:{{{REST_representation|}}} |<br />
{{!}} Representation<br />
{{!}} [[REST representation::{{{REST_representation|}}}]]<br />
| }}<br />
|}<br />
<br />
{{#if:{{{REST_op|}}} |<br />
{{#set:<br />
|Has op={{{REST_op|}}}<br />
}}<br />
| }}<br />
{{#if:{{{REST_representation|}}} |<br />
{{#set:<br />
|Has representation={{{REST_representation|}}}<br />
}}<br />
| }}<br />
<br />
<br />
[[Category:REST_API]]<br />
[[Category:REST_Resources]]<br />
</includeonly></div>Egonwhttp://api.toxbank.net/index.php/ProtocolProtocol2011-10-13T10:38:44Z<p>Egonw: </p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
[[API_Protocol|Protocols]] contain document(s) and metadata, describing how to perform certain experiment (lab or in-silico). <br />
The results of performing the experiment are recorder in a (set of) [[API_Study|Study]]. <br />
<br />
A [[API_Protocol|Protocol]] may have [[API_Protocol#Protocol_versions|versions]], a Protocol version is another [[API_Protocol|Protocol]]. <br />
<br />
A Protocol includes links to a [[API_Protocol:RetrieveTemplate|Template]] URI ,frequency and its Author (an [[API_User|User]]). The rest of the fields may be defined as below.<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol ===<br />
@prefix tb: <http://www.owl-ontologies.com/toxbank.owl#> .<br />
@prefix dcterms: <http://dublincore.org/documents/dcmi-terms/> .<br />
<http://toxbank.net/services/protocol/Protocol_9><br />
a tb:Protocol ;<br />
dcterms:title "Protocol title";<br />
dcterms:identifier "SEURAT-P1234567890";<br />
tb:hasAbstract "This is the abstract"^^xsd:string ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword ""^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:hasTemplate tb:Template_12 ;<br />
tb:isSummarySearchable "true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:hasDocument <http://toxbank.net/services/protocol/Protocol_9/ABC.pdf> ;<br />
tb:versionInfo "123"^^xsd:string.<br />
<br />
tb:ORG5<br />
a tb:Organization .<br />
<br />
tb:DETECTIVE<br />
a tb:Project .<br />
<br />
tb:OliviaSanger<br />
a tb:User .<br />
<br />
== Retrieve the List of Protocols ==<br />
{{HasOperation |id=API_Protocol:RetrieveList}}<br />
<br />
== Upload a new Protocol ==<br />
{{HasOperation |id=API_Protocol:Upload}}<br />
<br />
== Retrieve a single Protocol ==<br />
{{HasOperation |id=API_Protocol:Retrieve}}<br />
<br />
=== cURL example - retrieve the protocol in PDF and Word formats ===<br />
<br />
curl -X GET -H "application/pdf" /protocol/id<br />
<br />
curl -X GET -H "application/msword" /protocol/id<br />
<br />
== Retrieve Metadata of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveMetadata}}<br />
<br />
= Protocol versions = <br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Protocol with a previous version ===<br />
<http://toxbank.net/services/protocol/Protocol_10> a tb:Protocol ;<br />
tb:hasAbstract "New abstract"^^xsd:string ;<br />
tb:isSummarySearchable<br />
"false"^^xsd:boolean ;<br />
tb:protocolPriorVersion<br />
<http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:submissionDate<br />
"2011-09-15T00:00:00"^^xsd:dateTime ;<br />
tb:versionInfo "2011-09-15"^^xsd:string .<br />
<br />
== Retrieve versions of a single Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveVersions }}<br />
<br />
== Upload a new Protocol version ==<br />
{{HasOperation |id=API_Protocol:UploadVersion}}<br />
<br />
=Protocol templates = <br />
<br />
Template content is specific for protocols. There will be predefined templates for different kind of data.<br />
Templates and guidance how to use them can be shown via "Help resources" panel (on the right in the paper prototype).<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Template===<br />
<br />
tb:Template_12<br />
a tb:Template .<br />
<br />
== Retrieve data templates, defined for a Protocol ==<br />
{{HasOperation |id=API_Protocol:RetrieveTemplates}}<br />
<br />
== Create data template for a Protocol ==<br />
{{HasOperation |id=API_Protocol:UploadTemplate}}<br />
<br />
== Retrieve a data template ==<br />
{{HasOperation |id=API_Protocol:RetrieveTemplate}}</div>Egonwhttp://api.toxbank.net/index.php/Main_PageMain Page2011-10-13T10:34:23Z<p>Egonw: </p>
<hr />
<div>'''ToxBank API wiki.'''<br />
<br />
* [[How to add a new API resource with operations]]<br />
<br />
<br />
== Media wiki getting started ==<br />
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]<br />
* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]<br />
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]</div>Egonwhttp://api.toxbank.net/index.php/User:DetailsUser:Details2011-10-07T21:16:56Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/User:DetailsUser:Details2011-10-07T13:10:54Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status={{Http|code=200}},{{Http|code=202}},{{Http|code=400}},{{Http|code=401}},{{Http|code=402}},{{Http|code=403}}<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/User:DetailsUser:Details2011-10-07T12:56:05Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Retrieve user details |REST_resource=User |REST_op_method=GET |REST_op_uri=/user/{obfuscated_id} |REST_op_params=TBD, may be used to filte..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/UserUser2011-10-07T12:55:45Z<p>Egonw: /* Retrieve user details */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, User details can be retrieved by requesting OpenAM attributes, given a valid token.<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= REST interface =<br />
<br />
Would be useful to expose users via URIs, to be able to link various objects to the authors/owners.<br />
The user name should not be in the URI,an approach similar to Google+ can be adopted <br />
<br />
This is my user URI at G+<br />
https://plus.google.com/106434626815784595027<br />
<br />
And here are my posts.<br />
https://plus.google.com/106434626815784595027/posts<br />
The content you see will differ, depending on whether you are logged in G+,<br />
and whether you are allowed to see particular post.<br />
<br />
== Retrieve users ==<br />
{{HasOperation |id=User:RetrieveList}}<br />
<br />
=== cURL example ===<br />
curl -X GET /user?consortium=ToxBank<br />
<br />
== Retrieve user details ==<br />
<br />
{{HasOperation |id=User:Details}}<br />
<br />
== Retrieve My Protocols ==<br />
<br />
Same as [[API_Protocol:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveProtocols}}<br />
<br />
== Retrieve My Studies ==<br />
<br />
Same as [[API_Study:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveStudies}}<br />
<br />
== My alerts ==<br />
<br />
{{HasOperation |id=User:RetrieveAlerts}}</div>Egonwhttp://api.toxbank.net/index.php/User:RetrieveAlertsUser:RetrieveAlerts2011-10-07T12:54:54Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Retrieves list of alerts, filtered by the user |REST_resource=User |REST_op_method=GET |REST_op_uri=/user/{obfuscated_id}/alerts |REST_op_p..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieves list of alerts, filtered by the user<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/alerts<br />
|REST_op_params=TBD , search options to query/filter alerts<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of alerts in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/UserUser2011-10-07T12:54:36Z<p>Egonw: /* My alerts */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, User details can be retrieved by requesting OpenAM attributes, given a valid token.<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= REST interface =<br />
<br />
Would be useful to expose users via URIs, to be able to link various objects to the authors/owners.<br />
The user name should not be in the URI,an approach similar to Google+ can be adopted <br />
<br />
This is my user URI at G+<br />
https://plus.google.com/106434626815784595027<br />
<br />
And here are my posts.<br />
https://plus.google.com/106434626815784595027/posts<br />
The content you see will differ, depending on whether you are logged in G+,<br />
and whether you are allowed to see particular post.<br />
<br />
== Retrieve users ==<br />
{{HasOperation |id=User:RetrieveList}}<br />
<br />
=== cURL example ===<br />
curl -X GET /user?consortium=ToxBank<br />
<br />
== Retrieve user details ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}<br />
<br />
== Retrieve My Protocols ==<br />
<br />
Same as [[API_Protocol:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveProtocols}}<br />
<br />
== Retrieve My Studies ==<br />
<br />
Same as [[API_Study:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveStudies}}<br />
<br />
== My alerts ==<br />
<br />
{{HasOperation |id=User:RetrieveAlerts}}</div>Egonwhttp://api.toxbank.net/index.php/User:RetrieveStudiesUser:RetrieveStudies2011-10-07T12:54:07Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Retrieves list of studies, including metadata, filtered by the user |REST_resource=User |REST_op_method=GET |REST_op_uri=/user/{obfuscated_..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieves list of studies, including metadata, filtered by the user<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/study<br />
|REST_op_params=TBD , search options to query/filter studies<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of studies in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/UserUser2011-10-07T12:53:47Z<p>Egonw: /* Retrieve My Studies */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, User details can be retrieved by requesting OpenAM attributes, given a valid token.<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= REST interface =<br />
<br />
Would be useful to expose users via URIs, to be able to link various objects to the authors/owners.<br />
The user name should not be in the URI,an approach similar to Google+ can be adopted <br />
<br />
This is my user URI at G+<br />
https://plus.google.com/106434626815784595027<br />
<br />
And here are my posts.<br />
https://plus.google.com/106434626815784595027/posts<br />
The content you see will differ, depending on whether you are logged in G+,<br />
and whether you are allowed to see particular post.<br />
<br />
== Retrieve users ==<br />
{{HasOperation |id=User:RetrieveList}}<br />
<br />
=== cURL example ===<br />
curl -X GET /user?consortium=ToxBank<br />
<br />
== Retrieve user details ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}<br />
<br />
== Retrieve My Protocols ==<br />
<br />
Same as [[API_Protocol:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveProtocols}}<br />
<br />
== Retrieve My Studies ==<br />
<br />
Same as [[API_Study:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveStudies}}<br />
<br />
== My alerts ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieves list of alerts, filtered by the user<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/alerts<br />
|REST_op_params=TBD , search options to query/filter alerts<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of alerts in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/User:RetrieveProtocolsUser:RetrieveProtocols2011-10-07T12:53:16Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Retrieves list of protocols, including metadata, filtered by the user |REST_resource=User |REST_op_method=GET |REST_op_uri=/user/{obfuscate..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieves list of protocols, including metadata, filtered by the user<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/protocols<br />
|REST_op_params=TBD , search parameters to query/filter protocols<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of protocols in supported MIME formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200, 400, 401, 402, 403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/UserUser2011-10-07T12:52:54Z<p>Egonw: /* Retrieve My Protocols */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, User details can be retrieved by requesting OpenAM attributes, given a valid token.<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= REST interface =<br />
<br />
Would be useful to expose users via URIs, to be able to link various objects to the authors/owners.<br />
The user name should not be in the URI,an approach similar to Google+ can be adopted <br />
<br />
This is my user URI at G+<br />
https://plus.google.com/106434626815784595027<br />
<br />
And here are my posts.<br />
https://plus.google.com/106434626815784595027/posts<br />
The content you see will differ, depending on whether you are logged in G+,<br />
and whether you are allowed to see particular post.<br />
<br />
== Retrieve users ==<br />
{{HasOperation |id=User:RetrieveList}}<br />
<br />
=== cURL example ===<br />
curl -X GET /user?consortium=ToxBank<br />
<br />
== Retrieve user details ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}<br />
<br />
== Retrieve My Protocols ==<br />
<br />
Same as [[API_Protocol:RetrieveList]], but filtered by the user.<br />
<br />
{{HasOperation |id=User:RetrieveProtocols}}<br />
<br />
== Retrieve My Studies ==<br />
<br />
Same as [[API_Study:RetrieveList]], but filtered by the user.<br />
{{REST Operations<br />
|REST_op_description=Retrieves list of studies, including metadata, filtered by the user<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/study<br />
|REST_op_params=TBD , search options to query/filter studies<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of studies in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}<br />
<br />
<br />
== My alerts ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieves list of alerts, filtered by the user<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/alerts<br />
|REST_op_params=TBD , search options to query/filter alerts<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of alerts in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/User:RetrieveListUser:RetrieveList2011-10-07T12:52:13Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Retrieve list of users |REST_resource=User |REST_op_method=GET |REST_op_uri=/user |REST_op_params=TBD, may be used to filter the retrieved..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieve list of users<br />
|REST_resource=User<br />
|REST_op_method=GET<br />
|REST_op_uri=/user<br />
|REST_op_params=TBD, may be used to filter the retrieved info ,e.g. ?project=ToxBank&org=DC<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/UserUser2011-10-07T12:51:51Z<p>Egonw: /* Retrieve users */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, User details can be retrieved by requesting OpenAM attributes, given a valid token.<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= REST interface =<br />
<br />
Would be useful to expose users via URIs, to be able to link various objects to the authors/owners.<br />
The user name should not be in the URI,an approach similar to Google+ can be adopted <br />
<br />
This is my user URI at G+<br />
https://plus.google.com/106434626815784595027<br />
<br />
And here are my posts.<br />
https://plus.google.com/106434626815784595027/posts<br />
The content you see will differ, depending on whether you are logged in G+,<br />
and whether you are allowed to see particular post.<br />
<br />
== Retrieve users ==<br />
{{HasOperation |id=User:RetrieveList}}<br />
<br />
=== cURL example ===<br />
curl -X GET /user?consortium=ToxBank<br />
<br />
== Retrieve user details ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieve user details<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}<br />
|REST_op_params=TBD, may be used to filter the retrieved info<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=content<br />
|REST_op_mime_output=multiple formats<br />
|REST_op_status=200,202,400,401,402,403<br />
}}<br />
<br />
== Retrieve My Protocols ==<br />
<br />
Same as [[API_Protocol:RetrieveList]], but filtered by the user.<br />
{{REST Operations<br />
|REST_op_description=Retrieves list of protocols, including metadata, filtered by the user<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/protocols<br />
|REST_op_params=TBD , search parameters to query/filter protocols<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of protocols in supported MIME formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200, 400, 401, 402, 403<br />
}}<br />
<br />
== Retrieve My Studies ==<br />
<br />
Same as [[API_Study:RetrieveList]], but filtered by the user.<br />
{{REST Operations<br />
|REST_op_description=Retrieves list of studies, including metadata, filtered by the user<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/study<br />
|REST_op_params=TBD , search options to query/filter studies<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of studies in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}<br />
<br />
<br />
== My alerts ==<br />
<br />
{{REST Operations<br />
|REST_op_description=Retrieves list of alerts, filtered by the user<br />
|REST_op_method=GET<br />
|REST_op_uri=/user/{obfuscated_id}/alerts<br />
|REST_op_params=TBD , search options to query/filter alerts<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=List of alerts in supported Media Type formats<br />
|REST_op_mime_output=text/uri-list, RDF, JSON, XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/Session:LogoutSession:Logout2011-10-07T12:50:48Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Logout |REST_resource=Session |REST_op_method=DELETE |REST_op_uri=/session |REST_op_params=none |REST_header_param=subjectid:SECURITY-TOKEN..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Logout<br />
|REST_resource=Session<br />
|REST_op_method=DELETE<br />
|REST_op_uri=/session<br />
|REST_op_params=none<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=none<br />
|REST_op_mime_output=text/plain<br />
|REST_op_status=200,401,403,500<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/SessionSession2011-10-07T12:50:31Z<p>Egonw: /* Logout */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, login/logout is done by calling OpenAM [[OpenTox_API_1.2_A%26A]]<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= Session REST interface =<br />
<br />
This could be a wrapper for the [[OpenTox_API_1.2_A%26A]] (OpenAM) login/logout.<br />
<br />
== Login ==<br />
{{HasOperation |id=Session:Login}}<br />
<br />
=== cURL example ===<br />
<br />
$curl -X POST -d "user=myname" -d "pass=mypass" https://toxbank.net/services/session<br />
>HTTP/1.1 200 OK<br />
>Content-Language: en<br />
>Date: Fri, 16 Sep 2011 06:45:16 GMT<br />
>Set-Cookie: subjectid=AQIC5wM2LY4SfczdemotokenzuhvIfb6LJj5SOVppnOTw7M.*AAJTSQACMDE.*; Path=/<br />
>Set-Cookie: subjectid_secure=true; Path=/<br />
>Content-Type: text/plain;charset=UTF-8<br />
>Content-Length: 7241<br />
>AQIC5wM2LY4SfczdemotokenzuhvIfb6LJj5SOVppnOTw7M.*AAJTSQACMDE.*<br />
<br />
== Logout ==<br />
{{HasOperation |id=Session:Logout}}<br />
<br />
=== cURL example ===<br />
<br />
$curl -X DELETE -H "subjectid:AQIC5wM2LY4SfczdemotokenzuhvIfb6LJj5SOVppnOTw7M.*AAJTSQACMDE.*" https://toxbank.net/services/session</div>Egonwhttp://api.toxbank.net/index.php/Session:LoginSession:Login2011-10-07T12:49:54Z<p>Egonw: Created page with "{{REST Operations |REST_op_description=Login |REST_resource=Session |REST_op_method=POST |REST_op_uri=/session |REST_op_params=user name and password ,optionally scheme (default ..."</p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Login<br />
|REST_resource=Session<br />
|REST_op_method=POST<br />
|REST_op_uri=/session<br />
|REST_op_params=user name and password ,optionally scheme (default OpenAM) , OpenAM server URI (has default )<br />
|REST_op_mime_input=application/x-www-form-urlencoded<br />
|REST_op_result=the token in the html body , optional cookie<br />
|REST_op_mime_output=text/plain<br />
||REST_op_status=200,401,403,500<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/SessionSession2011-10-07T12:49:35Z<p>Egonw: /* Login */</p>
<hr />
<div>{{REST_resource}}<br />
<br />
= OpenAM =<br />
<br />
Currently, login/logout is done by calling OpenAM [[OpenTox_API_1.2_A%26A]]<br />
<br />
== Java library ==<br />
http://vedina.github.com/opentox-aa-cli/<br />
<br />
== Ruby library ==<br />
...<br />
<br />
= Session REST interface =<br />
<br />
This could be a wrapper for the [[OpenTox_API_1.2_A%26A]] (OpenAM) login/logout.<br />
<br />
== Login ==<br />
{{HasOperation |id=Session:Login}}<br />
<br />
=== cURL example ===<br />
<br />
$curl -X POST -d "user=myname" -d "pass=mypass" https://toxbank.net/services/session<br />
>HTTP/1.1 200 OK<br />
>Content-Language: en<br />
>Date: Fri, 16 Sep 2011 06:45:16 GMT<br />
>Set-Cookie: subjectid=AQIC5wM2LY4SfczdemotokenzuhvIfb6LJj5SOVppnOTw7M.*AAJTSQACMDE.*; Path=/<br />
>Set-Cookie: subjectid_secure=true; Path=/<br />
>Content-Type: text/plain;charset=UTF-8<br />
>Content-Length: 7241<br />
>AQIC5wM2LY4SfczdemotokenzuhvIfb6LJj5SOVppnOTw7M.*AAJTSQACMDE.*<br />
<br />
== Logout ==<br />
{{REST Operations<br />
|REST_op_description=Logout<br />
|REST_op_method=DELETE<br />
|REST_op_uri=/session<br />
|REST_op_params=none<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=none<br />
|REST_op_result=none<br />
|REST_op_mime_output=text/plain<br />
|REST_op_status=200,401,403,500<br />
}}<br />
<br />
=== cURL example ===<br />
<br />
$curl -X DELETE -H "subjectid:AQIC5wM2LY4SfczdemotokenzuhvIfb6LJj5SOVppnOTw7M.*AAJTSQACMDE.*" https://toxbank.net/services/session</div>Egonwhttp://api.toxbank.net/index.php/DELETEDELETE2011-10-07T12:48:21Z<p>Egonw: Created page with "HTTP command. See :Category:DELETE_Operations."</p>
<hr />
<div>HTTP command. See [[:Category:DELETE_Operations]].</div>Egonwhttp://api.toxbank.net/index.php/PUTPUT2011-10-07T12:48:12Z<p>Egonw: Created page with "HTTP command. See :Category:PUT_Operations."</p>
<hr />
<div>HTTP command. See [[:Category:PUT_Operations]].</div>Egonwhttp://api.toxbank.net/index.php/GETGET2011-10-07T12:47:44Z<p>Egonw: </p>
<hr />
<div>HTTP command. See [[:Category:GET_Operations]].</div>Egonwhttp://api.toxbank.net/index.php/POSTPOST2011-10-07T12:47:36Z<p>Egonw: </p>
<hr />
<div>HTTP command. See [[:Category:POST_Operations]].</div>Egonwhttp://api.toxbank.net/index.php/GETGET2011-10-07T12:47:00Z<p>Egonw: Created page with "HTTP command. See Category:GET_Operations."</p>
<hr />
<div>HTTP command. See [[Category:GET_Operations]].</div>Egonwhttp://api.toxbank.net/index.php/POSTPOST2011-10-07T12:45:51Z<p>Egonw: Created page with "HTTP command. See Category:POST_Operations."</p>
<hr />
<div>HTTP command. See [[Category:POST_Operations]].</div>Egonwhttp://api.toxbank.net/index.php/API_Study:UploadAssayDataAPI Study:UploadAssayData2011-10-07T12:44:40Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Uploads data<br />
|REST_resource=Study<br />
|REST_op_method=POST<br />
|REST_op_uri=/study/{id}/assay/{id}<br />
|REST_op_params=TBD, file(s) content in multipart web form, with predefined metadata<br />
|REST_op_mime_input=multipart web form - application/x-www-form-urlencoded, RDF, JSON<br />
|REST_op_result=Task URI, when complete - URI(s) of the new datasets, e.g. /study/S123/assay/A456/data/mydata.xls ; or Task URI / Error report<br />
|REST_op_mime_output=text/uri-list<br />
|REST_op_status=200,202,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/API_Study:RetrieveStudyDataAPI Study:RetrieveStudyData2011-10-07T12:44:20Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieves assays data<br />
|REST_resource=Study<br />
|REST_op_method=GET<br />
|REST_op_uri=/study/{id}/assay/{id}/data<br />
|REST_op_params=TBD, search options to filter the requested data<br />
|REST_header_param=SECURITY-TOKEN<br />
|REST_op_mime_input=none?<br />
|REST_op_result=Links to the datasets.<br />
|REST_op_mime_output=URI<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/InvestigationInvestigation2011-10-07T12:44:14Z<p>Egonw: /* Upload Assay Data */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
= Study =<br />
<br />
A [[API_Study|Study]] is the specific instance of executing a set of [[API_Protocol|Protocols]]. <br />
<br />
A [[API_Study|Study]] may consists of several (optionally ordered) [[API_Study#Assays|Assays]]. An [[API_Study#Assays|Assay]] serves as a container, associating a [[API_Protocol|Protocol]] with the generated [[API_Data|data]]. A [[API_Study|Study]] has an Author (an [[API_User|User]]).<br />
<br />
A [[API_Study|Study]] may have [[API_Study#Study_versions|versions]], a Study version is another [[API_Study|Study]]. <br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study ===<br />
<http://toxbank.net/services/study/Study_3><br />
a tb:Study ;<br />
tb:hasAbstract "This is an abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_3/assay/Assay_7> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "abc"^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:versionInfo "1"^^xsd:string .<br />
<br />
<br />
== Retrieve the List of Studies ==<br />
{{HasOperation |id=API_Study:RetrieveList}}<br />
<br />
== Upload a new Study ==<br />
{{HasOperation |id=API_Study:Upload}}<br />
<br />
== Retrieve a single Study ==<br />
{{HasOperation |id=API_Study:Retrieve}}<br />
<br />
== Retrieve Metadata of a single Study ==<br />
{{HasOperation |id=API_Study:RetrieveMetadata}}<br />
<br />
= Study versions =<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study with a previous version ===<br />
<http://toxbank.net/services/study/Study_4><br />
a tb:Study ;<br />
tb:hasAbstract "This is another abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_4/assay/Assay_11> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "cell"@en , "protein"@en ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:studyPriorVersion<br />
<http://toxbank.net/services/study/Study_3>;<br />
tb:versionInfo "2"^^xsd:string .<br />
<br />
== Upload a new Study version ==<br />
{{HasOperation |id=API_Study:UploadVersion}}<br />
<br />
== Retrieve Versions of a single Study==<br />
{{HasOperation |id=API_Study:RetrieveVersions}}<br />
<br />
= Assays =<br />
<br />
===Two proposals:===<br />
* Rename to "Step"<br />
* Keep "Assay" as it is compatible with ISA-TAB, but use an appropriate title in user interface.<br />
<br />
from ISA-TAB discussion - while developing new technology, there may be a "technology tuning step" , and then running the experiment itself, and generate data. <br />
On ISA-TAB web page http://isatab.sourceforge.net/case_studies.html there are examples of organisations using it for stem cells experiments (Harward Medical School).<br />
bii system or in-house systems<br />
Another example of a system using ISA-TAB is The Nutritional Phenotype Database http://www.dbnp.org/<br />
<br />
A single protocol and one or more datasets, associated with a [[API_Study|Study]].<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of an Assay ===<br />
<http://toxbank.net/services/study/Study_3/assay/Assay_7><br />
a tb:Assay ;<br />
tb:hasData "http://abc.de/dataset/D123"^^xsd:anyURI ;<br />
tb:hasData "http://abc.de/dataset/D456"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy <http://toxbank.net/services/study/Study_3>.<br />
<br />
<http://toxbank.net/services/study/Study_4/assay/Assay_11><br />
a tb:Assay ;<br />
tb:hasData "http://my.com/dataset/mydataset"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy<br />
<http://toxbank.net/services/study/Study_4>.<br />
<br />
== Retrieve all Assays ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssays}}<br />
<br />
== Retrieve a single Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Upload a single Assay ==<br />
{{HasOperation |id=API_Study:UploadStudyAssay}}<br />
<br />
== Retrieve a Protocol, associated with an Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Retrieve Datasets, associated with an Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyData}}<br />
<br />
== Upload Assay Data ==<br />
{{HasOperation |id=API_Study:UploadAssayData}}</div>Egonwhttp://api.toxbank.net/index.php/InvestigationInvestigation2011-10-07T12:43:53Z<p>Egonw: /* Retrieve Datasets, associated with an Assay */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
= Study =<br />
<br />
A [[API_Study|Study]] is the specific instance of executing a set of [[API_Protocol|Protocols]]. <br />
<br />
A [[API_Study|Study]] may consists of several (optionally ordered) [[API_Study#Assays|Assays]]. An [[API_Study#Assays|Assay]] serves as a container, associating a [[API_Protocol|Protocol]] with the generated [[API_Data|data]]. A [[API_Study|Study]] has an Author (an [[API_User|User]]).<br />
<br />
A [[API_Study|Study]] may have [[API_Study#Study_versions|versions]], a Study version is another [[API_Study|Study]]. <br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study ===<br />
<http://toxbank.net/services/study/Study_3><br />
a tb:Study ;<br />
tb:hasAbstract "This is an abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_3/assay/Assay_7> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "abc"^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:versionInfo "1"^^xsd:string .<br />
<br />
<br />
== Retrieve the List of Studies ==<br />
{{HasOperation |id=API_Study:RetrieveList}}<br />
<br />
== Upload a new Study ==<br />
{{HasOperation |id=API_Study:Upload}}<br />
<br />
== Retrieve a single Study ==<br />
{{HasOperation |id=API_Study:Retrieve}}<br />
<br />
== Retrieve Metadata of a single Study ==<br />
{{HasOperation |id=API_Study:RetrieveMetadata}}<br />
<br />
= Study versions =<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study with a previous version ===<br />
<http://toxbank.net/services/study/Study_4><br />
a tb:Study ;<br />
tb:hasAbstract "This is another abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_4/assay/Assay_11> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "cell"@en , "protein"@en ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:studyPriorVersion<br />
<http://toxbank.net/services/study/Study_3>;<br />
tb:versionInfo "2"^^xsd:string .<br />
<br />
== Upload a new Study version ==<br />
{{HasOperation |id=API_Study:UploadVersion}}<br />
<br />
== Retrieve Versions of a single Study==<br />
{{HasOperation |id=API_Study:RetrieveVersions}}<br />
<br />
= Assays =<br />
<br />
===Two proposals:===<br />
* Rename to "Step"<br />
* Keep "Assay" as it is compatible with ISA-TAB, but use an appropriate title in user interface.<br />
<br />
from ISA-TAB discussion - while developing new technology, there may be a "technology tuning step" , and then running the experiment itself, and generate data. <br />
On ISA-TAB web page http://isatab.sourceforge.net/case_studies.html there are examples of organisations using it for stem cells experiments (Harward Medical School).<br />
bii system or in-house systems<br />
Another example of a system using ISA-TAB is The Nutritional Phenotype Database http://www.dbnp.org/<br />
<br />
A single protocol and one or more datasets, associated with a [[API_Study|Study]].<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of an Assay ===<br />
<http://toxbank.net/services/study/Study_3/assay/Assay_7><br />
a tb:Assay ;<br />
tb:hasData "http://abc.de/dataset/D123"^^xsd:anyURI ;<br />
tb:hasData "http://abc.de/dataset/D456"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy <http://toxbank.net/services/study/Study_3>.<br />
<br />
<http://toxbank.net/services/study/Study_4/assay/Assay_11><br />
a tb:Assay ;<br />
tb:hasData "http://my.com/dataset/mydataset"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy<br />
<http://toxbank.net/services/study/Study_4>.<br />
<br />
== Retrieve all Assays ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssays}}<br />
<br />
== Retrieve a single Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Upload a single Assay ==<br />
{{HasOperation |id=API_Study:UploadStudyAssay}}<br />
<br />
== Retrieve a Protocol, associated with an Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Retrieve Datasets, associated with an Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyData}}<br />
<br />
== Upload Assay Data ==<br />
{{:API_Study:UploadAssayData}}</div>Egonwhttp://api.toxbank.net/index.php/API_Study:UploadStudyAssayAPI Study:UploadStudyAssay2011-10-07T12:42:56Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Uploads a single assay<br />
|REST_resource=Study<br />
|REST_op_method=POST<br />
|REST_op_uri=/study/{id}/assay<br />
|REST_op_params=TBD, file(s) content in multipart web form, with predefined metadata, including URI of the protocol<br />
|REST_header_param=subjectid:SECURITY-TOKEN<br />
|REST_op_mime_input=multipart web form - application/x-www-form-urlencoded, RDF, JSON<br />
|REST_op_result=Task URI, when complete - URI of the new assay , e.g. /study/P123/assay/A456<br />
|REST_op_mime_output=text/uri-list<br />
|REST_op_status=200,202,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/InvestigationInvestigation2011-10-07T12:42:50Z<p>Egonw: /* Retrieve a Protocol, associated with an Assay */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
= Study =<br />
<br />
A [[API_Study|Study]] is the specific instance of executing a set of [[API_Protocol|Protocols]]. <br />
<br />
A [[API_Study|Study]] may consists of several (optionally ordered) [[API_Study#Assays|Assays]]. An [[API_Study#Assays|Assay]] serves as a container, associating a [[API_Protocol|Protocol]] with the generated [[API_Data|data]]. A [[API_Study|Study]] has an Author (an [[API_User|User]]).<br />
<br />
A [[API_Study|Study]] may have [[API_Study#Study_versions|versions]], a Study version is another [[API_Study|Study]]. <br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study ===<br />
<http://toxbank.net/services/study/Study_3><br />
a tb:Study ;<br />
tb:hasAbstract "This is an abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_3/assay/Assay_7> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "abc"^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:versionInfo "1"^^xsd:string .<br />
<br />
<br />
== Retrieve the List of Studies ==<br />
{{HasOperation |id=API_Study:RetrieveList}}<br />
<br />
== Upload a new Study ==<br />
{{HasOperation |id=API_Study:Upload}}<br />
<br />
== Retrieve a single Study ==<br />
{{HasOperation |id=API_Study:Retrieve}}<br />
<br />
== Retrieve Metadata of a single Study ==<br />
{{HasOperation |id=API_Study:RetrieveMetadata}}<br />
<br />
= Study versions =<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study with a previous version ===<br />
<http://toxbank.net/services/study/Study_4><br />
a tb:Study ;<br />
tb:hasAbstract "This is another abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_4/assay/Assay_11> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "cell"@en , "protein"@en ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:studyPriorVersion<br />
<http://toxbank.net/services/study/Study_3>;<br />
tb:versionInfo "2"^^xsd:string .<br />
<br />
== Upload a new Study version ==<br />
{{HasOperation |id=API_Study:UploadVersion}}<br />
<br />
== Retrieve Versions of a single Study==<br />
{{HasOperation |id=API_Study:RetrieveVersions}}<br />
<br />
= Assays =<br />
<br />
===Two proposals:===<br />
* Rename to "Step"<br />
* Keep "Assay" as it is compatible with ISA-TAB, but use an appropriate title in user interface.<br />
<br />
from ISA-TAB discussion - while developing new technology, there may be a "technology tuning step" , and then running the experiment itself, and generate data. <br />
On ISA-TAB web page http://isatab.sourceforge.net/case_studies.html there are examples of organisations using it for stem cells experiments (Harward Medical School).<br />
bii system or in-house systems<br />
Another example of a system using ISA-TAB is The Nutritional Phenotype Database http://www.dbnp.org/<br />
<br />
A single protocol and one or more datasets, associated with a [[API_Study|Study]].<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of an Assay ===<br />
<http://toxbank.net/services/study/Study_3/assay/Assay_7><br />
a tb:Assay ;<br />
tb:hasData "http://abc.de/dataset/D123"^^xsd:anyURI ;<br />
tb:hasData "http://abc.de/dataset/D456"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy <http://toxbank.net/services/study/Study_3>.<br />
<br />
<http://toxbank.net/services/study/Study_4/assay/Assay_11><br />
a tb:Assay ;<br />
tb:hasData "http://my.com/dataset/mydataset"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy<br />
<http://toxbank.net/services/study/Study_4>.<br />
<br />
== Retrieve all Assays ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssays}}<br />
<br />
== Retrieve a single Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Upload a single Assay ==<br />
{{HasOperation |id=API_Study:UploadStudyAssay}}<br />
<br />
== Retrieve a Protocol, associated with an Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Retrieve Datasets, associated with an Assay ==<br />
{{:API_Study:RetrieveStudyData}}<br />
<br />
== Upload Assay Data ==<br />
{{:API_Study:UploadAssayData}}</div>Egonwhttp://api.toxbank.net/index.php/API_Study:RetrieveStudyAssayAPI Study:RetrieveStudyAssay2011-10-07T12:42:32Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieves the protocol, associated with the AssayAssay<br />
|REST_resource=Study<br />
|REST_op_method=GET<br />
|REST_op_uri=/study/{id}/assay/{id}/protocol<br />
|REST_op_params=none<br />
|REST_header_param=SECURITY-TOKEN<br />
|REST_op_mime_input=none?<br />
|REST_op_result=URI of the protocol<br />
|REST_op_mime_output=URI, RDF,JSON,XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonwhttp://api.toxbank.net/index.php/InvestigationInvestigation2011-10-07T12:42:26Z<p>Egonw: /* Upload a single Assay */</p>
<hr />
<div>{{REST_resource<br />
}}<br />
<br />
= Study =<br />
<br />
A [[API_Study|Study]] is the specific instance of executing a set of [[API_Protocol|Protocols]]. <br />
<br />
A [[API_Study|Study]] may consists of several (optionally ordered) [[API_Study#Assays|Assays]]. An [[API_Study#Assays|Assay]] serves as a container, associating a [[API_Protocol|Protocol]] with the generated [[API_Data|data]]. A [[API_Study|Study]] has an Author (an [[API_User|User]]).<br />
<br />
A [[API_Study|Study]] may have [[API_Study#Study_versions|versions]], a Study version is another [[API_Study|Study]]. <br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study ===<br />
<http://toxbank.net/services/study/Study_3><br />
a tb:Study ;<br />
tb:hasAbstract "This is an abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_3/assay/Assay_7> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "abc"^^xsd:string ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:versionInfo "1"^^xsd:string .<br />
<br />
<br />
== Retrieve the List of Studies ==<br />
{{HasOperation |id=API_Study:RetrieveList}}<br />
<br />
== Upload a new Study ==<br />
{{HasOperation |id=API_Study:Upload}}<br />
<br />
== Retrieve a single Study ==<br />
{{HasOperation |id=API_Study:Retrieve}}<br />
<br />
== Retrieve Metadata of a single Study ==<br />
{{HasOperation |id=API_Study:RetrieveMetadata}}<br />
<br />
= Study versions =<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of a Study with a previous version ===<br />
<http://toxbank.net/services/study/Study_4><br />
a tb:Study ;<br />
tb:hasAbstract "This is another abstract"^^xsd:string ;<br />
tb:hasAssay http://toxbank.net/services/study/Study_4/assay/Assay_11> ;<br />
tb:hasAuthor tb:OliviaSanger ;<br />
tb:hasKeyword "cell"@en , "protein"@en ;<br />
tb:hasOwner tb:ORG5 ;<br />
tb:isSummarySearchable<br />
"true"^^xsd:boolean ;<br />
tb:project tb:DETECTIVE ;<br />
tb:studyPriorVersion<br />
<http://toxbank.net/services/study/Study_3>;<br />
tb:versionInfo "2"^^xsd:string .<br />
<br />
== Upload a new Study version ==<br />
{{HasOperation |id=API_Study:UploadVersion}}<br />
<br />
== Retrieve Versions of a single Study==<br />
{{HasOperation |id=API_Study:RetrieveVersions}}<br />
<br />
= Assays =<br />
<br />
===Two proposals:===<br />
* Rename to "Step"<br />
* Keep "Assay" as it is compatible with ISA-TAB, but use an appropriate title in user interface.<br />
<br />
from ISA-TAB discussion - while developing new technology, there may be a "technology tuning step" , and then running the experiment itself, and generate data. <br />
On ISA-TAB web page http://isatab.sourceforge.net/case_studies.html there are examples of organisations using it for stem cells experiments (Harward Medical School).<br />
bii system or in-house systems<br />
Another example of a system using ISA-TAB is The Nutritional Phenotype Database http://www.dbnp.org/<br />
<br />
A single protocol and one or more datasets, associated with a [[API_Study|Study]].<br />
<br />
=== [http://www.w3.org/DesignIssues/Notation3 N3] representation of an Assay ===<br />
<http://toxbank.net/services/study/Study_3/assay/Assay_7><br />
a tb:Assay ;<br />
tb:hasData "http://abc.de/dataset/D123"^^xsd:anyURI ;<br />
tb:hasData "http://abc.de/dataset/D456"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy <http://toxbank.net/services/study/Study_3>.<br />
<br />
<http://toxbank.net/services/study/Study_4/assay/Assay_11><br />
a tb:Assay ;<br />
tb:hasData "http://my.com/dataset/mydataset"^^xsd:anyURI ;<br />
tb:hasProtocol <http://toxbank.net/services/protocol/Protocol_9> ;<br />
tb:isPartOfStudy<br />
<http://toxbank.net/services/study/Study_4>.<br />
<br />
== Retrieve all Assays ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssays}}<br />
<br />
== Retrieve a single Assay ==<br />
{{HasOperation |id=API_Study:RetrieveStudyAssay}}<br />
<br />
== Upload a single Assay ==<br />
{{HasOperation |id=API_Study:UploadStudyAssay}}<br />
<br />
== Retrieve a Protocol, associated with an Assay ==<br />
{{:API_Study:RetrieveStudyAssay}}<br />
<br />
== Retrieve Datasets, associated with an Assay ==<br />
{{:API_Study:RetrieveStudyData}}<br />
<br />
== Upload Assay Data ==<br />
{{:API_Study:UploadAssayData}}</div>Egonwhttp://api.toxbank.net/index.php/API_Study:RetrieveStudyAssaysAPI Study:RetrieveStudyAssays2011-10-07T12:41:59Z<p>Egonw: </p>
<hr />
<div>{{REST Operations<br />
|REST_op_description=Retrieves all assays, associated with a Study<br />
|REST_resource=Study<br />
|REST_op_method=GET<br />
|REST_op_uri=/study/{id}/assay<br />
|REST_op_params=TBD, search options to filter the requested assays<br />
|REST_header_param=SECURITY-TOKEN<br />
|REST_op_mime_input=none?<br />
|REST_op_result=The assay metadata (links to the assays, protocols and data, or representation in supported media type)<br />
|REST_op_mime_output=URI, RDF,JSON,XML<br />
|REST_op_status=200,400,401,402,403<br />
}}</div>Egonw