You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+82-56Lines changed: 82 additions & 56 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,112 +1,136 @@
1
1
# The "podcast" Namespace
2
2
3
-
A wholistic rss namespace for podcasting that is meant to synthesize the fragmented world of podcast namespaces. The broad goal is to create a single, compact, efficient
4
-
namespace that is easily extensible, community controlled/authored and addresses the needs of the independent podcast industry now and in the future.
5
-
Our hope is that this namespace
6
-
will become the framework that the independent podcast community needs to deliver new functionality to apps and aggregators.
3
+
A wholistic rss namespace for podcasting that is meant to synthesize the fragmented world of podcast namespaces. The
4
+
broad goal is to create a single, compact, efficient namespace that is easily extensible, community
5
+
controlled/authored and addresses the needs of the independent podcast industry now and in the future. Our hope is
6
+
that this namespace will become the framework that the independent podcast community needs to deliver new
7
+
functionality to apps and aggregators.
7
8
8
9
9
-
Our guiding principles for development of this namespace are the "[Rules for Standards Makers](http://scripting.com/2017/05/09/rulesForStandardsmakers.html)" by Dave Winer.
10
-
Please read it before contributing if you aren't familiar with it.
10
+
Our guiding principles for development of this namespace are the
11
+
"[Rules for Standards Makers](http://scripting.com/2017/05/09/rulesForStandardsmakers.html)" by Dave Winer. Please
12
+
read it before contributing if you aren't familiar with it.
11
13
12
-
The podcast namespace is part of the larger "Podcasting 2.0" project which exists to bring control of podcasting's protocols back into the hands of the open podcasting community. A good overview can be found here: [Podcasting 2.0](podcasting2.0.md)
14
+
The podcast namespace is part of the larger "Podcasting 2.0" project which exists to bring control of podcasting's
15
+
protocols back into the hands of the open podcasting community. A good overview can be found here:
16
+
[Podcasting 2.0](podcasting2.0.md)
13
17
14
18
*[Official XMLNS Definition](docs/1.0.md) the official definition of all formalized tags.
15
-
* List of platforms and apps that currently implement some or all of these tags: [Supporting Platforms and Apps](docs/element-support.md).
16
-
* Example Feed: There is an example feed [example.xml](example.xml) in this repository showing the podcastindex namespace side by side with the Apple itunes namespace.
17
-
*[Other recommendations](docs/other-recommendations.md) when creating RSS podcast feeds.
19
+
* List of platforms and apps that currently implement some or all of these
20
+
tags: [Supporting Platforms and Apps](docs/element-support.md).
21
+
* Example Feed: There is an example feed [example.xml](example.xml) in this repository showing the podcastindex
22
+
namespace side by side with the Apple itunes namespace. * [Other recommendations](docs/other-recommendations.md)
23
+
when creating RSS podcast feeds.
18
24
19
25
20
26
<br><br>
21
27
22
28
23
29
## Current Roadmap
24
30
25
-
**Phase 1** - [Closed] Comment period closed on `11/15/2020` and [5 tags](https://github.com/Podcastindex-org/podcast-namespace#phase-1-closed-on-111520) were **formalized**.
31
+
**Phase 1** - [Closed] Comment period closed on `11/15/2020` and [5 tags](#phase-1-closed-on-111520) were
32
+
**formalized**.
26
33
27
-
**Phase 2** - [Closed] Comment period closed on `1/31/2021` and [4 tags](https://github.com/Podcastindex-org/podcast-namespace#phase-2-closed-on-13121) were **formalized**.
34
+
**Phase 2** - [Closed] Comment period closed on `1/31/2021` and [4 tags](#phase-2-closed-on-13121) were **formalized**.
28
35
29
-
**Phase 3** - [Closed] Comment period closed on `6/1/2021` and [5 tags](https://github.com/Podcastindex-org/podcast-namespace#phase-3-closed-on-6121) were **formalized**.
36
+
**Phase 3** - [Closed] Comment period closed on `6/1/2021` and [5 tags](#phase-3-closed-on-6121) were **formalized**.
30
37
31
-
**Phase 4** - [Closed] Comment period closed on `12/1/2021` and [3 tags](https://github.com/Podcastindex-org/podcast-namespace#phase-4-closed-on-1212021) were **formalized**.
38
+
**Phase 4** - [Closed] Comment period closed on `12/1/2021` and [3 tags](#phase-4-closed-on-1212021) were
39
+
**formalized**.
32
40
33
-
**Phase 5** - [Closed] Comment period closed on `7/15/2022` and [2 tags](https://github.com/Podcastindex-org/podcast-namespace#phase-5-closed-as-of-7152022) were **formalized**.
41
+
**Phase 5** - [Closed] Comment period closed on `7/15/2022` and [2 tags](#phase-5-closed-as-of-7152022) were
42
+
**formalized**.
34
43
35
-
**Phase 6** - [Open] Comment period is now open as of `9/28/2022`. Proposals are welcome. The following tags are being considered: [Phase 6 tag list](https://github.com/Podcastindex-org/podcast-namespace/discussions?discussions_q=is%3Aopen+label%3Aphase6)
44
+
**Phase 6** - [Closed] Comment period closed on `6/1/2023` and [6 tags](#phase-6-closed-as-of-612023) were
45
+
**formalized**.
36
46
37
47
<br><br>
38
48
39
49
40
50
## Legend
41
51
42
-
**Formalized** - This tag is frozen and listed in the XMLNS document. Any future changes to it's definition must maintain backwards compatibility.
52
+
**Formalized** - This tag is frozen and listed in the XMLNS document. Any future changes to it's definition must
53
+
maintain backwards compatibility.
43
54
44
-
**Finalized** - The tag is structurally stable and implementation testing should be considered safe. Any breaking changes will be widely communicated.
55
+
**Finalized** - The tag is structurally stable and implementation testing should be considered safe. Any breaking
56
+
changes will be widely communicated.
45
57
46
58
**Open** - The tag/phase is open for discussion and collaboration.
47
59
48
60
**Required** - This tag or attribute must be present.
49
61
50
62
**Optional** - This tag or attribute may be left out.
51
63
52
-
**Recommended** - This tag or attribute is technically optional, but is strongly recommended to be present for the tag to function as fully intended.
64
+
**Recommended** - This tag or attribute is technically optional, but is strongly recommended to be present for the
65
+
tag to function as fully intended.
53
66
54
67
55
68
<br><br>
56
69
57
70
58
71
## Tag Adoption Process
59
72
60
-
To be adopted as an official part of the namespace, there must be consensus around a tag's usefulness and either commitment to adoption by at least 1 host and 1 app, or a recognition
61
-
that the tag is already being used in the wild.
73
+
To be adopted as an official part of the namespace, there must be consensus around a tag's usefulness and either
74
+
commitment to adoption by at least 1 host and 1 app, or a recognition that the tag is already being used in the wild.
62
75
63
-
It is ALWAYS ok to delay a tag to a future Phase if there is any concern about it. That is to be expected and encouraged.
76
+
It is ALWAYS ok to delay a tag to a future Phase if there is any concern about it. That is to be expected and
77
+
encouraged.
64
78
65
-
When a Phase comes to a close, there will be a full review of any tags currently open for comment and questions will be asked to gather consensus before final adoption. No tags
66
-
will be adopted by fiat, or if there are unresolved questions. They will just be moved to the next Phase for further comment and refinement.
79
+
When a Phase comes to a close, there will be a full review of any tags currently open for comment and questions will
80
+
be asked to gather consensus before final adoption. No tags will be adopted by fiat, or if there are unresolved
81
+
questions. They will just be moved to the next Phase for further comment and refinement.
67
82
68
-
Tags that are proposals or rough ideas should be expected to have syntax problems or typos. Those should be refined away as they are worked on. If they are not, that is a good idea
69
-
that the tag in question isn't being seen as useful and should be considered for dropping.
83
+
Tags that are proposals or rough ideas should be expected to have syntax problems or typos. Those should be refined
84
+
away as they are worked on. If they are not, that is a good idea that the tag in question isn't being seen as
85
+
useful and should be considered for dropping.
70
86
71
-
We are not a "standards body". It is a community driven project where all stake holders are encouraged to participate, so that many voices are heard. This is an open-source
72
-
project to be built fully in the open. Discussions also take place on [podcastindex.social](https://podcastindex.social) where anyone is free to register and participate.
87
+
We are not a "standards body". It is a community driven project where all stake holders are encouraged to
88
+
participate, so that many voices are heard. This is an open-source project to be built fully in the open.
89
+
Discussions also take place on [podcastindex.social](https://podcastindex.social) where anyone is free to register
90
+
and participate.
73
91
74
92
75
93
<br><br>
76
94
77
95
78
96
### Goal #1 - Eliminate Redundancy
79
97
80
-
There is significant overlap amongst the many existing podcast namespaces. Each platform and publisher has created their own namespace to give their respective
81
-
system and audience the metadata they need in the way they want it delivered.
98
+
There is significant overlap amongst the many existing podcast namespaces. Each platform and publisher has created
99
+
their own namespace to give their respective system and audience the metadata they need in the way they want it
100
+
delivered.
82
101
83
102
84
103
### Goal #2 - Keep "required" tags and attributes minimal
85
104
86
-
The only required tags should be those that solve an overwhelming need in the industry. Requiring tags is a roadblock to adoption and should be avoided. Attributes
87
-
should also only be required when they are key to the functionality of the tag.
105
+
The only required tags should be those that solve an overwhelming need in the industry. Requiring tags is a
106
+
roadblock to adoption and should be avoided. Attributes should also only be required when they are key to the
107
+
functionality of the tag.
88
108
89
109
90
110
### Goal #3 - Keep Exisiting Conventions
91
111
92
-
Reinventing the wheel helps nobody. When at all possible, existing conventions should be maintained. For example, it would make sense to turn **\<podcast:explicit>** into
93
-
a unary element, where it's existence is taken as a "yes" and it's absence as a "no". But, that has never been the standard. And, given as how this namespace will probably
112
+
Reinventing the wheel helps nobody. When at all possible, existing conventions should be maintained. For example,
113
+
it would make sense to turn **\<podcast:explicit>** into a unary element, where it's existence is taken as a "yes"
114
+
and it's absence as a "no". But, that has never been the standard. And, given as how this namespace will probably
94
115
sit alongside at least one other namespace, it makes sense to keep existing conventions in place.
95
116
96
117
97
118
### Goal #4 - Be General... to a point
98
119
99
-
There is no way to address every possible metadata point that each platform would want. That is not the aim. Instead we focus on defining the elements that would be useful
100
-
to the broadest set of apps, publishers, platforms and aggregators. Individual parties can keep their respective supplemental namespaces small and targeted as an adjunct to
101
-
this larger namespace. But, we don't want to be so general that the spec becomes overly complicated. A beautiful, "perfect" spec is not important. Solving real problems is.
120
+
There is no way to address every possible metadata point that each platform would want. That is not the aim.
121
+
Instead we focus on defining the elements that would be useful to the broadest set of apps, publishers, platforms
122
+
and aggregators. Individual parties can keep their respective supplemental namespaces small and targeted as an
123
+
adjunct to this larger namespace. But, we don't want to be so general that the spec becomes overly complicated. A
124
+
beautiful, "perfect" spec is not important. Solving real problems is.
102
125
103
126
104
127
<br><br>
105
128
106
129
107
130
## Copying information
108
131
109
-
The "podcast" namespace is [dedicated to the public domain using CC0 v1.0](COPYING.txt) so as to remove all barriers to adoption, development and contribution.
132
+
The "podcast" namespace is [dedicated to the public domain using CC0 v1.0](COPYING.txt) so as to remove all barriers
133
+
to adoption, development and contribution.
110
134
111
135
112
136
<br><br>
@@ -118,8 +142,8 @@ The "podcast" namespace is [dedicated to the public domain using CC0 v1.0](COPYI
118
142
119
143
<br>
120
144
121
-
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document located [here](docs/1.0.md). Please see that file for
122
-
full implementation details.
145
+
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document
146
+
located [here](docs/1.0.md). Please see that file for full implementation details.
123
147
124
148
-**\<podcast:locked>** <br>
125
149
-**\<podcast:transcript>** <br>
@@ -133,8 +157,8 @@ full implementation details.
133
157
134
158
<br>
135
159
136
-
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document located [here](docs/1.0.md). Please see that file for
137
-
full implementation details.
160
+
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document
161
+
located [here](docs/1.0.md). Please see that file for full implementation details.
138
162
139
163
-**\<podcast:person>** <br>
140
164
-**\<podcast:location>** <br>
@@ -148,8 +172,8 @@ full implementation details.
148
172
149
173
<br>
150
174
151
-
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document located [here](docs/1.0.md). Please see that file for
152
-
full implementation details.
175
+
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document
176
+
located [here](docs/1.0.md). Please see that file for full implementation details.
153
177
154
178
-**\<podcast:trailer>** <br>
155
179
-**\<podcast:license>** <br>
@@ -165,8 +189,8 @@ full implementation details.
165
189
166
190
<br>
167
191
168
-
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document located [here](docs/1.0.md). Please see that file for
169
-
full implementation details.
192
+
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document
193
+
located [here](docs/1.0.md). Please see that file for full implementation details.
170
194
171
195
-**\<podcast:medium>** <br>
172
196
-**\<podcast:images>** <br>
@@ -179,30 +203,32 @@ full implementation details.
179
203
180
204
<br>
181
205
182
-
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document located [here](docs/1.0.md). Please see that file for
183
-
full implementation details.
206
+
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document
207
+
located [here](docs/1.0.md). Please see that file for full implementation details.
184
208
185
209
-**\<podcast:socialInteract>** <br>
186
210
-**\<podcast:block>** <br>
187
211
188
212
<br>
189
213
190
-
## <u>Phase 6 (Open as of 9/28/2022)</u>
214
+
## <u>Phase 6 (Closed as of 6/1/2023)</u>
191
215
192
-
Tags [listed here](https://github.com/Podcastindex-org/podcast-namespace/labels/phase6) are under consideration for inclusion in this phase. New tag submissions are welcome.
193
-
194
-
Additionally, the following tags have been formally adopted into the namespace in this phase:
216
+
The following tags have been formally adopted into the namespace. They are fully documented in the XMLNS document
217
+
located [here](docs/1.0.md). Please see that file for full implementation details.
195
218
196
219
-**\<podcast:txt>** <br>
197
-
198
-
They are fully documented in the XMLNS document located [here](docs/1.0.md). Please see that file for full implementation details.
199
-
220
+
-**\<podcast:remoteItem>** <br>
221
+
-**\<podcast:podroll>** <br>
222
+
-**\<podcast:updateFrequency>** <br>
223
+
-**\<podcast:podping>** <br>
224
+
-**\<podcast:valueTimeSplit>** <br>
200
225
201
226
<br>
202
227
203
228
## Other Proposals
204
229
205
-
A list of the current proposed tags can be found in the issues section [here](https://github.com/Podcastindex-org/podcast-namespace/labels/proposal).
230
+
A list of the current proposed tags can be found in the issues
0 commit comments