object

# `s3_xml`

Adapter layer mapping S3 XML responses to stable library terms.

Availability:
`logtalk_load(s3(loader))`
Author: Paulo Moura
Version: 1:0:0
Date: 2026-07-09
Compilation flags:
`static, context_switching_calls`
Uses:
list
user
xml
Remarks:
(none)
Inherited public predicates:
(none)

## Public predicates

### `list_buckets_response/2`

Parses a ListBuckets XML response body.

Compilation flags:
`static`
Template:
`list_buckets_response(Body,Buckets)`
Mode and number of proofs:
`list_buckets_response(+compound,-compound)` - `one_or_error`
Exceptions:
`Body` is not a supported XML response body term:
`domain_error(s3_xml_body,Body)`
The XML document is malformed or missing required elements:
`domain_error(s3_xml_document,Codes)`

### `list_objects_v2_response/2`

Parses a ListObjectsV2 XML response body.

Compilation flags:
`static`
Template:
`list_objects_v2_response(Body,Listing)`
Mode and number of proofs:
`list_objects_v2_response(+compound,-compound)` - `one_or_error`
Exceptions:
`Body` is not a supported XML response body term:
`domain_error(s3_xml_body,Body)`
The XML document is malformed or missing required elements:
`domain_error(s3_xml_document,Codes)`

### `copy_object_response/2`

Parses a CopyObject XML response body.

Compilation flags:
`static`
Template:
`copy_object_response(Body,Result)`
Mode and number of proofs:
`copy_object_response(+compound,-compound)` - `one_or_error`
Exceptions:
`Body` is not a supported XML response body term:
`domain_error(s3_xml_body,Body)`
The XML document is malformed or missing required elements:
`domain_error(s3_xml_document,Codes)`

### `create_multipart_upload_response/2`

Parses a CreateMultipartUpload XML response body.

Compilation flags:
`static`
Template:
`create_multipart_upload_response(Body,Result)`
Mode and number of proofs:
`create_multipart_upload_response(+compound,-compound)` - `one_or_error`
Exceptions:
`Body` is not a supported XML response body term:
`domain_error(s3_xml_body,Body)`
The XML document is malformed or missing required elements:
`domain_error(s3_xml_document,Codes)`

### `error_response/2`

Parses an S3 XML error response body.

Compilation flags:
`static`
Template:
`error_response(Body,Error)`
Mode and number of proofs:
`error_response(+compound,-compound)` - `zero_or_one_or_error`
Exceptions:
`Body` is not a supported XML response body term:
`domain_error(s3_xml_body,Body)`
The XML document is malformed or missing required elements:
`domain_error(s3_xml_document,Codes)`

## Protected predicates

(no local declarations; see entity ancestors if any)

## Private predicates

(no local declarations; see entity ancestors if any)

## Operators

(none)