This is currently an Idea, started by Sam, there is a discussion below[go now].


A wiki link can catagorize itself with a type, the type defines the relationship:
[JohnDoe(Author)]
means "The WikiPage JohnDoe is my Author"[1]

Then the ReferringPagesPlugin can be limited to showing only Authors:

[{INSERT ReferringPagesPlugin WHERE max=50, maxwidth=20, type=Authors}]

[#1] An Author in this sense is different than the User who made the Wiki page. For example, a User may be entering into the wiki a letter or paper written by someone else.

Categorization#

This can also be used for making categorization more flexible:
[Ideas(Category)]
means "The WikiPage Ideas is my Category"

Now Ideas can use the ReferringPagesPlugin to show sub-categories:

[{INSERT ReferringPagesPlugin WHERE max=50, maxwidth=20, type=Category}]

This is more flexible than what is currently possible. A Category type page does not necessarily want to show all of the pages that refer to it. For example, you may want to say in some page Foo:

See [Ideas] for what people are thinking of for the future of [JSPWiki].
without Foo becoming a sub-category.

Voting#

This could also be used for voting on things. A user would place a link in their home page or wherever

[AnIdea(VoteFor)]
or [AnIdea(VoteAgainst)] then the votes are tabulated on AnIdea with:
Votes For: [{INSERT ReferringPagesPlugin WHERE type=VoteFor}] \\
Votes Against: [{INSERT ReferringPagesPlugin WHERE type=VoteAgainst}]

Link graphic#

It would be possible to extend JSPWiki so that it could specify a graphic to place after certain types of links. For example, a link to a Category might get an up-arrow graphic, or a link to an Author a little picture of a person.

This adds meta-deta to the linked-to page#

A page that get's linked to in this way get's meta-data. The links to it are also defining what they think the page is for. This allows for a new plugin which does "show me all pages that are thought to be Authors".

Convention - a LinkType is a page of it's own#

A good convention here would be to have the link type correspond to a WikiPage of the same name. So the wiki page 'Author' would explain what the link type 'Author' is meant to express.

Each of these pages, could in turn, by convention, contain a link like

[LinkType(Category)]
which means LinkType is my Category

Impact on current usage#

The impact on current wiki's is likely to be small, since ( and ) are not valid characters in a WikiName

KISS#

I think there needs to be some discussion on whether or not this violates the KISS principal. I think it is acceptable because:

  1. it is optional
  2. it is easily understood and expressed (suchandsuch is my suchandsuch)
  3. it can be used to solve a lot of problems, only a few are given above

[Discussion]#

Mm... I had to read this through several times but I think I am seeing what you're after. I agree, this could be quite useful.

I'll give this some more thought, but not immediately - my hands are full with JSPWikiAuthentication right now. :-) In the mean time, can people think of more use cases so that we can see what kind of other things could be done with this?

--JanneJalkanen, 15-Apr-03

Actually I already implemented something like this for my Ropemylly project. In that project I need a way to categorize and automatically list different types of pages (users, projects, etc). I implemented a quick hack of a form "first !!-tag in the page defines a parameter:value-pair". I think this addition would be very useful.

--Killer, 15-Apr-03

But this is slightly different (if I understand you correctly), as it describes the relationship between pages instead of attributes of the individual pages themselves.

Though, if anyone has been looking carefully at the current CVS head, he has noticed a quiet little addition: WikiPage.setAttribute() and WikiPage.getAttribute. Guess what they are going to be for :-).

--JanneJalkanen, 15-Apr-03.

You're right, I misread the suggestion. I don't really see the value of a purely link attribute. There may be some situations where even my project would benefit from that but I don't see it solving very many problems. If it isn't difficult to implement (or someone provides a patch for it) I don't see it violating KISS, though.

--Killer, 15-Apr-03

Hmmm... Anyone out there still thinking about this idea? I've got some interest in this idea. I'm thinking about the QueryPlugin and how you cna query the wiki's page and link structure, but sometimes that's a bit coarse. Hence the common conventions of "Category" and "Tag" pages. We use links to "Tag" pages and the primary relationships to query against. I could envision this idea expanding on that in a less intrusive way. --JohnV 02-Mar-2004

[John Doe|JohnDoe[Author]]

Maybe rather than () [] could be used, and the emitted HTML could have a superscript image that links to the LinkType's page directly. --JohnV

I am interested in the idea. What I am trying to do is to annotate links with Wiki page. In this way we could have Wiki as a meta-description tool for knowledge management. Unfortunately, I have problems with nesting operators in QueryPlugin (see my question on QueryPluginDiscussion page). --MTosic 07-Oct-2004

Add new attachment

Only authorized users are allowed to upload new attachments.
« This page (revision-11) was last changed on 26-Sep-2007 23:18 by JanneJalkanen