Template:Event: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 1: Line 1:
<div style="float: left; width: 48%">
Some tips and tricks for using Semantic Mediawiki from SMW mailing list, various web sites, etc.
Yesterday, Microsoft initiated another underhanded anticompetitive practice to try to recover from their [http://www.dailytech.com/Microsoft+Palm+Plunge+in+Smartphone+Market+Share+Android+is+Big+Winner/article17883.htm falling share] of the Smartphone industry. They've signed a patent agreement with HTC where license fees are paid to Microsoft when HTC uses Google's Open Source Android OS operating system, no doubt to lend favourable terms to their preferred partners, and to 'validate' their patent claims. Today, HTC announced they'll have a Windows 7 mobile phone by year end, no doubt part of their PR agreement with Microsoft. Apple has also sued HTC, specifically over features of Android.


Smartphones are expected to have gigantic growth in the next few years, eventually completely eclipsing today's personal computers. Unlike the hobbyist roots of PCs, the mobile industry has been highly controlled, with carriers making it difficult to use anything but a small selection of handsets and software. Legal actions like this will further impede real competition and progress, prevent consistent features, and through higher prices that may shut some out of the market.
== Workshops, tutorials, etc ==


Open source, shared professional and community contributions have always been a huge background competitive force, the basis for iPhone, Android and Palm devices, and something Microsoft has always been uncomfortable with. Today's technical community is huge, many are open source proponents.
[[Semantic Mediawiki workshop]]


== Boot Android from microSD ==
[[Semantic Mediawiki compared with Drupal and content management systems]]


A "blank" handset, sold by multiple manufacturers, and the ability to boot Open Source Android off microSD cards would avoid Microsoft and Apple's traps, and return control to the individual for a diverse and flourishing market based on price and features. There would be other advantages to this highly portable system. There could be enough Android users today to connect with an appropriate hardware company, with an initial order of hundreds of thousands of handsets for a specific date.
== Other tip sources ==


</div>
http://smwforum.ontoprise.com/smwforum/images/a/ad/Manual_SMW.pdf
<div style="float: right; width: 48%">
http://farm4.static.flickr.com/3583/3840066085_349d22476a.jpg
</div>
<br class="cleared" />


{{Blikied|April 28, 2010}}
http://smw.referata.com/wiki/Special:BrowseData/Tips


[[Category:Advocacy]]
http://smwforum.ontoprise.com/smwforum/index.php/Example:All_libraries
 
http://help.wikia.com/wiki/Help:Semantic_MediaWiki/Tips_and_tricks
 
http://semantic-mediawiki.org/wiki/Image:SMW_quick_reference.pdf
 
http://www.organicdesign.co.nz/MediaWiki_code_snippets (mediawiki)
 
http://smw.referata.com/wiki/Overview_of_Semantic_MediaWiki_and_Semantic_Forms
 
== Data design ==
 
http://www.mediawiki.org/wiki/Extension:Semantic_Forms#Data_design_issues
 
- Create a top category for Semantic Classes. I called mine 'Categories'.
It holds only categories used to define a 'Is-a' relationship. Doing so has
at least two benefits : 1- You can do a query on your core content by
restricting it to the 'Categories' level. 2- You can define other
categories outside of that structure for whatever your system needs.
 
http://smwforum.ontoprise.com/smwforum/index.php/Example:How_to_realize_a_range_constraint_for_a_property
 
Redirects can be used to create property synonyms.
 
== Discussion ==
 
Categories can be hierarchical; properties can't (yet) - actually they can be, using subproperty of.
 
When to use categories vs properties?
 
== MW tricks ==
 
If you want to clear out old pages you can delete them and use
deleteArchivedRevisions.php to erase the deleted revisions from the
database.
 
=== Variables ===
 
You can make use of the VariablesExtension [1] and store the query (or its
result? I'd like to know which one, but in the end it doesn't really matter) in
a variable, which is helpful when you need the same query multiple times within
a page. It looks like this:
 
<nowiki>{{ #vardefine: some_variable_name | {{#show:{{PAGENAME}}| ?propertyname}} }}
(silent) or
{{ #vardefineecho: some_variable_name | {{#show:{{PAGENAME}}| ?propertyname}} }} (with output)</nowiki>
 
Further down in the page you can write
 
<nowiki>{{ #var: some_variable_name }}</nowiki>
 
=== Specific searches ===
 
  <nowiki>
  <inputbox>
  type=search
  width=30
  namespaces=Help**,Wikipedia**,Template**
  searchbuttonlabel=Search help pages
  bgcolor=#cee0f2
  break=no
  </inputbox>
  </nowiki>
 
(requires the Input Box extension)
 
=== Profiling mediawiki ===
 
http://www.mediawiki.org/wiki/How_to_debug#Profiling
 
=== Mediawiki performance tuning ===
 
http://www.mediawiki.org/wiki/Manual:Performance_tuning
 
* APC can be used with SMW without problems
 
== SMW tricks ==
 
<nowiki>[[Went past deadline::{{#expr:{{{End date|}}}>{{{Deadline|}}} }}]]</nowiki>
 
=== Remote data ===
 
Philipp writes:
 
if you want to query an SMW installation from remote and re-use the results in
other applications, I recommend checking out our [http://smwforum.ontoprise.com/smwforum/index.php/Help:Basic_Triplestore Triplestore Connector]. It delivers the results as XML format (compliant with the SPARQL recommendation).
 
If you want to query semantic data in your wiki, coming from another SMW
installation you should take a further look at the [http://projects.csail.mit.edu/wibit/wiki/index.php?title=Wibit Exhibit result printer].
 
[http://www.basil-ell.de/data_integration/ Freebase query]
 
=== Hiding set data ===
 
  <nowiki>[[propertyA::{{{propertyA|}}}|]]</nowiki>
 
By adding the | after the enclosing }}}, the property value will not show.
 
For multi value properties:
 
  <nowiki>{{#arraymap:{{{Eating disorders behaviors|}}}|,|x|[[Eating disorders behaviors::x|]]}}</nowiki>
 
(why not just use #set?)
 
=== Protecting #ask results ===
 
(from Markus Kr?tzsch)
 
* make a new property "has checked" of type page,
* make and a new page "main page news editor" (or whatever) and protect this page just like your main page,
* add an entry <nowiki>[[has checked::some page]]</nowiki> on "main page news editor" for every page that the editor has found to be okay to make it on the main page news feed,
* extend your #ask query on the main page with the condition <nowiki>[[-has
checked::main page news editor]]</nowiki>.
 
... Note that you can also have a group of editors with separate (protected)
pages. You can also work with categories of editors for different topics etc.
Of course, this is no longer a spam protection since categories are not
protected either, but you can use another level of "has checked" to have a
master editor who checks other editors to grant them trust. All of this
readily works with subqueries+inverses. Applying similar methods but without
actually protecting any pages maybe still be useful for managing feeds
together in cases where spam is not a major issue.
 
== Misc ==
 
=== Enable links in property values ===
 
$smwgLinksInValues = true;
 
=== Must add namespaces to config ===
 
Otherwise they won't have semantic properties.
 
$smwgNamespacesWithSemanticLinks array
 
== Multi language SMW ==
 
=== Creationwiki ===
 
(From Temlakos on the mailing list regarding http://creationwiki.org/ and http://creationwiki.org/fr/)
 
Here's how I do it: As I have said many times before, I routinely
declare all properties. And every declaration that is implemented in
both languages, has the language-specific Interwiki prefix added, so
that you can follow a property declaration from one language to the
other and back.
 
All that is involved is making parallel property declarations and
placing Interwiki language links in each one.
 
In general: a multilingual wiki is actually a family of wikis, each set
up in its own language.
 
The important part is to make sure that the SMW language files exist in
each language in which you are planning to implement SMW. Right now the
language support is a little thin, in comparison to the incredible
multiplicity of languages on Wikipedia. So those of you who are trying
to persuade Wikipedia to implement SMW across their project will have an
immediate problem: you don't support more than a handful of the
languages they use.
 
...
anyone who implements SMW in an unsupported language is going to have to
write a language file. And make sure that his language is supported in
SMW_Aliases.php and SMW_Messages.php.
 
=== HKp wiki ===
 
'HKp wiki' is  a bilingual (potentially multilingual) spanish-catalan
wiki in the same installation.
http://enlloc.net/hkp/w
 
I'm using Polyglot extension [1] to redirect to appropriate language
pages depending on the browser language settings or the user wiki
settings.
 
I'm using Language Selector extension for providing a language
selector for every page in the sidebar.
 
I wanted to use the Multilang extension for changing the language in
pages and forms depending on the user settings. But unfortunately this
extension don't work in MW higher of 1.10.
 
Alternatively I'm using the [http://enlloc.net/hkp/w/index.php/Plantilla:International <nowiki>{{international}}nowiki> template]. It is useful
for pages and templates but not for forms because it need a
<nowiki>{{SUBPAGENAME}}</nowiki> with language code (/ca, /es, /en, /fr, /pt, ...).
 
I'm using [http://enlloc.net/hkp/w/index.php/Plantilla:Entrada_Wlog my own code in templates] to show or hide a "translation
button" depending if the translation page exist or not:
 
  <nowiki>{{#ifeq:{{SUBPAGENAME}}|es|
{{exists | page={{NAMESPACE}}:{{BASEPAGENAME}}/ca | then= | else=
<p style="margin-top:2em; color: rgb(100, 100, 100)">'''Traducci?n'''<br>[[Categoria:Per traduir al Castell?]]
<small>Esta p?gina a?n no est? en catal?n. Quieres colaborar a traducirla?</small></p>
{{#formlink:Entrada Wlog traduir ca|Traducir al catal?n|button|
preload={{FULLPAGENAME}}&Gesti? traduccions[p?gina
original]={{BASEPAGENAME}}&Entrada Wlog[llengua entrada]=es&namespace=Wlog }}
}}
}}</nowiki>
 
Right now I have not solution for having only one form for all
languages. What is annoying.
 
== Media ==
 
Neat talk on MW, with refs to SMW: http://www.youtube.com/watch?v=Ukytqe9pwDM
 
[[Category:SemWeb]]

Navigation menu