]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/todo/tag_pagespec_function.mdwn
How signinview handles the goto leak
[ikiwiki.git] / doc / todo / tag_pagespec_function.mdwn
index 060368179342bfae1846080706ffe81e01900948..3604a83d9a7504d63d5771cb0e743b562151763d 100644 (file)
@@ -12,10 +12,17 @@ match tagged pages independent of whatever the tagbase is set to.
 > 
 > The only problem I see is it could be confusing if `tag(foo)` matched
 > a page that just linked to the tag via a wikilink, w/o actually tagging it.
->
+
+>> (My [[!taglink wishlist]].) Yes, this is confusing and not nice. I observed this misbehavior, because I wanted to match two different lists of pages (only tagged or linked in any way), but it didn't work. Would this feature require a complex patch? --Ivan Z.
+
+>>> If you link to a page 'foo' which happens to be a tag then the page you link from will turn up in the set of pages returned by tagged(foo). The only way to avoid this would be for the tag plugin to not use wikilinks as an implementation method. That itself would not be too hard to do, but there might be people relying on the older behaviour. A better alternative might be to have a "tag2" plugin (or a better name) which implements tagging entirely separately. -- [[Jon]]
+>>>> I see; at least, your response is encouraging (that it's not hard). I could even find some work that can give similar features: [[structured page data#another_kind_of_links]] -- they envisage a pagespec like `data_link(Depends on,bugs/bugA)`, thus a "separation of dependencies between bugs from arbitrary links".
+
+>>>> Indeed, having many relations that can be used in the formulas defining classes of objects (like pagespecs here) is a commonly imagined thing, so this would be a nice feature. (I'll be trying out the patches there first, probably.) In general, extending the language of pagespecs to something more powerful (like [[!wikipedia description logics]]) seems to be a nice possible feature. I saw more discussions of ideas [[!taglink about_the_extension_of_the_pagespec_language_in_the_direction_similar_to_description_logics|pagespec_in_DL_style]] somewhere else here. --Ivan Z.
+
 > One other thing, perhaps it should be called `tagged()`? --[[Joey]] 
 
-[[!tag patch]]
+[[!tag patch done]]
 
     --- a/plugins/IkiWiki/Plugin/tag.pm        2009-02-16 11:30:11.000000000 +0000
     +++ b/plugins/IkiWiki/Plugin/tag.pm        2009-02-17 15:40:03.000000000 +0000