I think a "wiki" is a collection of articles and documents, a document itself being a collection of articles. (Incidentally I prefer "story" to "article" so as to distinguish from grammatical and other uses of "article" and it gives a clear path to tie into emerging argumentation models.)
A wiki "story" then is composed of one or more pages. I then look to XSL for the definition of a page, which divides rendition into repeatable header/footer areas & a body area. (In this regard, you can use "heading" or "caption" in the manner that you now seem to use for "header"). A "subpage" is another matter altogether, for its existence is functionally dependent on that of a superordinate page; a subpage often has overflow content from its superpage but it could be an earlier version of the superpage; in other words, a subpage contains material that is effectively attached to another page.
A wiki page is a container for content which, because a single story can be spread across multiple pages, means a single page may contain only part of a story. Page content can be of many varieties, e.g., paragraphs, tables, and lists. Many documents contain titled and sequentially-numbered sets of paragraphs & subsections which we both would call a "section" (as XHTML 2.0 does).
A document is often divided into front-matter, body, and back-matter; I don't believe that a story is similarly divided. Thus the body of a page for a story within a document may be the container for content that is part of one of these three document divisions.
Some of these concepts are perhaps better represented in a 'semantic page structure' as follows:
legend: | X::Y where Y is-a X | X:Y where X has-a Y | ?=zero or one *=zero or many +=one or many |
wiki : document* story* document : abstract? story+ division+ division :: frontmatter | bodymatter | backmatter division : story+ block* story :: abstract story : page+ page : layout* subpage* ordinal layout :: header | body | footer | sidebar layout : caption? block* column* ordinal block :: division | section | line | heading | graf | list | hr | table | preblock| bquote block : block* flow* ordinal section : heading? graf* footnote* comment* heading : seq_label title seq_label : seq_label* sep designation designation : prefix? (cardinal* | letter*) suffix? list :: ul | ol | dl | ilist list : list_item list_item :: ordered_ | unordered_ list_item : heading? block* flow* ordinal ordered_ : cardinal table : topcaption? theader? tbody* tfooter? bottomcaption? ordinal flow :: link | em | strong | img | br | ... styled_ | annotated_ | inserted_ | struck_ | imported_ | calculated_ | footnoted_ | redacted_ | queried | ... flow : flow* pcdata
-- John McClure
Inline nowiki and monospace can be totally distinct in Creole (triple-braces for nowiki and double-sharps for monospace).
-- YvesPiguet, 2008-Sep-16