Cmap Web Service Home | KEA

CXL

Cmap Web Service

Layout Web Service

Client Example

A Web Service for accessing resources on a Cmap Server

The Cmap Web Service allows access to resources on a Cmap Server. It allows browsing the contents of the Cmap Server as well as saving and retrieving resources.

The service definition is available as a WSDL 1.1 file in the following link: CmapWebService.wsdl

Method Summary

Method Name Input Output Description
checkPermission resource-url, permission, [account-list] boolean Checks whether any of the accounts provided have the requested permission on the resource specified.
createCmap res-meta, folder-url, cmap, [account-list] res-meta Saves a new Cmap in the specified folder
createFolder res-meta, parent-folder-url, [account-list], [acl-info], [account-manager-info] res-meta Creates a new folder inside the specified parent folder
createResource res-meta, folder-url, resource, [account-list] res-meta Saves a new resource in the specified folder
delete resource-url, [account-list] Deletes the specified resource
rename resource-url, name, [account-list] res-meta Renames the specified resource
getAclInfo folder-url, [account-list] acl-info Gets the current AclInfo for a folder
getCmap resource-url, [account-list] cmap Returns the specified Cmap
getResource resource-url, [account-list] resource Returns the specified resource
getResourceMeta resource-url, [account-list] res-meta Returns the metadata of the specified resource
getResourceMetaList folder-url, [account-list] res-meta-list Returns the metadata of the elements contained by the specified folder
getRootResourceMeta [account-list] res-meta Returns the metadata of the root folder
getRootResourceMetaList [account-list] res-meta-list Returns the metadata of the elements of the root folder
saveCmap resource-url, cmap, [account-list] res-meta Saves an existing Cmap
saveResource resource-url, resource, [account-list] res-meta Saves an existing resource
setAclInfo folder-url, [account-list], acl-info boolean Sets the AclInfo for a folder
setResourceMeta res-meta, [account-list] res-meta Modifies the metadata of a resource


Error reporting

Errors are reported as an error element inside the detail element of the SOAP Fault element.


account-list

This list is used for authentication on the server side, to grant access to resources in the context of the specified operation.

Attributes

None

Child Elements

Name Min. Occurrences Max. Occurrences
account 0 Unbounded


account

This element represents a credential to be used on the server for authentication.

Attributes

Name XML Schema Type Required Description
user-id string Yes The user-id to be used for authentication
password string Yes The password corresponding to the user-id

Child Elements

None


resource

A Base64 string representing binary data. This element is defined to be of type base64Binary from the namespace http://www.w3.org/2005/05/xmlmime.

Attributes

Name XML Schema Type Required Description
contentType string No MIME type of the binary data

Child Elements

A base64Binary string


resource-url

URL for the resource. This URL can be the value of the dc:identifier or dc:relation inside the res-meta of the resource.

Attributes

None

Child Elements

A string


folder-url

URL for the folder. This URL can be the value of the dc:identifier or dc:relation inside the res-meta of the folder.

Attributes

None

Child Elements

A string


parent-folder-url

URL for the parent folder. This URL can be the value of the dc:identifier or dc:relationinside the res-meta of the parent folder.

Attributes

None

Child Elements

A string


name

Name for the resource.

Attributes

None

Child Elements

A string


acl-info

Access control list for the folder that it is been created

Attributes

Name XML Schema Type Required Description
inherit boolean No Flag to indicate that the folder should inherit the permissions from the parent folder

Child Elements

Name Min. Occurrences Max. Occurrences
acl-entry 0 Unbounded
ldap-acl-entry 0 Unbounded
subfolder-acl-info 0 2
account-manager-info 0 Unbounded


subfolder-acl-info

Access control list to be used as default for child folders. When creating the default access control lists for subfolders there is an special meaning, to specify permissions for the creator of the folder. This entry must be identified by "dummy_owner" in an Acl entry.

Attributes

Name XML Schema Type Required Description
inherit boolean No Flag to indicate that the folder should inherit the permissions from the parent folder
level int Yes Level where the permissions apply (1) for children and (2) for children's subfolders.

Child Elements

Name Min. Occurrences Max. Occurrences
acl-entry 1 Unbounded
ldap-acl-entry


acl-entry

Element for specifying permissions for a standard user. This type of entry must include the user ID, the password, and the set of permissions for the user.

Attributes

Name XML Schema Type Required Description
user-id string Yes User ID to authenticate the user when accessing the resource
password string Yes Password to authenticate the user when accessing the resource/td>

Child Elements

Name Min. Occurrences Max. Occurrences
permission 1 Unbounded


ldap-acl-entry

Element for specifying permissions for a LDAP user.

Attributes

Name XML Schema Type Required Description
user-id string Yes User ID to identify the user when accessing the resource

Child Elements

Name Min. Occurrences Max. Occurrences
permission 1 Unbounded


permission

Element for specifying a single permission.

Attributes

Name XML Schema Type Required Description
id string Yes ID for the permission

Allowed permission IDs

Value Description
admin Permission to modify permissions. This permission includes the other permissions.
read Permission to read resource.
write (deprecated) Permission to modify a resource. Use instead a combination of modify_delete_folder, add_modify_delete_resource and add_folder
annotate Permission to annotate a resource.
add_folder Permission to add a folder
add_modify_delete_resource Permission to add, modify and delete a resource
modify_delete_folder Permission to modify and delete a folder

Child Elements

None


account-manager-info

Information to send the password to the account manager of the folder in case he/she looses it.

Attributes

Name XML Schema Type Required Description
user-id string Yes User ID of the account manager user
name string Yes Name of the account manager user
email string Yes Email where the password will be sent

Child Elements

None


error

Attributes

Name XML Schema Type Required Description
code string Yes The code for the error

Values for the code attribute

Value Description
ParseError Error parsing the request
AccessDenied The provided credentials don't allow you to perform the operation. You must provide different credentials.
ResourceAlreadyLocked The resource is locked by someone else.
ResourceNotFound The resource specified was not found
WriteFailed Error writing
ReadFailed Error reading
DeleteFailed Could not delete the resource
IOFailed Error during Input or Output operations
RenameFailed Error renaming the resource
InvalidCredentials The provided credentials are invalid
CopyFailed Failed copying the resource
ConfigError Configuration error
InternalError Server internal error

Child Elements

Name Min. Occurrences Max. Occurrences
message 0 Unbounded


message

Attributes

Name XML Schema Type Required Description
lang language No The language for the message

Child Elements

A string