Practical Semantic Mediawiki: Difference between revisions

From zooid Wiki
Jump to navigation Jump to search
Line 209: Line 209:
== Queries ==
== Queries ==


* [[Special:Ask|Queries]]
''"Ask" queries can be added to any page to add links or values from other pages according to parameters, for example, by category, pages that have particular values, etc.''
 
** <nowiki>{{ #ask: [[A::Place]] }}</nowiki>
** <nowiki>{{ #ask: [[A::Place]] }}</nowiki>
** <nowiki>{{ #ask: [[Category:City]] }}</nowiki>
** <nowiki>{{ #ask: [[Category:City]] }}</nowiki>
* [[Special:Ask|Interactive queries]]


== Classes ==
== Classes ==

Revision as of 17:54, 25 November 2010

This hands-on session for non technical users emphasizes the "need to know" aspects of Web publishing, wikis, information design and Semantic Mediawiki for flexible, structured, practical re-usable content that fits into the Web of Data. It is not expected participants will become experts in all these topics, but will be able to create a site, and have an overview of what can be done as a basis of progressive learning.

Forward

Practice site: http://practice.zooid.org/wiki/Practice

Acronyms

  • MW: Mediawiki
  • SMW: Semantic Mediawiki

Web publishing

Difference between Semantic Mediawiki and static web sites, CMS, Mediawiki

  • Static web sites can be more difficult to manage, it's harder to re-use content.
  • Content management systems use forms to guide content editing, but they tend to require low level changes (database, programming), and end users have constrained access to the site
  • Mediawiki is designed to organize large sets of pages, potentially with many people contributing
  • Semantic Mediawiki adds structured information and views
    • We are going to learn markup encoding in order to have more control over content and appearance

Access models

  • Fully open, no login required
  • Require login for editing
  • Require created accounts to edit (closed editing)
  • Require created accounts to access (fully private)
    • Encryption to avoid snooping

Access models can be changed over time; avoid starting a wiki with jargon or unsympathetic content.

Site users

  • Levels
    • De-emphasize control, make it as flat as possible
    • Bureaucrats still exist - edit site-wide content and styles, block pages and users
  • OpenID signin



Practice: Create an account and sign in

Accessibility

Here, accessibility refers to supporting people with vision, keyboard control or cognitive difficulties.

  • Making sites accessible generally increases usability
    • Works on more devices from text browser to handheld
    • Typically more straightforward navigation
    • Accessible hot keys can be used by any expert user
    • The curb cuts principle
  • Mediawiki is accessible, SMW has issues (forms)
  • Value content over appearance
  • Good tags for images, image maps

Terms of use

Copyright continuum, from traditional copyright to public domain
  • Creative Commons - share with options for attribution, non-commercial, changes
  • Traditional copyright - by permission only


Using Mediawiki

MediaWiki logo without tagline.png

Mediawiki is the underlying software of Wikipedia. It is robust, supported by a large community and supports hundreds of useful extensions.


Progressive uses

  • Basic site with pages and categories
    • You just need to know a few things for your wiki to be as useful as most Web sites
  • Add widgets for more interactivity
  • Wiki gardening to reorganize content
  • Add semantic classes for reusable data
  • Guide users of the site
    • Viewer
    • Casual editor
    • Advanced editor, gardener
    • Semantic coder

Creating pages

  • How to name pages
    • One topic per page
  • Short, avoid special symbols, use sentence type capitalization, avoid Title Case unless appropriate
  • Code and matching brackets

Basic markup

A picture of clouds with the sun poking through in case people start to panic

Rather than using a rich text editor, Mediawiki uses a progressively learned set of markup, that's designed to be human-readable, consistent and enforces meaning over appearance. It's not dependant on special programs, and could be carved into a park bench and retain its meaning.

  • ''Italic'', '''Bold'''
  • * List heading level one — use # for numbered list
    • ** List level two — ## for numbered list
      • ...
  • =Heading one=
    • ==Heading two==
      • ...
  • [[Mypage]] — A wiki link
    • "Red links" are links to pages that don't exist
    • [[File:Mypicture.png]] — Media (inline or link)
      • A shortcut to creating images is to create the File: link first, then follow the red link to the upload form
    • [[Mypage|This is my page]] Alternate link text (using pipe symbol)
  • [http://theirsite.com] — A non-wiki link
    • Use a space after the link to use your own link text. [http://theirsite.com Their site].
  • {{My Template}} — A template (reusable content, function or variable)
    • Don't Repeat Yourself
    • Pipe symbol is used to pass parameters — {{Show Something|Something}}
  • {{ #geocode: Montréal, Quebec}} — Template function, in this case geocode turns a place name into geographic coordinates
  • {{{1}}} — SMW variable, in this case the first value passed to a template
  • Finding pages
  • Starting new pages
  • Proactive linking
    • Brainstorm using links



Practice: Create a new page that's a unique generally recognized placename, include a link to another page and another site.

  • Categories
    • Subcategories



Practice: Put your page in a category, put that category in a sub-category

  • Uploading images and files
  • Moving pages
    • Moving preserves the original link, can be useful for "also known as"



Practice: Move your page to a more specific location (Placename, Region), observe Special:RecentChanges


Bonus practice: Add an image, place it on the right and include a caption.

  • Deleting pages
  • Templates - used for consistently reused content

Making pages look good

CSS is the style system of Web pages and can also be used in Mediawiki. Like wiki markup, learning can be progressive.

Placeography | Biofuel Visions

  • Re-using CSS styling <div style="background: orange">Hello world</div>
    • Avoid losing meaning (don't use <big> for headers), keep it simple
  • Re-using styles MediaWiki:Common.css
  • Possible to hide MW's menus and change the 'skin'



Practice: Add <div class="noticebox">...</div> to some page content


Bonus practice: Move your div to a reusable template

Semantic Mediawiki

SMW logo 180px.png

SMW is an extension ecology of MW that allows marking up content for re-use, and creating easier to use forms and views.


  • Meaning through annotations and relationships
    • You define the relationships for your application
    • Triples — subject, predicate, object
      • Subject — what we're talking about
      • Predicate — the relationship type
      • Object - what the subject is being related to
    • Combine them and you can flexibly describe anything
    • Montréal is a place
    • Montréal has population 1,906,811
    • Montréal has geographic coordinates 45.5088889, -73.5541667
  • What properties does your content need to be useful?

Examples

Inline property annotation

Single instances of data can be marked-up using annotations. Annotations look like categories, but they use a double colon. The first part is the relationship type, the second either a value or object page.

[[Date::Jan 1, 2011]] [[asserted by::David Mason]]

Page: Montreal

  • [[A::Place]]
  • [[Population::1906811]]
  • [[Geographic coordinates::45.5088889, -73.5541667]]



Practice: Add a population annotation to your place.

Queries

"Ask" queries can be added to any page to add links or values from other pages according to parameters, for example, by category, pages that have particular values, etc.

    • {{ #ask: [[A::Place]] }}
    • {{ #ask: [[Category:City]] }}

Classes

Instead of using inline property assignments, semantic classes use templates.



Practice: Change your page so it's a an Entity.

Page: Montréal

{{Entity |A=Place |Population=10000 }}


  • Class templates will often contain queries that show linked classes



Practice: Create your own semantic class with template, properties, form. Add pages to it http://practice.zooid.org/wiki/Special:Forms

Views

  • Format= parameter to queries
    • {{ #ask: [[Geographic coordinate::+]]|format=map}}


Basic inference

Inference is used to derive information from basic information.

{{#ifexpr: {{{Population|}}} > 50000 | [[Category:City]] }}

If the page's population is greater than 50000, then put it in the category of city.

This is a simple form of artificial intelligence, that be very useful for large sets of pages for arbitrary classifications.

Future directions

  • Relating ontologies (categories and properties) between sites
  • Reusing content
  • Creating a big picture across the web where anyone can ask questions and add their data


Mediawiki Widgets

Mediawiki Widgets allow embedding third-party site content for rich media (Youtube, photo sites, etc) and interactive discussions (DISQUS, Twitter, etc) without needing to set it up or host it on your site.

  • DISQUS discussion
    • Register with DISQUS
    • Get key
    • Create widget
    • Embed widget on pages

Converting content or sites

Hosting

  • Export a site, modularize by category
    • Complete site export
  • Special:Version
  • Free light/startup hosting
  • Inexpensive Mediawiki with SMW option
  • Wikia
  • Self-hosting

Getting help

  • View source of pages
  • Mediawiki help sites and community
  • Semantic mediawiki help sites and community
  • If it's for an open cause, ask me
    • Let's form a user group