Часто задаваемые вопросы
Здесь находятся некоторые часто задаваемы вопросы и ответы на них.Here are some frequently-asked questions about Semantic MediaWiki.
Что такое Semantic MediaWiki?
Semantic MediaWiki (или сокращенно SMW) - это расширения популярного вики-движка MediaWiki, известного тем, что на нем работает Википедия. SMW позволяет пользователям сохранять структурированные данные на вики страницах и осуществлять запросы к этим данным из любого места вики. Таким образом, MediaWiki превращается в семантическую вики. Кроме того, есть довольно много расширений MediaWiki, которые были задуманы для совместного использование с SMW, поэтому иногда термин "Semantic MediaWiki" обозначает всю эту большую группу т.н. семантических расширений. Вам стоит попробовать эти плагины, ведь они покрывают целый ряд задач: помогают пользователям вводить данные, создают красивые визуализации данных, осуществляют импорт и экспорт данных SMW в различные форматы и даже помгают использовать Semantic MediaWiki в рамках корпоративных процессов.
Semantic MediaWiki, полностью свободна и предоставлятеся со всем исходными кодами.
Если вы хотите узнать больше о Semantic MediaWiki, вы можете ознакомиться со справочными страницами этом сайте на или почитать википедию, and (русская страничка на Википедии готовится к обогащению и пополнению).
Кто разрабатывает Semantic MediaWiki?
Первая версия SMW была сделана несколькими разработчиками из Технологического института в Карслуэ, однако затем к разработке присоединились люди со всего мира (см. Help:SMW Project) .Семантические расширения разрабатываются независимо самыми разными людьми.
Насколько SMW популярна?
На данный момент на базе SMW около 250 живых активных вики-проектов. Невозможно узнать, сколько личных и корпоративных вики используют SMW, но судя по количеству отзывов и багрепортов можно понять, что это количество не меньше, чем число публичных проектов.
Semantic MediaWiki include Есть несколько довольно известных проектов, работающих на SMW, например SNPedia, Chickipedia, OpenEI, Wikicafe. Из русских проектов можно назвать детскую вики Летописи, а также вики Традиция.
How is Semantic MediaWiki's performance?
There have been various tests done already to determine SMW's performance, in addition to fairly large-scale real SMW installations. Unfortunately, none of the findings of any of these tests have been published yet. However, we do know some of the conclusions: SMW has been used successfully even with millions of rows of data; and the limiting factor is usually overly-complex queries. Various standard performance improvements have been shown to have a helpful effect on SMW performance, including the use of caching tools like APC and memcached, and MySQL adjustments like increasing the buffer size and using a separate database server.
How does SMW store its data?
По умолчанию, Semantic MediaWiki хранит данные при помощи примерно 10 дополнительных таблиц в пределах БД Медиавики (которая обычно является базой данных MySQL ). Структура этих таблиц была спроектирована с тем расчетом, чтобы запросы к базе выполнялись максимально быстро - поэтому таблиц так много.
As of version 1.6, SMW can also store its data within an RDF triplestore, such as 4store and Virtuoso. See Help:Using SPARQL and RDF stores for more information.
Why doesn't SMW use SPARQL as its query language?
SPARQL is the main query language of the semantic web, and there are a number of big advantages to using SPARQL to query SMW data: it's more flexible overall than SMW's native query language, it would allow for querying semantic data from other sources in addition to the wiki's own data; and using SPARQL would prevent users from having to learn yet another query language.
The use of SPARQL is considered infeasible for querying the data stored directly within the main SMW database tables, though, mostly due to that same flexibility: there are many SPARQL queries that can't be handled by SMW's current querying system.
However, SPARQL querying is easy to do on data that's stored via an RDF triplestore. It's already possible now both to store SMW's data in RDF, and to issue SPARQL queries on that data from the wiki, in various ways - see the question above.
What knowledge can be inferred in SMW?
One of the strengths of a semantic system is that not every piece of data has to be stated explicitly; some can be inferred. Currently SMW supports four types of inferencing: subcategory (querying for pages in a certain category will also get the pages in all its subcategories), sub-property (properties can be declared as sub-properties of other properties, and can be queried in that way), equality (a property pointing to a page that redirects to another page will transfer its value to the other page) and inverse properties (you can query on properties in the reverse direction). See Help:Inferencing for more information.
There are two additional approaches for inferencing: if you're using templates to store semantic data, you can create custom inferencing within the template - for example, by using the #if parser function, you could add a call to a page about a person so that, if the person has at least one child and the person is male, the page gets added to the category "Fathers". More expressive inferencing can also be done by using RDF triple stores and SPARQL querying.
Why doesn't data I've just added show up in queries?
There's sometimes a lag between when SMW data gets created or modified, and when that new data shows up in queries; that's due to MediaWiki's own page caching. Some people, not knowing any alternatives, get around this by re-saving the page containing the query, but this is not necessary - you can refresh the query just by doing a MediaWiki refresh/purge on the page. If you're a MediaWiki administrator, you can do this by simply hitting the "refresh" tab (not to be confused with the browser's "reload" button, which won't have an effect). If you're not an administrator, going to the URL that ends with "&action=purge" for that page will have the same effect. Or you can simply wait - cached pages usually get refreshed within 24 hours or less.
If there are certain wiki pages that you want to never be cached, you can install the MagicNoCache extension, and add the string "__NOCACHE__" to anywhere within those pages.
Finally, if you run a small- or medium-sized wiki, you can simply disable MediaWiki page caching altogether, which probably won't have a huge impact on performance. This can be done in one easy step - see here for how.
Semantic MediaWiki is great! Is it ever going to end up on Wikipedia?
Being able to encode data, like infobox data, on Wikipedia, would open up an array of interesting opportunities for querying what is already one of the world's most important sources of data. In fact, the dream of a "semantic Wikipedia" was what originally inspired the creation of Semantic MediaWiki, and continues to motivate some of its developers.
Semantic MediaWiki as a concept is already familiar to most of the core developers of MediaWiki, and some have expressed great enthusiasm for it (see 21:18 - 22:44 of this video, for instance).
As of 2011, there is a potential project being discussed, called "Wikidata", that would use Semantic MediaWiki to create a single, massive store of data that could be used by all of the different language Wikipedias to populate their infoboxes - and could also be queried by outside systems. This project would require modifying SMW in some way to support both multiple languages of data, as well as citation information for each piece of data. The project currently has tentative support from the Wikimedia Foundation, and may occur sometime in the next few years.
What about SMW on other Wikimedia sites, like Wiktionary?
There are various other Wikimedia Foundation projects that contain structured data and could potentially benefit from Semantic MediaWiki: Wikimedia Commons, Wikispecies, Wiktionary and MediaWiki.org are a few examples. For whatever reason, the concept of using SMW in these sites has not generated much interest yet, compared to its use on Wikipedia. Still, the "Wikidata" project, if it goes through, could end up involving some or all of these other sites as well.
What additional features are planned for SMW?
You can see the roadmap page for a listing of some the planned new features for both SMW and the extensions based off of it.
I would like to contribute a bug fix/new feature/new extension. How do I do that?
First of all, we appreciate the enthusiasm of every potential new contributor to the SMW project. Helpful features and bug fixes have been contributed by many users, and nearly every SMW developer started out as just contributing small bits of code.
If what you would like to contribute is just a bug fix, the best way to do it is to create a patch for your code, and submit it via Bugzilla.
If the contribution is a new feature, or even a possible new extension, it is strongly recommended to first write an email about it to the semediawiki-user mailing list - it could be that such a feature or extension already exists, or that someone is already working on it, or that it's been discussed before and is considered infeasible, or at the very least that others will have helpful ideas about how to implement it.
If you are planning to start doing development, please see the developer's support page for further information and resources.
How else can I help the SMW effort?
Even if you're not a developer, there are various things you can do to help the SMW project. If Semantic MediaWiki has been helpful to you or your organization, you could write a testimonial about it - just a short description of how it's been helpful, sent to testimonials@semantic-mediawiki.org, would be greatly appreciated. You can also help answer the questions of other users, both on the semediawiki-user mailing list and on the #semantic-mediawiki IRC channel.
If you have a blog or a Twitter account, you could write something there about Semantic MediaWiki. And finally, if you have any connections in the media, or you're in the media yourself, we think SMW makes for a compelling subject - the amount of press coverage SMW has received so far, both in print and online, has been woefully small.
What are the alternatives to SMW?
We truly believe that there's no other software yet, either free or proprietary, that enables flexible, collaborative data structures in the way that Semantic MediaWiki does. Nonetheless, within corporations, Microsoft SharePoint comes up fairly often as an alternative option. (See here for one view of the advantages of SMW over Sharepoint.)
There are various other semantic wiki applications, although until now we've only heard of Wikidsmart, an extension to Confluence, being considered for use as a direct substitute for Semantic MediaWiki, probably due to the popularity of the Confluence wiki engine.
SMW shares some of the characteristics of document-oriented databases like MongoDB, although SMW functions more like a front-end application than such databases usually do, so they're rarely seen as alternatives.
In the MediaWiki world, the DynamicPageList (DPL) extension is sometimes compared to SMW. It, too, allows for querying pages, although it doesn't support semantic annotations: all its queries are based on categories and other standard MediaWiki attributes, like the date a page was last revised. DPL's one big strength over SMW is its support of querying such page metadata, like the number of revisions to a page, which SMW doesn't support. There's no rule against using both, though, and some wikis do use the two in conjunction.
In the big picture, the real competitor to Semantic MediaWiki is every so-called "turnkey" application, meant to store a specific type of data. We would like to see the users of many of these applications consider switching to SMW as a cheap, flexible alternative.
There is a twice-yearly meeting of SMW users and developers, called "SMWCon", or the Semantic MediaWiki Conference, that is held alternately in the United States and Europe. There have been three SMWCon events so far, and the next one, SMWCon Fall 2011, will be held on Sept. 21-23, 2011 in Berlin.
There are other events where SMW is often discussed. The annual Wikimania conference has so far always had a contingent of SMW developers (SMW was in fact first proposed at the first Wikimania, in 2005). The Semantic Technology Conference, or SemTech, usually has some SMW developers and users as well; that conference sometimes even has a dedicated track for semantic wikis (e.g., the Semantic Wikis track at SemTech 2010). WikiSym is another event series where SMW-related topics are discussed from time to time.
There's so much documentation! How do I get started?
One way to get started using Semantic MediaWiki is to figure out which additional extensions you want to use - those can have a big effect on your data structure, and on what you use SMW for on your wiki. You can see the full list of SMW extensions here.
There are also two different bundles of SMW-based extensions that you can download, each of which offers a "curated" set of software around SMW:
- Semantic Bundle
- SMW+ - also includes a custom version of MediaWiki
Also, you can check out the set of SMW wikis of the month, for some examples of wikis that have successfully used Semantic MediaWiki for a variety of purposes. Полужирное начертание