# `Lather.Xml.Parser`
[🔗](https://github.com/awksedgreep/lather/blob/v1.0.49/lib/lather/xml/parser.ex#L1)

XML parser for processing SOAP responses.

Provides functionality to parse XML documents into Elixir data structures,
specifically optimized for SOAP response parsing.

# `extract_attributes`

```elixir
@spec extract_attributes(any()) :: map()
```

Extracts all attributes from an XML element.

# `extract_text`

```elixir
@spec extract_text(any()) :: String.t() | nil
```

Extracts text content from an XML element.

# `parse`

```elixir
@spec parse(String.t()) :: {:ok, map()} | {:error, any()}
```

Parses XML string into an Elixir data structure.

## Parameters

* `xml_string` - XML content as a string

## Returns

* `{:ok, parsed_data}` - Successfully parsed XML as a map
* `{:error, reason}` - Parsing error

## Examples

    iex> xml = "<?xml version=\"1.0\"?><root><item>value</item></root>"
    iex> Parser.parse(xml)
    {:ok, %{"root" => %{"item" => "value"}}}

---

*Consult [api-reference.md](api-reference.md) for complete listing*
