Bob Paige wrote:
Christophe,
What if you wrote a page filter that included the semantic content? Tying
this back to the Alias/Macro discussion, the content to be inserted could be
in other wiki pages named after the different type, i.e. WhitePaper-Header,
WhitePaper-Footer, Event-Header, Event-Footer, etc.
The catch would be to identify what 'type' of page is being processed.
The simplest solution is to base in on the page name. For example,
whitepapers could always have a suffix of 'WhitePaper', i.e. 'Agricultural
WhitePaper'.
I've always found attempts at overloading use of the page name to be
fraught with a lot of issues, not the least of which is to force page
names sometimes into very ugly patterns just to conform to a specific
need, then not fit a different need.
One of the major benefits of faceted classification in library systems
is to mitigate the fragility of enumerated classification systems, and
while it's not using a controlled vocabulary, the WikiTag [1] function-
ality (part of the CeryleWikiPlugins) does permit a separation of what
you're calling "semantic content" from the page name.
[{Tag WhitePaper }]
Given you can query the TagManager [2] directly with a page to see if
it has a tag (using a direct match or a regex, see [3]), it's possible
to obtain a list of pages containing a tag, which could be used as
input into another plugin (e.g., the IfPlugin) for further processing.
A more complicated solution would be to add arbitrary meta-data to the page
and have the filter choose based on this meta-data. I see some discussion of
metadata here (http://www.jspwiki.org/wiki/IdeasMetadata). Personally, I
think the CSS approach makes the most sense.
If that arbitrary metadata were in the form of tags or say, a Dublin
Core subject (keyword) list, yes. I don't understand the idea of using
a stylesheet (presentation) approach to embedding meaning (semantics)
that can be "reasoned" upon.
On IdeasMetadata my note from 2005 might indicate some of the work I've
been doing since then in developing an "Assertion Framework" that
incorporates the TagPlugin in a more complicated system that permits
assertions of the form
[{Assert [BassettHound] KindOf [Dog] }]
with a (relatively) simple inference engine permitting "answers" to
queries. I'll be presenting a paper on this at Balisage 2008 in
Montreal this August.
Murray
----
PS. there is a known bug in the TagPlugin: the 'AND' logical operator
is currently non-functional and will be fixed in an upcoming release.
[1] WikiTags
http://www.altheim.com/ceryle/wiki/Wiki.jsp?page=WikiTags
[2] TagManager
http://www.altheim.com/ceryle/wiki/Wiki.jsp?page=TagManager
[3] javadocs, see hasTag(String pagename, String tag)
http://www.altheim.com/ceryle/api/index.html?org/ceryle/wiki/plugin/tag/TagManager.html
...........................................................................
Murray Altheim <murray07 at altheim.com> === = =
http://www.altheim.com/murray/ = = ===
SGML Grease Monkey, Banjo Player, Wantanabe Zen Monk = = = =
Boundless wind and moon - the eye within eyes,
Inexhaustible heaven and earth - the light beyond light,
The willow dark, the flower bright - ten thousand houses,
Knock at any door - there's one who will respond.
-- The Blue Cliff Record