| Author | Dave Jarvis <email> |
|---|---|
| Date | 2014-08-16 20:05:40 GMT-0700 |
| Commit | 0040024dac4f2c42cd6bccaf3c134f6c561a7362 |
| Parent | 89dfe3d |
| \startsection[title={\WPintro{}}] | ||
| - {\it\WPname{}} is a system for moderated deliberation to achieve | ||
| - group consensus on \WPproposals{} by facilitating anonymous | ||
| + {\it\WPname{}} is a system for moderated deliberation to achieve | ||
| + group consensus on \WPproposals{} through anonymous | ||
| contributions and collaboration. | ||
| \stopsection | ||
| the system must be available for everyone to scrutinize. The | ||
| \href{source code}{https://bitbucket.org/djarvis/world-politics/} | ||
| - must also be open to analysis and development. | ||
| + must also be open for analysis and development. | ||
| \stopsection | ||
| \startsection[title={Voting}] | ||
| - Prior to voting, voters must communicate their intent to participate | ||
| - with a Registration Authority (RA). The RA provides a unique token | ||
| - upon verifying the voter's identity. The voter creates an account | ||
| - and votes using the token; the token is entered into the system. | ||
| + Prior to voting, voters must communicate their intent to | ||
| + participate with a Registration Authority (RA). The RA provides | ||
| + a unique token upon verifying the voter's identity. The token is | ||
| + entered into the system; the voter creates an account and votes | ||
| + using said token. | ||
| Goals for voting include correctness, verifiability, and anonymity. | ||
| \startsubsection[title=Verifiability] | ||
| - Election verifiability allows voters and observers to verify that | ||
| - the election outcome corresponds to the votes legitimately cast. | ||
| - Multiple types of verifiability can be distinguished, | ||
| + Verifiability allows voters and observers to verify that the | ||
| + outcomes correspond to the votes legitimately cast. Multiple | ||
| + verifiability types can be distinguished, | ||
| including:\cite[kremer@verify] | ||
| \stopitemize | ||
| - Verifying election results must be uncomplicated and expeditious. | ||
| + Verifying results must be simple and expeditious. | ||
| \stopsubsection | ||
| For political implementations, kiosks must be made available to | ||
| help anyone participate who could not otherwise use the system | ||
| - (by choice or due to disability). Account credentials supplied | ||
| - by the RA are required to use the system at a kiosk. | ||
| + (by choice or due to disability). RA-supplied account credentials | ||
| + are required to use the system at a kiosk. Participants without | ||
| + credentials must be given assistance to obtain them. | ||
| \stopsection | ||
| \startsection[title={Accessibility}] | ||
| All kiosk locations must have entrances and floorplans that | ||
| allow safe and unobstructed passage for wheelchairs and walkers. | ||
| \startsubsection[title={Location}] | ||
| - Kiosks should be centrally, and conveniently located. | ||
| + Kiosks should be centrally and conveniently located. | ||
| \stopsubsection | ||
| \startsubsection[title={Hours}] | ||
| Kiosks should be open 7:00am to 9:00pm on weekdays, and | ||
| - 10:00am to 4:00pm on weekends. | ||
| + 10:00am to 4:00pm on weekends. These office hours are subject | ||
| + to deliberation. | ||
| \stopsubsection | ||
| \stopsection | ||
| Assistants must be trained with knowledge of both the system and | ||
| privacy laws. All interactions must involve two assistants to | ||
| - uphold voting integrity. | ||
| + uphold integrity. | ||
| \stopsection | ||
| \stopchapter | ||
| \stopitem | ||
| \startitem | ||
| - \bold{Random duration.} Moderator duties are revoked after a | ||
| - random amount of time. | ||
| + \bold{Random duration.} Moderator abilities are revoked | ||
| + after a random amount of time. | ||
| \stopitem | ||
| \startitem |
| \startitemize | ||
| \startitem | ||
| - When a \WPproposal{} is added, accounts watching any of | ||
| - tags for that \WPproposal{} are notified. | ||
| + When a \WPproposal{} is added (and tagged), accounts | ||
| + watching its corresponding tag(s) are notified. | ||
| \stopitem | ||
| \startitem | ||
| - When a tag synonym is created, accounts watching the tag are | ||
| - notified. | ||
| + When a subtag is created, accounts watching the parent tag | ||
| + are notified. | ||
| \stopitem | ||
| \startitem | ||
| When an implication is drafted, accounts watching the | ||
| \WPproposal{} are notified. | ||
| + \stopitem | ||
| + \startitem | ||
| + When a refutation passes moderation, accounts watching the | ||
| + refuted implication are notified. | ||
| \stopitem | ||
| \stopitemize | ||
| \stopsection | ||
| \startsection[title={Flags}] | ||
| Most content can be flagged for moderator review. | ||
| \startsubsection[title={Timeout}] | ||
| - Users who | ||
| + Since flagging expends moderation resources, consecutive | ||
| + flagging by an account is constrained by a progressive | ||
| + geometric delay. The delay could be governed by: | ||
| + | ||
| + \startlinealignment[middle] | ||
| + \tfa{% | ||
| + $ delay = time \times penalty ^{(flags - 1)} $% | ||
| + } | ||
| + \stoplinealignment | ||
| + | ||
| + Where, | ||
| + | ||
| + \startitemize | ||
| + \startitem | ||
| + \bold{delay} is the amount of time to wait before | ||
| + allowing the user to flag another item; | ||
| + \stopitem | ||
| + \startitem | ||
| + \bold{time} is an amount of time in seconds; | ||
| + \stopitem | ||
| + \startitem | ||
| + \bold{penalty} is the geometric ratio; and | ||
| + \stopitem | ||
| + \startitem | ||
| + \bold{flags} is the number of flags requested within a | ||
| + given time period. | ||
| + \stopitem | ||
| + \stopitemize | ||
| \stopsubsection | ||
| + | ||
| + The maximum delay and number of flags that are permitted per day | ||
| + are up for deliberation. | ||
| \stopsection | ||
| \stopchapter |
| reputation could be awarded upon graduating from a course offered | ||
| by an accredited post-secondary institution; conversely, reputation | ||
| - could be penalized for disabarred lawyers. | ||
| + could be penalized for disbarred lawyers. | ||
| \stopsection | ||
| \startchapter[ | ||
| title={XML Source}, | ||
| - reference=cha:xml | ||
| + reference=cha:xml, | ||
| ] | ||
| \WPquote{Value your freedom or you will lose it, teaches history. | ||
| \quote{Don't bother us with politics,} respond those who don't want | ||
| to learn.} | ||
| {Richard Stallman}{Linux, GNU, and Freedom} | ||
| - \startsection[title=Overview] | ||
| + \startsection[title={Overview}] | ||
| The XML source code forms the basis for content presentation and | ||
| communications protocols. No XML Schema Definitions are developed, | ||
| yet. | ||
| \stopsection | ||
| - \startsection[title=Content and Presentation] | ||
| - Some XML files shown in this chapter include elements that | ||
| - mix content with presentation. The elements provide navigation | ||
| - controls. The offending elements are wrapped within a | ||
| - {\tt<related>} element as follows: | ||
| + \startsection[title={Content and Presentation}] | ||
| + Some XML files shown in this chapter include elements that mix | ||
| + content with presentation. The elements provide navigation | ||
| + controls. All offending elements are children of a | ||
| + {\tt<related>} element, such as: | ||
| \\ | ||
| \startXML | ||
| <related> | ||
| <discuss id="1" /> | ||
| <edit id="1" /> | ||
| <flag id="1" /> | ||
| </related> | ||
| \stopXML | ||
| - This unfortunate coupling can be eliminated a number of ways, each | ||
| - solution having its own advantages and disadvantages. These include: | ||
| - \startitemize | ||
| - \startitem | ||
| - \bold{JavaScript.} Inject custom JavaScript code to | ||
| - provide contextual navigation. This is similar to how the | ||
| - XSLT injects the custom CSS to change the presentation. | ||
| - \stopitem | ||
| - \startitem | ||
| - \bold{XML.} Include the page name as an attribute of the XML | ||
| - document's root element. The XSLT imports and calls a custom | ||
| - template based on the page name. | ||
| - \stopitem | ||
| - \startitem | ||
| - \bold{XSLT.} Use | ||
| - \href{two stylesheets}{http://maplus.xf.cz/xslt/} to pass | ||
| - parameters: | ||
| - \\ | ||
| - \startXSL | ||
| + This unfortunate coupling can be eliminated as described in the | ||
| + subsequent sections. | ||
| + | ||
| + \startsubsection[title={XML Decoupling}] | ||
| + Include the page name as an attribute of the XML document's | ||
| + root element. The XSLT imports and calls a custom template | ||
| + based on the page name. Arguably, this does not completely | ||
| + decouple the content from its presentation. | ||
| + \stopsubsection | ||
| + | ||
| + \startsubsection[title={JavaScript Decoupling}] | ||
| + Inject custom JavaScript code to provide contextual | ||
| + navigation. This is similar to how XSLT injects a | ||
| + cascading-stylesheet for presentation. | ||
| + \stopsubsection | ||
| + | ||
| + \startsubsection[title={XSLT Decoupling}] | ||
| + Use \href{two stylesheets}{http://maplus.xf.cz/xslt/} to pass | ||
| + parameters: | ||
| + \\ | ||
| + \startXSL | ||
| <?transform-stylesheet href="common.xsl"?> | ||
| <?xml-stylesheet type="text/xsl" href="parameters.xsl"?> | ||
| - \stopXSL | ||
| - | ||
| - The {\tt{parameters.xsl}} file generates an XHTML page with a | ||
| - script. The script loads the source XML and {\tt{common.xsl}} | ||
| - file, parses URL parameters, then performs the transformation. | ||
| - The output is written to its document, overwriting the helper | ||
| - XHTML with the transformed output. | ||
| - \stopitem | ||
| - \stopitemize | ||
| + \stopXSL | ||
| + | ||
| + The {\tt{parameters.xsl}} file generates an XHTML page with a | ||
| + script. The script loads the source XML and {\tt{common.xsl}} | ||
| + file, parses URL parameters, then performs the transformation. | ||
| + The output is written to its document, overwriting the helper | ||
| + XHTML with the transformed output. | ||
| + | ||
| + This is probably the most flexible client-side solution until | ||
| + parameter passing using XSLT 2.0 is available for all major | ||
| + browsers. | ||
| + \stopsubsection | ||
| + | ||
| + \startsubsection[title={Server-Side Decoupling}] | ||
| + Transforming the XML data into an XHTML document on the web | ||
| + server can fully decouple content from its presetation. | ||
| + \stopsubsection | ||
| \stopsection | ||
| Delta | 106 lines added, 59 lines removed, 47-line increase |
|---|