키워드시스템구현

FrontPage|FindPage|TitleIndex|RecentChanges| UserPreferences P RSS
MoniWiki에서는 위키키워드토론에 나온 이야기를 다음과 같은 식의 키워드 시스템을 만들것입니다. 사실 위키키워드 시스템은 위키시스템 내부의 작은 위키입니다. 위키페이지는 의미없는 링크들이 들어있을 가능성이 높아서 위키 페이지간의 정보가 그다지 유용하지 못할 경우가 많지만, 위키키워드 시스템이 가지는 키워드간의 연결고리는 각각의 고리가 Informative하고, 기존에 가지고있는 기능으로 충분히 구현할 수 있습니다.

구현할 키워드 시스템

LocalKeywords페이지의 내용
책
과학
생명공학 과학
소설 책
진화 과학 생명공학 유전공학 생물학
생물학
한국어 한글
물리학
물리화학 "Physical Chemistry"
처음의 단어는 키워드, 그 뒤에 이어오는 여러 단어는 첫 키워드와 연관성이 있는 다른 키워드이다.
(위의 Aragon님이 제시한 것과 다르지 않습니다.)

이것은 마치, 첫번째 단어는 위키 페이지이고 나머지는 그 위키페이지가 가지는 링크라고 생각할 수 있다. 이런 식으로 생각하게되면 기존의 위키엔진이 쓰는 방식을 손쉽게 적용할 수 있고, 이렇게 되면 각 키워드간의 연관성을 가지고 모든 페이지의 분류를 할 수 있다. 연관성의 깊이가 한단계 두단계 떨어져있는 것도 보여줄 수 있다.

각 페이지의 키워드 지정

?action=keywords를 통해서 혹은, 위키페이지를 직접 편집해서 위키 페이지 맨 상단에 다음과 같은 식의 내용을 추가해주면 각 페이지의 키워드를 추가,삭제할 수 있습니다.

#keywords 생명공학,생물학,진화

토론

명시적으로 페이지 맨 하단에 분류딱지를 다는것은 위키 초보자로서는 힘든 일입니다. 그러나, #keywords는 페이지 내용으로 직접적으로 보이지 않고, 쉽게 추가할 수 있는 구조이며, 여러 연관성이 있는 키워드를 쉽게 추가할 수 있습니다. 그러므로 유지비용이 훨씬 줄어들 가능성이 높고, 더욱 유동적이 됩니다. --무신

제가 생각하는 방식과 비슷하게 구현해놓은 위키가 있네요. http://swik.net/

Please see also VisualTour


위의 예는 TourMacro를 이용한 링크 서치입니다.

(Fullsearch를 위해 구현한 indexer를 이용하게 되면 역링크도 위의 방식으로 구현할 수 있으며, "역링크링크를 모두 조합한 Tour맵"이 나오게 될 것입니다.

위키 키워드를 이와 같은 방식으로 구현하게 되면, 예를 들어 KeywordView같은 매크로를 구현하면,
  • 왼쪽은 키워드간의 연결관계, 및 깊이별 연관성을 가지는 다른 키워드
  • 맨 오른쪽은 현재 선택된 키워드와 연관성있는 페이지 목록
  • 각 키워드간의 연결관계를 통한 위키위키의 항해가 가능

진행 사항

모니위키 차기 버전 1.1.1에 이 기능을 구현하려고 목표하고 있습니다. 현재 대부분이 구현이 되었고, 이와 관련되어서 역링크기능이 덩달아 개선되고, FullSearch의 속도문제가 개선되었습니다.

가장 중요하면서도 풀어야할 과제는, 각 위키페이지를 어떻게 하면 쉽게 키워드를 부여하는가 하는 것인데, 기타 생각나는 것들을 써보면..
  • 키워드를 추가하기 쉽도록 한다.
  • 키워드를 제시하는 기능과 함께 사용하기 쉬운 인터페이스
  • LocalKeywords 작성 및 유지 문제

"; if (isset($options[timer])) print $menu.$banner."
".$options[timer]->Write()."
"; else print $menu.$banner."
".$timer; ?> # # ?>