SMWCon Fall 2014/Create camp

< SMWCon Fall 2014
SMWCon Fall 2014SMWCon Fall 2014/Create camp

What is it about[edit]

The create camp / hackathon / editathlon / hackay or whatever you want to call ist is a free event (you can attend wheter or not you are registered for the conference. The idea is to get people to gether to do one or more of the following things

  • write code
  • write documentation
  • do testing / bughunting
  • configure wikis
  • edit articles
  • brainstorm for marketing / community ideas
  • ...

Ideas for the tasks will be collected here (see below) as well as on the SMW Conference. The concrete tasks to be addressed will be discussed at the beginning of the hackday.

Location and Schedule[edit]

LOCATON CHANGED!! The create camp on Saturday, October 4th will be hosted at KDZ just across the street of the conference location.


  • 9:30 - 10:00: Arrival, morning coffee, set up
  • 10:00 - 10:30: Exchangin ideas for the day: formulating challenges
  • 10:30 - 12:30: creating stuff
  • 12:30 - 13:00: current status
  • 13:00 - 13:30: lunch break (pizza)
  • 13:30 - 16:00: creating stuff
  • 16:00 - 17:00: round up of achievements


Please feel free to add your name to this list to show your interest. When you register for the conference, you can check if you are intersted in this free event. If you are on Meetup, you can also sign up there:

  1. Bernhard Krabina, KDZ - Centre for Pubic Administration Research
  2. Joachim King,
  3. Dave Brennan, Steria UK Ltd
  4. Toni Hermoso
  5. James Montalvo, NASA
  6. Daren Welsh, NASA
  7. Ali King
  8. Robert Ulrich (
  9. This could be you. :)

20 Participiants of the SMWCon registered for the CreateCamp as well. We also have a Meetup Group:

Note: content below auto-generated from Google Doc using wikify.


  1. SMW Hooks documentation and examples
  2. Test LUA-support for SMW (works, but is not directly related to SMW)
  3. Case-insensitivity for SMW queries
  4. Bidirectional transclusion labels: to aid in reuse of content throughout the wiki, provide labels where content is transcluded from. This makes it easy to see where content is coming from. Also need method to show where content on a page gets transcluded to.
  5. Provide user icons for Extension:SemanticComments (partly done, but there are some more things left to do)
  6. document good usable skins on
  7. Use Extension:WatchAnalytics to direct users to articles they may be interested in
  8. Sync data between SMW websites: See Extension:DSMW.
  9. MABS (Multi-lateral Asynchronous Bilateral Synchronization): Method to allow people to disconnect from a wiki, but bring a copy into the field and while in the field make edits that can be synced back to the central wiki when they come back from the field.
  10. Starter kit with templates, exportable, for new users: so many templates/forms on wikipedia and SMW, would be nice to generate start point. Wikipedia is difficult to import from due to the fact that templates have so many dependencies (note: now Wikipedia templates are highly dependent upon Lua/Scribunto).
  11. Bundling extensions with Composer: Make common extensions Composer-compatible so we could “bundle” extensions together simply by creating composer.json files.
  12. Semantic forms file upload bug: when re-uploading the same file
  13. Make semantic project management work again: Extension:Semantic Project Management is unmaintained.
  14. Query (incomplete/parts of) dates: This can be achieved with Parser Functions, but it would be better if it was native to SMW.
  15. Regain documentation of HaloACL and improve (Test HaloACL, but we don’t have the code yet, but it will be on GitHub here (hopefully) in the future)
    1. Could it be possible to make HaloACL work without patching? What would it take to modify core to do this simply with hooks?
  16. Wishlist for MediaWiki Cooperation
    1. Also, perhaps a repair list - improvement on (including votes on business value perceived)
  17. Test and configure skins (Foreground skin: )
  18. Sort semantic results by category (confirmed from Jeroen that this is not possible currently)
  19. Resume Dump HTML ( See current discussion on wikitech mailing list:
  20. Conditional formatting in query results, maybe with SemanticCompoundQuery, maybe with Lua templates?
    1. Extension:ConditionalRowColorTableFormat!

Challenge 1: Syncing wikis - “Gitify MW”[edit]

Collaboration on

  • Lex, Dave, Daren

Initial Ideas for Functionality[edit]

  • Clone a wiki to localhost
  • CRUD a MW Clone
  • Sync from localhost to master

Issues to Consider[edit]

  • Case: RemotePerson creates page “Strudel” and LocalPerson also creates page “Strudel”, then you have a conflict.
    • The program must address the conflict (like git) and request user direction for actual conflicts that can’t be merged.
  • Case: RemotePerson creates page “Apple Strudel” and LocalPerson creates page with essentially the same material, but with the different name “Apple Flavored Strudel”.
    • How can the program realize these differently named pages are related?
  • Human verification of synchronized data
    • Consider marking content that has been added/merged/deleted as “auto-merged but not reviewed by human”
  • What about - does it fit to your requirements? if yes, it maybe just needs to be updated.
  • DSMW was tested with MW 1.16.4 and SMW 1.6.1. Was not easy to setup, somewhat awkward user interface. Does not recognize conflicts, just adds new page versions, though it should have conflict resolution. Unknown if it works with more recent versions.

Challenge 2: Wishlist for MediaWiki Cooperation. Location: Library[edit]

  1. HaloACL testing, documentation and avoiding patching in future. How to get to keep things in core that we need for HaloACL New HaloACL GitRepository :
  2. Extension documentation on power it by an SMW instance: show showcase of updated
  3. Extension repository: Drupal/Wordpress: browse for plugins/extension, click on “install” or “upgrade”
    1. precondition: extensions moved to composer? requires detailed analysis
    2. what about “uninstall” - solved with a)
    3. deactivate vs. uninstall
    4. where to put code/documentation: clear guidelines for developers: github used by many) or gerrit (official, with translatewiki support) - mirroring: how to do this, needs to be documented, ask Jeroen). move from gerrit to phabricator?
    5. directions on how to update existing extensions
  4. Skinning:
    1. For a start: SMW community, add to
    2. Skinning is a MW topic, but it is a mess::

Maybe we should also have an SMW powered skinning documentation (analog to the (SMW) extensions

    1. What’s happening with Athena? If going on, could broader community benefit?
    2. See also Winter:
    3. Bootstrap extension:
    4. See also the skin mentioned at the conference:
    5. See also
  1. Other: See the list compiled for SWM+
  2. Marketing
    1. Provide a (Semantic)MediaWiki brochure (PDF)
    2. Create an “elevator pitch
    3. Create short video like this:
    4. Google Grant? for free Google ads
  3. Funding
    1. Address companies (MW/SMW) users/integrators
    2. for funding, you need a legal body (foundation), for an important legal body, you need big players
      1. ask google (Denny Vrandecic)
      2. research list of IT companies (big ones with public MW-instances), e. g.
      1. address big wikis:

Challenge 3: Putting extensions into composer[edit]

  • Ali, James

Code will be here: (another ify-ification)

Some extension developers do not want Composer support due to the fact that it makes it difficult/impossible to disable extensions. See discussion here:

Semantic Bundle Extensions:

  • Semantic Forms (high priority, perhaps high difficulty)
  • Semantic Compound Queries
  • Semantic Internal Objects (low priority, since SIO is really just a wrapper for Subobjects now)
  • Semantic Drilldown
  • Semantic Maps
  • Semantic Watchlist
  • Semantic Forms Inputs
  • Semantic Image Input

In Semantic Bundle, not specifically "semantic" though:

  • Admin Links (James has completed code changes, have not been accepted into Gerrit yet. See
  • Approved Revs (changes pending in Gerrit)
  • Arrays
  • Data Transfer
  • External Data
  • Header Tabs
  • Maps
  • Page Schemas
  • Replace Text
  • Widgets

Other popular extensions (from WikiApiary popular extensions list):

  • Parser Functions
  • Cite
  • Syntax Highlight
  • Wiki Editor
  • Interwiki
  • TitleKey
  • Variables
  • Semantic Comments
  • Semantic Glossary

Semantic extensions on WikiApiary:

Note on you can create “vendor” names other than your own username. Example: James Montalvo maintains the “EnterpriseMediaWiki” username on Packagist, but this user “owns” packages like “mediawiki/talk-right” (see below):

File:SMWFall2014CreateCamp html dea003b6.png


See the minimum required composer.json file at

Challenge 4: Improving SMW Extension Documentation[edit]

Improving documentation of existing SMW extensions in

  • Toni, Nicolas, Joachim

Create a template, form, etc. for extensions. Syncing with MediaWiki?

Current places:

  2. and so why have bothe a text-only-list and a form/template-system. And why not advertising the form/template-system?
  3. (seems to be out of date, unique feature: documents sites who use it)

Do main landing pages of developer-docu make (extension) developers aware of Git/Github as current recommended repository? (Stefan)



  1. Question mailing list about relation of and - maybe combine or better integrate? (Bernhard)
  2. Update Form/Attributes/Templates on Referata for Extension documentation. Look at documentation of extensions and make it better, semantic! Why not advertise the SMW-powered forms/templates on Should be a use-case for extension documentation
    1. Which properties to use additionally, Suggestion (taken from
  • release status ("stable" ..)
  • implementation ("parser function", ...)
  • short description (?)
  • latest version/ last modified
  • dependency mediawiki-version (and “tested with version …”)
  • dependency php-version (and sql-versions other server stuff?)
  • database-changes (yes/no)
  • license
  • download-link
  • documentation link
  • examples-link
  • hooks used
  • links codematrix etc. (or direct download counter?)
  • rating? (functionality, easy to use 1-5, simple “likes”…?)

  1. Add to MediaWiki Cooperation todo-list: talk to about better documentation (Bernhard)

Challenge 5: Recovering HaloACL documentation[edit]

  • Oliver , Robert
  • Challenges to solve
    • Where to put the documentation
    • IntraACL
      • There is a maintained fork of the HaloACL, but is cut down to mediawiki missing the SMW-Stuff. Maybe collaboration with the developer would be a good idea
    • is not complete
      • Some pages are not indexed
      • The available sites for the HaloACL differ in the version, e.g. there is some documentation for Version 1.4, some for 1.3, 1.7, etc.
    • Redundancy: Between Documentation of different versions on and documentation included in sourcecode-zipfile (describes version 1.4, points to docs for 1.3)
    • Documentation is protected but available for me (Robert)
      • Move page content from the protected wiki
      • “Refactor” the documentation and put it online again
    • GFDL and CC-BY
      • Original information is published under the GFDL. Anyone knows how this is compatible with CC-BY?
      • Move from 1.2 to CC seems possible