@@ -281,6 +281,40 @@ In these cases, features should be designed such that it is possible for
281
281
code to gracefully fail or be polyfilled.
282
282
See [[#feature-detect]] .
283
283
284
+ <h3 id=new-features>Add new capabilities with care</h3>
285
+
286
+ Add new capabilities to the web with consideration of existing functionality and content.
287
+
288
+ The Web includes many extension points that allow for additions;
289
+ see for example [[HTML#extensibility]] .
290
+
291
+ Before adding items, consider integration with existing, similar capabilities.
292
+ If this leads to a preferred design approach that cannot be implemented by only adding items,
293
+ it might still be possible; see [[#removing-features]] .
294
+
295
+ Do not assume that a change or removal is impossible without first checking.
296
+ Before adding items, consider integration with existing, similar capabilities.
297
+ If this leads to a preferred design approach that cannot be implemented by only adding items,
298
+ it might still be possible; see [[#removing-features]] .
299
+ Do not assume that a change or removal is impossible without first checking.
300
+
301
+ <h3 id=removing-features>Remove or change capabilities only once you understand existing usage</h3>
302
+
303
+ Prioritize compatibility with existing content when removing or changing functionality.
304
+
305
+ Once a significant amount of content has come to depend on a particular behavior,
306
+ removing or changing that behavior is discouraged.
307
+ Removing or changing features and capabilities is possible,
308
+ but it first requires that the nature and scope of the impact on existing content
309
+ is well understood.
310
+ This might require research into how features are used by existing content.
311
+
312
+ The obligation to understand existing usage also applies to any features that content relies upon.
313
+ This includes vendor-proprietary features and
314
+ behavior that might be considered implementation bugs.
315
+ Web features are not solely defined in specifications;
316
+ they are also defined by how content uses those features.
317
+
284
318
<h3 id="leave-the-web-better">Leave the web better than you found it</h3>
285
319
286
320
As you add new capabilities to the web platform, do so in a way that improves
0 commit comments