mediawiki: получение страниц в заданной категории

используя mediawiki API, я могу перечислить страницы в данной категории. Например:

http://en.wikipedia.org/w/api.php?action=query&list=categorymembers&cmtitle=Category:Physics

возвращает:

<?xml version="1.0"?>
<api>
  <query>
    <categorymembers>
      <cm pageid="22939" ns="0" title="Physics" />
      <cm pageid="24489" ns="0" title="Outline of physics" />
      <cm pageid="1653925" ns="100" title="Portal:Physics" />
      <cm pageid="3445246" ns="0" title="Glossary of classical physics" />
      <cm pageid="22950086" ns="0" title="Britney Spears&#039; Guide to Semiconductor Physics" />
      <cm pageid="2129107" ns="14" title="Category:Fundamental physics concepts" />
      <cm pageid="4769321" ns="0" title="Timeline of fundamental physics discoveries" />
      <cm pageid="694942" ns="14" title="Category:Physicists" />
      <cm pageid="1198" ns="0" title="Acoustics" />
      <cm pageid="1913676" ns="14" title="Category:Applied and interdisciplinary physics" />
    </categorymembers>
  </query>
  <query-continue>
    <categorymembers cmcontinue="Atomic, molecular, and optical physics|" />
  </query-continue>
</api>

Теперь я хочу ограничить свой запрос только одним пространством имен MW. Я попытался использовать параметр cmnamespace. Но

http://en.wikipedia.org/w/api.php?action=query&list=categorymembers&cmtitle=Category:Physics&cmnamespace=0

возвращает тот же результат. Как мне использовать этот параметр пространства имен?


person Pierre    schedule 15.07.2009    source источник


Ответы (1)


Похоже на ошибку в коде, работающем в английской Википедии — ваш синтаксис отлично работает для меня в немного более старых версиях MediaWiki.

person Joshua C. Lerner    schedule 15.07.2009
comment
Спасибо, Джошуа, я отправил свой вопрос в список рассылки mw. Я подтвержу ваш ответ, если это ошибка (а она должна быть ошибкой :-)) - person Pierre; 15.07.2009