From: Benjamin P. <bjp...@gm...> - 2014-05-16 02:48:07
|
I have a Semantic MediaWiki installation <http://ropewiki.com/> that has a large number of Canyon pages<http://ropewiki.com/index.php/Category:Canyons>, where each of those pages describes a different hiking trip. These pages<http://ropewiki.com/index.php/Havasu_Canyon>have a number of properties on them, one of them being Quality (how "good" of a trip it is). Currently, editors can edit the wikitext to change this property. I would like make a feature that allows people to vote on what Quality they think a particular Canyon is, and then the overall Quality (based on the votes received) would be displayed on the page. I can think of a few different ways this might be done, but I was hoping to get some advice from people who are really familiar with Semantic MediaWiki for which method is likely to produce the best results with the least effort. == Single "Voting data" wiki page == I could make an extension that automatically edits a particular wiki page (perhaps "Voting data") in response to a click. It would read the existing content, add the new vote, recalculate ratings, generate semantic properties with those ratings, and save the new page version. I'm not sure if this is possible, but it seems like the best solution if it is. Although, there might be a problem eventually if, say, 300 people each vote on 10 canyons, then my page size is going to be like 60k (which may cause performance issues?) == Stand-alone widget == I could make an extension that injects custom PHP that talks to an entirely separate (non-MediaWiki) database to store and report the voting data. This same approach would work on any website, even if it wasn't a MediaWiki install. The down side of this approach is that I have no idea how I would (could?) integrate the voting results into a semantic search. Can semantic data be stored stably in the SMW database without being defined in any wikitext? == Per-page voting data == I could maybe make an extension that automatically edits the current page and injects an additional vote line so all the quality votes for a given page are stored on that page. But, this seems like the most difficult option, and there would be a bunch of voting data junk in the wikitext content. Any suggestions? Thanks! --Ben |
From: Peter B. <pet...@kc...> - 2014-05-16 05:33:14
|
I'd certainly find such a thing very valuable - I'd use it to allow people to approve pages, the pages need three levels of approval, so this would make it much easier for it to be done. I wouldn't make it as specific as just a voting system - it'd be good if there was room to make a short comment or to link a file, without needing to edit the page itself. Your last option sounds the best. I think, though, that you can do this with a form at the moment - it's just not as clean and easy is it could be - for example, my question here: http://www.mediawiki.org/wiki/Extension_talk:Semantic_Forms#Alternative_icons_for_radiobuttons_-_for_a_checklist._Any_suggestions_of_how_to_achieve_this.3F It's the same requirement, really, a way of enabling interaction directly on the page, without a need for users to understand wiki syntax or to move to another page, or to have a pop-up On 16 May 2014 04:47, Benjamin Pelletier <bjp...@gm...> wrote: > I have a Semantic MediaWiki installation that has a large number of Canyon > pages, where each of those pages describes a different hiking trip. These > pages have a number of properties on them, one of them being Quality (how > "good" of a trip it is). Currently, editors can edit the wikitext to change > this property. I would like make a feature that allows people to vote on > what Quality they think a particular Canyon is, and then the overall Quality > (based on the votes received) would be displayed on the page. I can think > of a few different ways this might be done, but I was hoping to get some > advice from people who are really familiar with Semantic MediaWiki for which > method is likely to produce the best results with the least effort. > > == Single "Voting data" wiki page == > I could make an extension that automatically edits a particular wiki page > (perhaps "Voting data") in response to a click. It would read the existing > content, add the new vote, recalculate ratings, generate semantic properties > with those ratings, and save the new page version. I'm not sure if this is > possible, but it seems like the best solution if it is. Although, there > might be a problem eventually if, say, 300 people each vote on 10 canyons, > then my page size is going to be like 60k (which may cause performance > issues?) > > == Stand-alone widget == > I could make an extension that injects custom PHP that talks to an entirely > separate (non-MediaWiki) database to store and report the voting data. This > same approach would work on any website, even if it wasn't a MediaWiki > install. The down side of this approach is that I have no idea how I would > (could?) integrate the voting results into a semantic search. Can semantic > data be stored stably in the SMW database without being defined in any > wikitext? > > == Per-page voting data == > I could maybe make an extension that automatically edits the current page > and injects an additional vote line so all the quality votes for a given > page are stored on that page. But, this seems like the most difficult > option, and there would be a bunch of voting data junk in the wikitext > content. > > Any suggestions? > > Thanks! > --Ben > > > > ------------------------------------------------------------------------------ > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform > available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > _______________________________________________ > Semediawiki-devel mailing list > Sem...@li... > https://lists.sourceforge.net/lists/listinfo/semediawiki-devel > |
From: John M. <jmc...@hy...> - 2014-05-16 06:32:21
|
Voting is pretty key by my reading - consensus ratings are the property values of the Canyon page. Sounds most like a partial form, for adding/maintaining a user's vote stored as a subobject. Needs to read some ACL stored such as in HaloACL for user list. Should not worry about 300 template calls -- convert the template into PHP parser funciton if poor performance These votes are surely metadata, so maybe use dublin core properties if possible within subobjects sounds like a fun project - good luck!/john On 5/15/2014 10:32 PM, Peter Brooks wrote: > I'd certainly find such a thing very valuable - I'd use it to allow > people to approve pages, the pages need three levels of approval, so > this would make it much easier for it to be done. > > I wouldn't make it as specific as just a voting system - it'd be good > if there was room to make a short comment or to link a file, without > needing to edit the page itself. > > Your last option sounds the best. I think, though, that you can do > this with a form at the moment - it's just not as clean and easy is it > could be - for example, my question here: > > http://www.mediawiki.org/wiki/Extension_talk:Semantic_Forms#Alternative_icons_for_radiobuttons_-_for_a_checklist._Any_suggestions_of_how_to_achieve_this.3F > > It's the same requirement, really, a way of enabling interaction > directly on the page, without a need for users to understand wiki > syntax or to move to another page, or to have a pop-up > > On 16 May 2014 04:47, Benjamin Pelletier <bjp...@gm...> wrote: >> I have a Semantic MediaWiki installation that has a large number of Canyon >> pages, where each of those pages describes a different hiking trip. These >> pages have a number of properties on them, one of them being Quality (how >> "good" of a trip it is). Currently, editors can edit the wikitext to change >> this property. I would like make a feature that allows people to vote on >> what Quality they think a particular Canyon is, and then the overall Quality >> (based on the votes received) would be displayed on the page. I can think >> of a few different ways this might be done, but I was hoping to get some >> advice from people who are really familiar with Semantic MediaWiki for which >> method is likely to produce the best results with the least effort. >> >> == Single "Voting data" wiki page == >> I could make an extension that automatically edits a particular wiki page >> (perhaps "Voting data") in response to a click. It would read the existing >> content, add the new vote, recalculate ratings, generate semantic properties >> with those ratings, and save the new page version. I'm not sure if this is >> possible, but it seems like the best solution if it is. Although, there >> might be a problem eventually if, say, 300 people each vote on 10 canyons, >> then my page size is going to be like 60k (which may cause performance >> issues?) >> >> == Stand-alone widget == >> I could make an extension that injects custom PHP that talks to an entirely >> separate (non-MediaWiki) database to store and report the voting data. This >> same approach would work on any website, even if it wasn't a MediaWiki >> install. The down side of this approach is that I have no idea how I would >> (could?) integrate the voting results into a semantic search. Can semantic >> data be stored stably in the SMW database without being defined in any >> wikitext? >> >> == Per-page voting data == >> I could maybe make an extension that automatically edits the current page >> and injects an additional vote line so all the quality votes for a given >> page are stored on that page. But, this seems like the most difficult >> option, and there would be a bunch of voting data junk in the wikitext >> content. >> >> Any suggestions? >> >> Thanks! >> --Ben >> >> >> >> ------------------------------------------------------------------------------ >> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE >> Instantly run your Selenium tests across 300+ browser/OS combos. >> Get unparalleled scalability from the best Selenium testing platform >> available >> Simple to use. Nothing to install. Get started now for free." >> http://p.sf.net/sfu/SauceLabs >> _______________________________________________ >> Semediawiki-devel mailing list >> Sem...@li... >> https://lists.sourceforge.net/lists/listinfo/semediawiki-devel >> > ------------------------------------------------------------------------------ > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > _______________________________________________ > Semediawiki-devel mailing list > Sem...@li... > https://lists.sourceforge.net/lists/listinfo/semediawiki-devel |
From: planetenxin <pla...@we...> - 2014-05-16 13:52:53
|
Hi Ben, are you aware of this discussion: https://semantic-mediawiki.org/wiki/User:Yury_Katkov/s13n_stands_for_semantification /Alexander Am 16.05.2014 04:47, schrieb Benjamin Pelletier: > I have a Semantic MediaWiki installation <http://ropewiki.com/> that has > a large number of Canyon pages > <http://ropewiki.com/index.php/Category:Canyons>, where each of those > pages describes a different hiking trip. These pages > <http://ropewiki.com/index.php/Havasu_Canyon> have a number of > properties on them, one of them being Quality (how "good" of a trip it > is). Currently, editors can edit the wikitext to change this property. > I would like make a feature that allows people to vote on what Quality > they think a particular Canyon is, and then the overall Quality (based > on the votes received) would be displayed on the page. I can think of a > few different ways this might be done, but I was hoping to get some > advice from people who are really familiar with Semantic MediaWiki for > which method is likely to produce the best results with the least effort. > > == Single "Voting data" wiki page == > I could make an extension that automatically edits a particular wiki > page (perhaps "Voting data") in response to a click. It would read the > existing content, add the new vote, recalculate ratings, generate > semantic properties with those ratings, and save the new page version. > I'm not sure if this is possible, but it seems like the best solution > if it is. Although, there might be a problem eventually if, say, 300 > people each vote on 10 canyons, then my page size is going to be like > 60k (which may cause performance issues?) > > == Stand-alone widget == > I could make an extension that injects custom PHP that talks to an > entirely separate (non-MediaWiki) database to store and report the > voting data. This same approach would work on any website, even if it > wasn't a MediaWiki install. The down side of this approach is that I > have no idea how I would (could?) integrate the voting results into a > semantic search. Can semantic data be stored stably in the SMW database > without being defined in any wikitext? > > == Per-page voting data == > I could maybe make an extension that automatically edits the current > page and injects an additional vote line so all the quality votes for a > given page are stored on that page. But, this seems like the most > difficult option, and there would be a bunch of voting data junk in the > wikitext content. > > Any suggestions? > > Thanks! > --Ben > > > > > ------------------------------------------------------------------------------ > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > > > > _______________________________________________ > Semediawiki-devel mailing list > Sem...@li... > https://lists.sourceforge.net/lists/listinfo/semediawiki-devel -- ________________________________________________ semantic::apps by gesinn.it Business Applications with Semantic Mediawiki. http://semantic-apps.com |
From: Yaron K. <ya...@wi...> - 2014-05-16 15:41:29
|
Hi Ben, It's not clear to me that this would require any development work. It seems to me that you could have an approach like the following: - Have a separate page for each vote; it could be structured as a subpage of the user page, or a subpage of the canyon page, or something else - so it could be called "User:Joe User/Big Canyon rating", or "Big Canyon/Joe User rating", or "Rating of Joe User for Big Canyon" or some such. - Each such page would hold a template with a single field, representing the rating number. The user and canyon wouldn't have to be stored on the page, because the template could extract those from the page title. The template would store all three values (canyon, user, rating) as semantic values. - On each canyon page, the template would display the average rating for that canyon, using a semantic query (with the "average" format), and might also show the number of votes (using "count"). It would then have a link to a popup form, to let the current user either submit a new rating (if they haven't voted already) or change their rating. You could do that using #formlink, plus the {{CURRENTUSER}} variable from the MyVariables extension. - The ratings input within the popup form, and the average rating display, could both be done using the familiar "stars" interface, using the Semantic Rating extension (https://www.mediawiki.org/wiki/Extension:Semantic_Rating) This whole thing is somewhat of a hack (a new page for every rating), but maybe not that bad. Of course, it means that users can change each others' ratings, which is not ideal, but then again malicious users can cause all sorts of mischief within a wiki, if they want to - there are already ways of dealing with that. -Yaron On Thu, May 15, 2014 at 10:47 PM, Benjamin Pelletier <bjp...@gm...>wrote: > I have a Semantic MediaWiki installation <http://ropewiki.com/> that has > a large number of Canyon pages<http://ropewiki.com/index.php/Category:Canyons>, > where each of those pages describes a different hiking trip. These pages<http://ropewiki.com/index.php/Havasu_Canyon>have a number of properties on them, one of them being Quality (how "good" > of a trip it is). Currently, editors can edit the wikitext to change this > property. I would like make a feature that allows people to vote on what > Quality they think a particular Canyon is, and then the overall Quality > (based on the votes received) would be displayed on the page. I can think > of a few different ways this might be done, but I was hoping to get some > advice from people who are really familiar with Semantic MediaWiki for > which method is likely to produce the best results with the least effort. > > == Single "Voting data" wiki page == > I could make an extension that automatically edits a particular wiki page > (perhaps "Voting data") in response to a click. It would read the existing > content, add the new vote, recalculate ratings, generate semantic > properties with those ratings, and save the new page version. I'm not sure > if this is possible, but it seems like the best solution if it is. > Although, there might be a problem eventually if, say, 300 people each > vote on 10 canyons, then my page size is going to be like 60k (which may > cause performance issues?) > > == Stand-alone widget == > I could make an extension that injects custom PHP that talks to an > entirely separate (non-MediaWiki) database to store and report the voting > data. This same approach would work on any website, even if it wasn't a > MediaWiki install. The down side of this approach is that I have no idea > how I would (could?) integrate the voting results into a semantic search. > Can semantic data be stored stably in the SMW database without being > defined in any wikitext? > > == Per-page voting data == > I could maybe make an extension that automatically edits the current page > and injects an additional vote line so all the quality votes for a given > page are stored on that page. But, this seems like the most difficult > option, and there would be a bunch of voting data junk in the wikitext > content. > > Any suggestions? > > Thanks! > --Ben > > > > > ------------------------------------------------------------------------------ > "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE > Instantly run your Selenium tests across 300+ browser/OS combos. > Get unparalleled scalability from the best Selenium testing platform > available > Simple to use. Nothing to install. Get started now for free." > http://p.sf.net/sfu/SauceLabs > _______________________________________________ > Semediawiki-devel mailing list > Sem...@li... > https://lists.sourceforge.net/lists/listinfo/semediawiki-devel > > -- WikiWorks · MediaWiki Consulting · http://wikiworks.com |
From: Benjamin P. <bjp...@gm...> - 2014-05-19 16:30:58
|
Thanks Yaron, that sounds great to me; not sure why I didn't think of simply adding a namespace for voting pages. That merges the best aspects of my first and third options. The things I didn't know before were how to use a popup form (I'll look up #formlink), and I probably would have run into the {{CURRENTUSER}} thing. Argbert, it sounds like I'll end up making something similar to SemanticComments, but just through existing SMW capabilities rather than writing a new extension. Thanks for the reference :) Thanks again! --Ben On Fri, May 16, 2014 at 8:41 AM, Yaron Koren <ya...@wi...> wrote: > Hi Ben, > > It's not clear to me that this would require any development work. It > seems to me that you could have an approach like the following: > > - Have a separate page for each vote; it could be structured as a subpage > of the user page, or a subpage of the canyon page, or something else - so > it could be called "User:Joe User/Big Canyon rating", or "Big Canyon/Joe > User rating", or "Rating of Joe User for Big Canyon" or some such. > > - Each such page would hold a template with a single field, representing > the rating number. The user and canyon wouldn't have to be stored on the > page, because the template could extract those from the page title. The > template would store all three values (canyon, user, rating) as semantic > values. > > - On each canyon page, the template would display the average rating for > that canyon, using a semantic query (with the "average" format), and might > also show the number of votes (using "count"). It would then have a link to > a popup form, to let the current user either submit a new rating (if they > haven't voted already) or change their rating. You could do that using > #formlink, plus the {{CURRENTUSER}} variable from the MyVariables extension. > > - The ratings input within the popup form, and the average rating display, > could both be done using the familiar "stars" interface, using the Semantic > Rating extension (https://www.mediawiki.org/wiki/Extension:Semantic_Rating > ) > > This whole thing is somewhat of a hack (a new page for every rating), but > maybe not that bad. Of course, it means that users can change each others' > ratings, which is not ideal, but then again malicious users can cause all > sorts of mischief within a wiki, if they want to - there are already ways > of dealing with that. > > -Yaron > > > On Thu, May 15, 2014 at 10:47 PM, Benjamin Pelletier <bjp...@gm... > > wrote: > >> I have a Semantic MediaWiki installation <http://ropewiki.com/> that has >> a large number of Canyon pages<http://ropewiki.com/index.php/Category:Canyons>, >> where each of those pages describes a different hiking trip. These pages<http://ropewiki.com/index.php/Havasu_Canyon>have a number of properties on them, one of them being Quality (how "good" >> of a trip it is). Currently, editors can edit the wikitext to change this >> property. I would like make a feature that allows people to vote on what >> Quality they think a particular Canyon is, and then the overall Quality >> (based on the votes received) would be displayed on the page. I can think >> of a few different ways this might be done, but I was hoping to get some >> advice from people who are really familiar with Semantic MediaWiki for >> which method is likely to produce the best results with the least effort. >> >> == Single "Voting data" wiki page == >> I could make an extension that automatically edits a particular wiki page >> (perhaps "Voting data") in response to a click. It would read the existing >> content, add the new vote, recalculate ratings, generate semantic >> properties with those ratings, and save the new page version. I'm not sure >> if this is possible, but it seems like the best solution if it is. >> Although, there might be a problem eventually if, say, 300 people each >> vote on 10 canyons, then my page size is going to be like 60k (which may >> cause performance issues?) >> >> == Stand-alone widget == >> I could make an extension that injects custom PHP that talks to an >> entirely separate (non-MediaWiki) database to store and report the voting >> data. This same approach would work on any website, even if it wasn't a >> MediaWiki install. The down side of this approach is that I have no idea >> how I would (could?) integrate the voting results into a semantic search. >> Can semantic data be stored stably in the SMW database without being >> defined in any wikitext? >> >> == Per-page voting data == >> I could maybe make an extension that automatically edits the current page >> and injects an additional vote line so all the quality votes for a given >> page are stored on that page. But, this seems like the most difficult >> option, and there would be a bunch of voting data junk in the wikitext >> content. >> >> Any suggestions? >> >> Thanks! >> --Ben >> >> >> >> >> ------------------------------------------------------------------------------ >> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE >> Instantly run your Selenium tests across 300+ browser/OS combos. >> Get unparalleled scalability from the best Selenium testing platform >> available >> Simple to use. Nothing to install. Get started now for free." >> http://p.sf.net/sfu/SauceLabs >> _______________________________________________ >> Semediawiki-devel mailing list >> Sem...@li... >> https://lists.sourceforge.net/lists/listinfo/semediawiki-devel >> >> > > > -- > WikiWorks · MediaWiki Consulting · http://wikiworks.com > |
From: Argbert <ar...@gm...> - 2014-05-16 21:03:42
|
Hi, I might be wrong, but I think http://www.mediawiki.org/wiki/Extension:SemanticComments stores comments and ratings on separate pages in another namespace – this could help you out. Works on my SMW 1.8, but I am not sure whether I had to do little adjustments for the version. Kind regards Argi Von: Benjamin Pelletier [mailto:bjp...@gm...] Gesendet: Freitag, 16. Mai 2014 04:48 An: Semantic MediaWiki developers Betreff: [SMW-devel] Rating system I have a Semantic MediaWiki installation <http://ropewiki.com/> that has a large number of Canyon pages <http://ropewiki.com/index.php/Category:Canyons> , where each of those pages describes a different hiking trip. These pages <http://ropewiki.com/index.php/Havasu_Canyon> have a number of properties on them, one of them being Quality (how "good" of a trip it is). Currently, editors can edit the wikitext to change this property. I would like make a feature that allows people to vote on what Quality they think a particular Canyon is, and then the overall Quality (based on the votes received) would be displayed on the page. I can think of a few different ways this might be done, but I was hoping to get some advice from people who are really familiar with Semantic MediaWiki for which method is likely to produce the best results with the least effort. == Single "Voting data" wiki page == I could make an extension that automatically edits a particular wiki page (perhaps "Voting data") in response to a click. It would read the existing content, add the new vote, recalculate ratings, generate semantic properties with those ratings, and save the new page version. I'm not sure if this is possible, but it seems like the best solution if it is. Although, there might be a problem eventually if, say, 300 people each vote on 10 canyons, then my page size is going to be like 60k (which may cause performance issues?) == Stand-alone widget == I could make an extension that injects custom PHP that talks to an entirely separate (non-MediaWiki) database to store and report the voting data. This same approach would work on any website, even if it wasn't a MediaWiki install. The down side of this approach is that I have no idea how I would (could?) integrate the voting results into a semantic search. Can semantic data be stored stably in the SMW database without being defined in any wikitext? == Per-page voting data == I could maybe make an extension that automatically edits the current page and injects an additional vote line so all the quality votes for a given page are stored on that page. But, this seems like the most difficult option, and there would be a bunch of voting data junk in the wikitext content. Any suggestions? Thanks! --Ben |