- Home
- OSF
- conStruct
- structWSF
- Download
- Installation Guide
- Overview
- Global structWSF Statistics
- Architecture
- Datasets & Access
- Endpoints Access
- structXML
- Web Services Tutorial
- Individual WS Documentation
- WS: Auth Registrar: Access
- WS: Auth Registrar: WS
- WS: Auth: Lister
- WS: Auth: Validator
- WS: Ontology: Create
- WS: Dataset: Create
- WS: Dataset: Read
- WS: Dataset: Update
- WS: Dataset: Delete
- WS: CRUD: Create
- WS: CRUD: Read
- WS: CRUD: Update
- WS: CRUD: Delete
- WS: Search
- WS: Browse
- WS: Converter: irJSON
- WS: SPARQL
- WS: Converter: BibTeX
- WS: Converter: TSV
- sComponent
- irON
- Developers
Auth:Lister Web Service
Auth: Lister Web Service API Documentation
The Auth: Lister Web service is used to list all of the datasets accessible to a given user, list all of the datasets accessible to a given user with all of its CRUD permissions, to list all of the Web services registered to the WSF (Web Services Framework) and to list all of the CRUD permissions, for all users, for a given dataset created on a WSF.
This Web service is used to list all the things that are registered / authenticated in a Web Service Framework network.
Developers communicate with the Authentication: Lister Web service using the HTTP GET method. You may request one of the following mime types: (1) text/xml, (2) application/rdf+xml, (3) application/rdf+n3 or (4) application/json. The content returned by the Web service will be serialized using the mime type requested and the data returned will depend on the parameters selected.
Usage
This Web service is intended to be used by content management systems, developers or administrators to manage access to WSF (Web Service Framework) resources (users, datasets, Web services endpoints).
Web Service Endpoint Information
This section describes all you permissions you need in the WSF (Web Service Framework) to send a query to this Web service endpoint, and it describes how to access it.
To access this Web service endpoint you need the proper CRUD (Create, Read, Update and Delete) permissions on a specific graph (dataset) of the WSF. Without the proper permissions on this graph you won't be able to send any queries to the endpoint.
Needed registered CRUD permission:
- Create: False
- Read: True
- Update: False
- Delete: False
As shown on the graph URI:
- http://[...]/wsf/
Here is the information needed to communicate with this Web service's endpoint. Descriptions of the parameters are included below.
Note: if a parameter has a default value, the requester can omit it and the default value will be used. Also, some baseline Web services may not offer other values than the default.
HTTP method:
- GET
Possible "Accept:" HTTP header field value:
- text/xml (DTD validating the returned content)
- application/json
- application/rdf+xml
- application/rdf+n3
URI:
- http://[...]/ws/auth/lister/ ?mode=param1&dataset=param2®istered_ip=param3
URI dynamic parameters description:
Note: All parameters have to be URL-encoded
- param1 . One of:
- "dataset (default)": List all datasets URI accessible by a user
- "ws": List all Web services registered in a WSF
- "access_dataset": List all the registered IP addresses and their CRUD permissions for a given dataset URI
- "access_user": List all datasets URI and CRUD permissions accessible by a user
- param2.URI referring to a target dataset. Needed when param1 = "dataset" or param1 = "access_datase". Otherwise this parameter as to be omitted.
- param3.Target IP address registered in the WSF. Needed when param1 = "access_user". Otherwise this parameter as to be omitted.
Example of Returned XML Document
This is an example of the XML document returned by this Web service endpoint for a given URI. This example returns a list of datasets accessible by a given user IP.
Query:
- http://[...]/ws/auth/lister/?mode=access_user®istered_ip=24.200.138.116
"Accept:" HTTP header field value:
- text/xml
Result:
-
<?xml version="1.0" encoding="utf-8"?>
-
<!DOCTYPE resultset PUBLIC "-//Structured Dynamics LLC//Auth Lister DTD 0.1//EN" "http://bknetwork.org:8890/ws/dtd/auth/authLister.dtd">
-
<resultset>
-
<prefix entity="wsf" uri="http://purl.org/ontology/wsf#"/>
-
<prefix entity="void" uri="http://rdfs.org/ns/void#"/>
-
<prefix entity="rdf" uri="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
-
<subject type="wsf:Access" uri="http://[...]/wsf/access/c27f782dfd9ede1cc8a68bd5aa63e7ea">
-
<predicate type="wsf:datasetAccess">
-
<object type="void:Dataset" uri="http://[...]/drupal/core/"/>
-
</predicate>
-
<predicate type="wsf:create">
-
<object type="rdfs:Literal">True</object>
-
</predicate>
-
<predicate type="wsf:read">
-
<object type="rdfs:Literal">True</object>
-
</predicate>
-
<predicate type="wsf:update">
-
<object type="rdfs:Literal">True</object>
-
</predicate>
-
<predicate type="wsf:delete">
-
<object type="rdfs:Literal">True</object>
-
</predicate>
-
<predicate type="wsf:webServiceAccess">
-
<object type="wsf:WebService" uri="http://[...]/wsf/ws/auth/lister/"/>
-
</predicate>
-
<predicate type="wsf:webServiceAccess">
-
<object type="wsf:WebService" uri="http://[...]/wsf/ws/dataset/update/"/>
-
</predicate>
-
[...]
-
</subject>
-
[...]
-
</resultset>
DTD of the XML Document
-
<!ELEMENT resultset (subject)+ (prefix)* >
-
<!ELEMENT prefix EMPTY>
-
<!ATTLIST prefix entity CDATA #IMPLIED>
-
<!ATTLIST prefix uri CDATA #IMPLIED>
-
<!ELEMENT subject (predicate)*>
-
<!ATTLIST subject type (wsf:WebService | void:Dataset | rdf:Bag | wsf:Access ) "void:Dataset">
-
<!ATTLIST subject uri CDATA #IMPLIED>
-
<!ELEMENT predicate (object)>
-
<!ATTLIST predicate type (wsf:webServiceAccess | wsf:delete | wsf:update | wsf:read | wsf:create | wsf:datasetAccess | wsf:registeredIP | rdf:li )"wsf:datasetAccess">
-
<!ELEMENT object EMPTY>
-
<!ATTLIST object type (wsf:WebService | void:Dataset | rdfs:Literal) "void:Dataset">
-
<!ATTLIST object uri CDATA #IMPLIED>
-
<!ATTLIST object label CDATA #IMPLIED>
Descriptions of the Types of XML Elements
Here are descriptions of the types of XML elements that might be returned from from this Web service. Please read the XML data structure documentation to understand how the data is structured within these XML documents.
- wsf:WebService (subject/object). A Web service that is registered in the WSF (Web Service Framework)
- void:Dataset (subject/object). A dataset registered/available in the WSF
- wsf:Access (subject/object). An access perission for a user to a given dataset URI and related Web services endpoints.
- rdf:Bag (subject/object). An unordered set of resources returned by the Web service
- wsf:webServiceAccess (predicate). Links a wsf:Access to the Web service resouce identifier referenced in the Access description.
- wsf:datasetAccess (predicate). Links a wsf:Access to the dataset resource identifier referenced in the Access description
- wsf:registeredIP (predicate). Links a wsf:Access to the registered IP address that has access to the target dataset and the related Web services endpoints.
- wsf:create (predicate). Specify the create CRUD access permission for the registered IP to the target dataset and accessible Web services endpoints.
- wsf:read (predicate). Specify the read CRUD access permission for the registered IP to the target dataset and accessible Web services endpoints.
- wsf:update (predicate). Specify the update CRUD access permission for the registered IP to the target dataset and accessible Web services endpoints.
- wsf:delete (predicate). Specify the delete CRUD access permission for the registered IP to the target dataset and accessible Web services endpoints.
- rdf:li (predicate). An item of a rdf:Bag that refers to a resource
Example of Returned RDF/XML Document
Here is an example of a RDF/XML document returned by this Web service endpoint for a given URI.
Query:
- http://[...]/ws/auth/lister/?mode=access_user®istered_ip=24.200.138.116
"Accept:" HTTP header field value:
- application/rdf+xml
Result:
-
<?xml version="1.0"?>
-
<rdf:RDF xmlns:bibo="http://purl.org/ontology/bibo/" xmlns:void= "http://rdfs.org/ns/void#" xmlns:wsf="http://purl.org/ontology/wsf#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:xsd= "http://www.w3.org/2001/XMLSchema#" xmlns:rdfs= "http://www.w3.org/2000/01/rdf-schema#" xmlns:rdf= "http://www.w3.org/1999/02/22-rdf-syntax-ns#">
-
<wsf:Access rdf:about="http://[...]/wsf/access/c27f782dfd9ede1cc8a68bd5aa63e7ea">
-
<wsf:datasetAccess rdf:resource="http://[...]/drupal/core/" />
-
<wsf:create>True</wsf:create>
-
<wsf:read>True</wsf:read>
-
<wsf:update>True</wsf:update>
-
<wsf:delete>True</wsf:delete>
-
<wsf:webServiceAccess rdf:resource="http://[...]/wsf/ws/auth/lister/" />
-
<wsf:webServiceAccess rdf:resource="http://[...]/wsf/ws/dataset/update/" />
-
<wsf:webServiceAccess rdf:resource="http://[...]/wsf/ws/dataset/create/" />
-
<wsf:webServiceAccess rdf:resource="http://[...]/wsf/ws/crud/update/" />
-
<wsf:webServiceAccess rdf:resource="http://[...]/wsf/ws/dataset/read/" />
-
<wsf:webServiceAccess rdf:resource="http://[...]/wsf/ws/crud/delete/" />
-
</wsf:Access>
-
</rdf:RDF>
Example of Returned RDF/N3 Document
Here is an example of a RDF/N3 document returned by this Web service endpoint for a given URI.
Query:
- http://[...]/ws/auth/lister/?mode=access_user®istered_ip=24.200.138.116
"Accept:" HTTP header field value:
- application/rdf+n3
Result:
-
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
-
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
-
@prefix owl: <http://www.w3.org/2002/07/owl#> .
-
@prefix void: <http://rdfs.org/ns/void#> .
-
@prefix wsf: <http://purl.org/ontology/wsf#> .
-
<http://[...]/wsf/access/c27f782dfd9ede1cc8a68bd5aa63e7ea> a wsf:Access ;
-
wsf:datasetAccess <http://[...]/drupal/core/> ;
-
wsf:create "True" ;
-
wsf:read "True" ;
-
wsf:update "True" ;
-
wsf:delete "True" ;
-
wsf:webServiceAccess <http://[...]/wsf/ws/auth/lister/> ;
-
wsf:webServiceAccess <http://[...]/wsf/ws/dataset/update/> ;
-
wsf:webServiceAccess <http://[...]/wsf/ws/dataset/create/> ;
-
wsf:webServiceAccess <http://[...]/wsf/ws/crud/update/> ;
-
wsf:webServiceAccess <http://[...]/wsf/ws/dataset/read/> ;
-
wsf:webServiceAccess <http://[...]/wsf/ws/crud/delete/> .
HTTP Status Codes
Here are the possible HTTP status (error) codes returned by this Web service endpoint.
On error code and the specific error, a different message description can be issued (meaning a different error has been returned).
- Code:200
- Message:OK
- Code:400
- Message:Bad Request
- Message description:Unknown listing type
- Message description:No target dataset URI
- Message description:No requester IP available
- Message description: No Web service URI available
- Message description:Target Web service XYZ not registered to this Web Services Framework
- Message description:No access defined for this requester IP XYZ, dataset (XYZ) and Web service (XYZ)
- Message description:The target Web service (XYZ) needs create access and the requested user (XYZ) doesn't have this access for that dataset (XYZ)
- Message description:The target Web service (XYZ) needs read access and the requested user (XYZ) doesn't have this access for that dataset (XYZ)
- Message description:The target Web service (XYZ) needs update access and the requested user (XYZ) doesn't have this access for that dataset (XYZ)
- Message description:The target Web service (XYZ) needs delete access and the requested user (XYZ) doesn't have this access for that dataset (XYZ)
- Code:406
- Message:Not Acceptable
- Message description:Unacceptable mime type requested
- Code:500
- Message:Internal Error