Preliminary notes:

There are types of namespaces: those for extra content, usually wiki specific, and those created by extensions for a specialized purpose.


  • Register in a similar hook to schema updates
  • unique identifier is the contentmodel.
    • I'm assuming that all namespaces created by extensions should be using a custom contentmodel...are there any where this isn't the case? (aside from legacy reasons)
  • Have a database table that maps contentmodel --> numerical id
    • I guess we should just "deprecate" numerical ids, but they're way too ingrained into MW to be removed outright...
    • In any case, the numerical ids are wiki-install specific rather than extension-specific
  • Associated namespaces: Don't require every subject namespace to have a talk namespace (leads to the stupid "Forum talk" namespace on Uncy), and allow for multiple "associated" namespaces for the subject namespace, see Requests_for_comment/Associated_namespaces for more info...

Extra content:

  • Provide a namespace manager to add new namespaces, and configure things about them (protection, show up in search, etc)
    • See Skizzerz's thing about this

blah blah blah