> For the complete documentation index, see [llms.txt](https://docs.dnscontrol.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dnscontrol.org/language-reference/domain-modifiers/loc_builder_dms_str.md).

# LOC\_BUILDER\_DMS\_STR

`LOC_BUILDER_DMS_STR({})` actually takes an object with the following properties:

* label (string, optional, defaults to `@`)
* str (string)
* alt (float32, optional)
* ttl (optional)

A helper to build [`LOC`](/language-reference/domain-modifiers/loc.md) records. Supply three parameters instead of 12.

Internally assumes some defaults for [`LOC`](/language-reference/domain-modifiers/loc.md) records.

Accepts a string with degrees, minutes, and seconds (DMS) coordinates in the form: 41°24'12.2"N 2°10'26.5"E

Note that the following are acceptable forms (symbols differ):

* `33°51′31″S 151°12′51″E`
* `33°51'31"S 151°12'51"E`
* `33d51m31sS 151d12m51sE`
* `33d51m31s S 151d12m51s E`

{% code title="dnsconfig.js" %}

```javascript
D("example.com", REG_MY_PROVIDER, DnsProvider(DSP_MY_PROVIDER),
  LOC_BUILDER_DMS_STR({
    label: "sydney-opera-house",
    str: "33°51′31″S 151°12′51″E",
    alt: 4,
    ttl: "5m",
  }),
);
```

{% endcode %}

Part of the series:

* [`LOC()`](/language-reference/domain-modifiers/loc.md) - build a `LOC` by supplying all 12 parameters
* [`LOC_BUILDER_DD({})`](/language-reference/domain-modifiers/loc_builder_dd.md) - accepts cartesian x, y
* [`LOC_BUILDER_DMS_STR({})`](/language-reference/domain-modifiers/loc_builder_dms_str.md) - accepts DMS 33°51′31″S 151°12′51″E
* [`LOC_BUILDER_DMM_STR({})`](/language-reference/domain-modifiers/loc_builder_dmm_str.md) - accepts DMM 25.24°S 153.15°E
* [`LOC_BUILDER_STR({})`](/language-reference/domain-modifiers/loc_builder_str.md) - tries the coordinate string in all `LOC_BUILDER_DM*_STR()` functions until one works
