Den OPML

Den uses custom OPML attributes to preserve channel settings when exporting and importing files.

The attributes belong to the XML namespace this page is published at:

<opml version="1.0" xmlns:den="https://den.io/xml/opml">

The namespace defines attributes only — no elements. Attributes appear on standard OPML <outline> elements alongside common attributes such as text, title, type, and xmlUrl. Every attribute is optional, and applications that do not recognize the namespace can safely ignore it: a Den export without the den: attributes is a plain OPML subscription list.

Folder attributes

Folder outlines are outlines without an xmlUrl attribute.

Attribute Type Description
den:icon string SF Symbols name for the folder icon, e.g. globe.americas. Defaults to folder.

Channel attributes

Channel outlines are outlines with an xmlUrl attribute.

Attribute Type Description
den:disableBlocklists boolean Disable content blocklists in the channel’s viewer. Defaults to false.
den:disableJavaScript boolean Disable JavaScript in the channel’s viewer. Defaults to false.
den:generatePreviewSummaries boolean Generate machine summaries for article previews. Defaults to false.
den:viewerMode web, comments, content, or reader Preferred article presentation. When absent, Den chooses automatically.
den:fetchLimit integer, 1–1000 Maximum number of articles kept per fetch. Defaults to 10.
den:retentionPeriod integer, 1–3650 Article retention period in days. Defaults to 30.
den:ttl non-negative integer Minimum time between feed refreshes, in minutes.
den:translationLanguage BCP 47 language code Target language for automatic article translation, e.g. en. Absent when translation is off.
den:languageOverride BCP 47 language code Manual source-language override for feeds that misreport their language, e.g. de.

Boolean values are the lowercase strings true and false; the numeric forms 1 and 0 are not recognized. Integer values outside their documented range are clamped on import rather than rejected.

Example

<?xml version="1.0" encoding="utf-8"?>
<opml version="1.0" xmlns:den="https://den.io/xml/opml">
<head>
<title>Den Library</title>
<dateCreated>Sun, 30 Aug 2026 12:00:00 GMT</dateCreated>
</head>
<body>
<outline text="News" title="News" den:icon="globe.americas">
<outline text="Example Feed" title="Example Feed" type="rss"
    xmlUrl="https://example.com/feed.xml"
    den:disableBlocklists="false" den:disableJavaScript="false"
    den:generatePreviewSummaries="true" den:viewerMode="reader"
    den:fetchLimit="25" den:retentionPeriod="90"/>
</outline>
</body>
</opml>

Import behavior

Den’s importer resolves namespaces when reading OPML files:

Schema

An XML Schema describing the attributes is available at https://den.io/xml/opml/den-opml.xsd. Because OPML itself has no official schema, the schema declares the Den attributes only; it documents recommended value ranges and is suitable for validating the attributes as a foreign vocabulary rather than for validating complete OPML documents.