r76059 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r76058‎ | r76059 | r76060 >
Date:23:30, 4 November 2010
Author:jeroendedauw
Status:deferred
Tags:
Comment:
Update of tag, accidentally imported a rc
Modified paths:
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/COPYING (added) (history)
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/INSTALL (added) (history)
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/README (added) (history)
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/RELEASE-NOTES (added) (history)
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/SMW.hooks.php (added) (history)
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/SMW_Settings.php (added) (history)
  • /tags/extensions/SemanticMediaWiki/REL_1_5_3/SemanticMediaWiki.php (added) (history)

Diff [purge]

Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/INSTALL
@@ -0,0 +1,332 @@
 2+[[Semantic MediaWiki 1.5.3]]
 3+
 4+Install instructions for the latest SMW version are also online in a more
 5+convenient format for reading:
 6+
 7+ http://semantic-mediawiki.org/wiki/Help:Installation
 8+
 9+
 10+Contents
 11+
 12+* Disclaimer
 13+* Requirements
 14+* Installation
 15+ ** Testing your Installation
 16+ ** Customising Semantic MediaWiki
 17+ ** Running SMW on older versions of MediaWiki
 18+* Upgrading existing installations
 19+ ** Upgrading geographic coordinates
 20+ ** Upgrading n-ary (multivalued) properties
 21+ ** Changed configuration options
 22+* Troubleshooting
 23+* SMW is installed. What should I do now?
 24+* Contact
 25+
 26+
 27+== Disclaimer ==
 28+
 29+For a proper legal disclaimer, see the file "COPYING".
 30+
 31+In general, the extension can be installed into a working wiki without making
 32+any irreversible changes to the source code or database, so you can try out
 33+the software without much risk (though no dedicated uninstall mechanism is
 34+provided). Every serious wiki should be subject to regular database backups!
 35+If you have any specific questions, please contact the authors.
 36+
 37+
 38+== Requirements ==
 39+
 40+* MediaWiki 1.15.4 or greater (tested on 1.16.0 to 1.17alpha (r63248).
 41+* PHP 5.* or greater installed and working
 42+* MySQL >= 4.0.14 (version required by MediaWiki) OR PostgreSQL >= 8.3
 43+ Note that Postgres support is still preliminary and might require special
 44+ setup, see http://semantic-mediawiki.org/wiki/PostgreSQL
 45+
 46+Notes:
 47+* SMW uses the PHP mb_*() multibyte functions such as mb_strpos in the
 48+ php_mbstring.dll extension. This is standard but not enabled by default on
 49+ some distributions of PHP.
 50+ See http://php.net/manual/en/ref.mbstring.php#mbstring.installation
 51+* For installation and upgrade, SMW needs the rights to create new tables
 52+ (CREATE) and to alter tables (ALTER TABLE). Both can be removed again after
 53+ SMW was set up. The script SMW_setup.php can use the DB credentials from
 54+ AdminSettings.php for this purpose, avoiding the need of extra rights for
 55+ the wiki DB user.
 56+* SMW creates and alters temporary tables for certain semantic queries. To do
 57+ this, your wikidb user must have privileges for CREATE TEMPORARY TABLES. The
 58+ according features can be disabled by adding the following to
 59+ Localsettings.php:
 60+
 61+ $smwgQSubcategoryDepth=0;
 62+ $smwgQPropertyDepth=0;
 63+ $smwgQFeatures = SMW_ANY_QUERY & ~SMW_DISJUNCTION_QUERY;
 64+ $smwgQConceptFeatures = SMW_ANY_QUERY & ~SMW_DISJUNCTION_QUERY &
 65+ ~SMW_CONCEPT_QUERY;
 66+
 67+
 68+== Installation ==
 69+
 70+If you upgrade an existing installation of Semantic MediaWiki, also read the
 71+remarks in the section "Notes on Upgrading" below!
 72+
 73+(1) Extract the archive or check out the current files from SVN to obtain the
 74+ directory "SemanticMediaWiki" that contains all relevant files. Copy this
 75+ directory to "[wikipath]/extensions/" (or extract/download it there).
 76+ We abbreviate "[wikipath]/extensions/SemanticMediaWiki" as "[SMW_path]".
 77+(2) Insert the following two lines into "[wikipath]/LocalSettings.php":
 78+
 79+ include_once("$IP/extensions/SemanticMediaWiki/SemanticMediaWiki.php");
 80+ enableSemantics('example.org');
 81+
 82+ where example.org should be replaced by your server's name (or IP address).
 83+ The latter is needed only once, using the "preferred" name of your server.
 84+ It is no problem to access a site by more than one servername in any case.
 85+ If you have custom namespaces (such as "Portal"), read the note below.
 86+(3) In your wiki, log in as a user with admin status and go to the page
 87+ "Special:SMWAdmin" to do the final setup steps. Two steps are needed: at
 88+ first, trigger the database setup ("Database installation and upgrade").
 89+ Afterwards, activate the automatic data update ("Data repair and upgrade").
 90+ Note that the first step requires permissions to alter/create database
 91+ tables, as explained in the above note. The second step takes some time;
 92+ go to Special:SMWAdmin to follow its progress. SMW can be used before this
 93+ completes, but will not have access to all data yet (e.g. page categories).
 94+
 95+ Both of those actions can also be accomplished with the command-line PHP
 96+ scripts SMW_setup.php and SMW_refreshData.php. Read the documentation in
 97+ [SMW_path]/maintenance/README for details on how to run such scripts.
 98+
 99+'''Remark:''' Semantic MediaWiki uses ten additional namespace indexes (see
 100+http://www.mediawiki.org/wiki/Manual:Using_custom_namespaces), in the range from
 101+100 to 109. 100 and 101 are not used (they were used in early beta versions).
 102+106 and 107 are reserved for the SemanticForms extension. If you have your own
 103+custom namespaces, you have to set the parameter $smwgNamespaceIndex before
 104+including SemanticMediaWiki.php. See the documentation $within SMW_Settings.php for
 105+details. If you add more namespaces later on, then you have to assign them to
 106+higher numbers than those used by Semantic MediaWiki.
 107+
 108+
 109+=== Testing your Installation ===
 110+
 111+If you are uncertain that everything went well, you can do some testing steps
 112+to check if SMW is set up properly.
 113+
 114+Go to the Special:Version page. You should see Semantic MediaWiki (version nn)
 115+listed as a Parser Hook there.
 116+
 117+Create a regular wiki page named "TestSMW", and in it enter the wiki text
 118+ Property test: [[testproperty::Dummypage]]
 119+
 120+When previewing the page before saving, you should see a Factbox at the bottom
 121+of the article that shows your input. After saving the page, click on the link
 122+"Browse properties" in the page's toolbox. This view should show Testproperty
 123+with value Dummypage.
 124+
 125+If you don't get these results, check the steps in the Installation section,
 126+consult the FAQ section, then contact the user support list (see the Contact
 127+section).
 128+
 129+=== Customising Semantic MediaWiki ===
 130+
 131+Semantic MediaWiki can be customised by a number of settings. The available
 132+options are detailed in http://semantic-mediawiki.org/wiki/Help:Configuration
 133+
 134+=== Running SMW on older versions of MediaWiki ===
 135+
 136+If your site is still running on PHP4, SMW is not supported. It would hardly
 137+be possible to backport the code to the old PHP version. If you have PHP5 but
 138+an older MediaWiki version, additional patches/modifications might be needed.
 139+Download an older release of SMW and have a look at the included INSTALL
 140+instructions to find out whether other changes are recommended therein.
 141+
 142+
 143+== Upgrading existing installations ==
 144+
 145+(Please read all of this before upgrading)
 146+
 147+Installations of SMW 1.5.* can be upgraded by just replacing the files, and all
 148+extensions compatible with SMW 1.5.1 should work without modification. If
 149+problems occur, it is possible to go back to 1.5.1 by simply using the old
 150+files, waiting with the upgrade until the relevant extensions provide updates.
 151+
 152+If not done already, it is suggested to change the inclusion of SMW in
 153+LocalSettings.php to the following as described in the installation
 154+instructions above:
 155+
 156+ include_once("$IP/extensions/SemanticMediaWiki/SemanticMediaWiki.php");
 157+
 158+Including SMW_Settings.php as in earlier versions will continue to work, but may
 159+be disabled in some future version.
 160+
 161+Existing SMW 1.4.* installations and all SMW installations that already use the
 162+default store (SMWSQLStore2) can basically follow the above installation steps.
 163+The latter covers all sites with SMW 1.2 to 1.3 that do not use a special
 164+setting to switch back to the old store ("SMWSQLStore" or "SMWRAPStore").
 165+Older versions of SMW can be upgrade in a similar fashion, but must ensure that
 166+they do not depend on now peculiarities of the old version. Please read the
 167+upgrade instructions for SMW version 1.2 and 1.3 for details. Moreover,
 168+SMW 1.5.0 finally removed all backwards compatibility to SMW beta versions
 169+below SMW 1.0. If your wiki still uses the setting $smwgSMWBetaCompatible=true
 170+then you should not upgrade until you find that disabling this setting works
 171+properly and without complications.
 172+
 173+There are two changes in SMW functionality that may affect some sites that used
 174+earlier versions. Additional steps are required if the wiki uses n-ary
 175+(multivalued) properties or properties of type Geographic coordinate and the
 176+required upgrade steps are described in separate sections below.
 177+
 178+Directly after enabling SMW 1.5.1, it could potentially happen that the site
 179+shows SQL errors due to background jobs trying to access the new DB structure
 180+even before you initialised it. This can even block you from reaching SMWAdmin.
 181+In this case, either use the script SMW_setup.php from the command-line, or
 182+access your database and delete all entries in the table "job". After this, no
 183+errors should show up while accessing the special page for initialisation.
 184+
 185+When upgrading from SMW 1.4.* or older, extensions of SMW (e.g. Semantic Forms)
 186+need to be updated to a version that is compatible with SMW 1.5.1. See your
 187+extension's homepage for details. If used, it is also necessary to update to a
 188+more recent version of SemanticResultFormats (SRF).
 189+
 190+=== Upgrading geographic coordinates ===
 191+
 192+The datatype Geographic coordinate has been moved from SMW to the Semantic Maps
 193+extension. Wikis that use this type should install Semantic Maps version 0.6
 194+or above. No other changes are needed, but it is recommended to install
 195+Semantic Maps before upgrading SMW so as to avoid problems at any time. The
 196+move has been done to concentrate geo-related features in one extension for
 197+better maintenance and ease of use.
 198+
 199+=== Upgrading n-ary (multivalued) properties ===
 200+
 201+The way how these properties are declared on their property pages has changed
 202+since SMW 1.4.3, and it is necessary to change the pages of all such properties
 203+to use them again as before. Until SMW 1.4.*, such properties were declared by
 204+type declarations as in the following example:
 205+
 206+ <nowiki>[[has type::Page; Number; String]]</nowiki>
 207+
 208+In this case, a property with three fields of the specified types was declared.
 209+You can use the inline query {{#ask: [[has type::~ *;*]] }} to obtain a list of
 210+all properties in your wiki that are of this form at all. Since SMW 1.5.0, two
 211+property assignments must be made on the property page instead:
 212+
 213+ <nowiki>[[has type::Record]]</nowiki>
 214+ <nowiki>[[has fields::Page; Number; String]]</nowiki>
 215+
 216+In other words, all "n-ary" properties are now of the new datatype Record, and
 217+the information about their fields is stated independently. This change allowed
 218+for many improvements in SMW, and makes it possible to create new (better)
 219+extensions for supporting compound property values in the future.
 220+
 221+To upgrade, ''first'' install the new version of SMW, then use the above inline
 222+query to efficiently find all properties that need to be changed. After
 223+updating the pages as required, all values should be accessible as before
 224+(possibly some repair jobs need to finish before this is really the case; check
 225+your job queue). If you change the pages before the upgrade to SMW 1.5.1, then
 226+it will be necessary to start a repair cycle of SMW to ensure that all affected
 227+page are indeed updated.
 228+
 229+=== Changed configuration options ===
 230+
 231+Some configuration options (used in LocalSettings.php) have changed since SMW
 232+1.0. All settings are documented in detail in the file SMW_Settings.php. The
 233+following list gives the version in which a setting was first introduced, so it
 234+can be ignored if you already run this version or a more recent one.
 235+
 236+* [1.4] Up to version 1.4, the default for value for the setting
 237+$smwgQComparators was '<|>|!'. It now has changed to '<|>|!|~' so the "like"
 238+comparator ~ is enabled by default.
 239+
 240+* [1.4] Version 1.4 still supported a setting $smwgSMWBetaCompatible to enable
 241+the old <ask> query syntax and the Relation namespace. This backwards
 242+compatibility has now been dropped and the setting is no longer used. Please
 243+update your wiki to not use the outdated (and now undocumented) features.
 244+
 245+* [1.3] Since SMW 1.3, the Factbox is hidden by default and will not appear.
 246+As a compensation, the toolbox (usually on the left below the search field)
 247+shows a link to Special:Browse. To use the display behaviour of the Factbox as
 248+it was before SMW 1.3, set $smwgShowFactbox = SMW_FACTBOX_NONEMPTY; The new
 249+link and the Factbox during editing can also be configured; see
 250+SMW_Settings.php for details.
 251+
 252+* [1.2.1] SMW will no longer support nested link syntax in property values by
 253+default, since this was known to cause problems. To re-enable this, set
 254+$smwgLinksInValues = true;
 255+
 256+* [1.2] The <ask> syntax and the Relation: namespace have still been officially
 257+supported in SMW 1.2, and were optionally available until SMW 1.4.*. Both are
 258+now disabled and can no longer be used.
 259+
 260+* [1.2] If you had a setting $smwgQDisjunctionSupport = false, then you now
 261+need the following settings:
 262+
 263+ $smwgQFeatures = SMW_ANY_QUERY & ~SMW_DISJUNCTION_QUERY;
 264+ $smwgQConceptFeatures = SMW_ANY_QUERY & ~SMW_DISJUNCTION_QUERY & ~SMW_CONCEPT_QUERY;
 265+
 266+Older configuration changes are found online, see
 267+http://semantic-mediawiki.org/wiki/Help:Installation_1.3
 268+
 269+
 270+== Troubleshooting ==
 271+
 272+Some technical problems are well known and have easy fixes. Please view the
 273+online manual: http://semantic-mediawiki.org/wiki/Help:Troubleshooting
 274+
 275+See http://semantic-mediawiki.org/wiki/Help:Reporting_bugs for reporting and
 276+looking up bugs. You can also send an email to
 277+semediawiki-user@lists.sourceforge.net (subscribe first at
 278+http://sourceforge.net/mailarchive/forum.php?forum_name=semediawiki-user)
 279+
 280+
 281+== SMW is installed. What should I do now? ==
 282+
 283+Semantic MediaWiki is there to help you to structure your data, so that you
 284+can browse and search it easier. Typically, you should first add semantic
 285+markup to articles that cover a topic that is typical for your wiki. A single
 286+article, semantic or not, will not improve your search capabilities.
 287+
 288+Start with a kind of article that occurs often in your wiki, possibly with
 289+some type of articles that is already collected in some category, such as
 290+cities, persons, or software projects. For these articles, introduce a few
 291+properties, and annotate many of the articles with the property. As with
 292+categories, less is often more in semantic annotation: do not use overly
 293+specific properties. A property that is not applicable to at least ten
 294+articles is hardly useful.
 295+
 296+Templates can greatly simplify initial annotation. Create a flashy template
 297+for your users to play with, and hide the semantic annotations in the code
 298+of the template. Use the ParserFunctions extension to implement optional
 299+parameters, so that your users can leave fields in the template unspecified
 300+without creating faulty annotations.
 301+
 302+Develop suitable inline queries ({{#ask: ... }}) along with any new
 303+annotation. If you don't know how to use some annotation for searching, or
 304+if you are not interested in searching for the annotated information anyway,
 305+then you should probably not take the effort in the first place. Annotate
 306+in a goal-directed way! Not all information can be extracted from the
 307+annotations in your wiki. E.g. one can currently not search for articles that
 308+are *not* in a given category. Think about what you want to ask for before
 309+editing half of your wiki with new semantics ...
 310+
 311+If in doubt, choose simple annotations and learn to combine them into more
 312+complex information. For example, you do not need to have a category for
 313+"European cities" -- just combine "located in::Europe" and "Category:City."
 314+If European cities are important for your wiki, you can create a Concept
 315+page for storing that particular query. In any case, if some annotation is
 316+not sufficient, you can still add more information. Cleaning too specific
 317+and possibly contradictory annotations can be more problematic.
 318+
 319+Regularly review users' use of categories, properties, and types using
 320+the Special pages for each.
 321+
 322+
 323+== Contact ==
 324+
 325+See "Contact" in the file README, or view the current online information
 326+http://semantic-mediawiki.org/wiki/Contact
 327+
 328+If you have remarks or questions, please send them to
 329+ semediawiki-user@lists.sourceforge.net
 330+You can join this mailing list at
 331+ http://sourceforge.net/mail/?group_id=147937
 332+
 333+Please report bugs to MediaZilla, http://bugzilla.wikimedia.org
Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/RELEASE-NOTES
@@ -0,0 +1,697 @@
 2+For a documentation of all features, see http://semantic-mediawiki.org
 3+
 4+== SMW 1.5.3 ==
 5+
 6+* Compatibility with MediaWiki 1.17
 7+* Added << and >> comparators for strict comparisons. Also added ≤ and ≥ for
 8+ non-strict comparisons. And introduced $smwStrictComparators setting that
 9+ allows changing the behaviour of < and > to doing strict comparisons.
 10+* Various style and documentation improvements and translation updates.
 11+
 12+== SMW 1.5.2 ==
 13+
 14+* 'Printouts' textarea in Special:Ask now has autocompletion on property
 15+ names.
 16+* SMW now has it's own copy of the jQuery and jQuery UI libraries.
 17+* Added a number of hooks to allow further customization by extensions.
 18+* 'Semantic' extension type that can be used by extensions to SMW to be
 19+ grouped together on Special:Version and other pages listing extensions.
 20+* Various bugfixes, style and documentation improvements and translation updates.
 21+
 22+== SMW 1.5.1 ==
 23+
 24+* Added query comparator "!~" that works like the negation of "~", i.e. that
 25+ retrieves exactly those values to which the provided pattern (with * and ?)
 26+ does not match.
 27+* Updated OWL/RDF export to include more data (modification dates, and page
 28+ namespaces). Changed export ontology to no longer use OWL AnnoationProperties
 29+ since OWL 2 DL supports property values also for classes/properties.
 30+* Improvements in code style and structure, following general MediaWiki
 31+ conventions. Most notably, the file to include for loading SMW now is
 32+ SemanticMediaWiki.php in the base directory (including the old Settings.php
 33+ will still work).
 34+* Preparation of future "SMWLight" release for wikis that want to enable users
 35+ to add property values to pages, but which do not want to include complex
 36+ query features.
 37+* Added a nmber of hooks to improve compatibility with extensions.
 38+* Various bugfixes, and translation updates.
 39+
 40+== SMW 1.5.0 ==
 41+
 42+* The former multi-valued/n-ary properties are now supported by a dedicated
 43+ datatype Record. Wikis that use the old style of these properties need to
 44+ update affected property pages as described at
 45+ http://semantic-mediawiki.org/wiki/SMW_1.5.0
 46+* The Type:Geographic_coordinates has been moved from SMW to the SemanticMaps
 47+ extension. Wikis that use this datatype need to install this extension to get
 48+ it back.
 49+* The "like" comparator ~ in inline queries is now enabled by default. To use
 50+ the former setting, use $smwgQComparators = '<|>|!'; in your LocalSettings.php.
 51+* A new datatype, "Telephone number", has been introduced for validating phone
 52+ numbers based on RFC 3966. Only global phone numbers are accepted, and no
 53+ vanity numbers (those containing letters) are allowed. Use Type:String if
 54+ you want to store more general strings as telephone numbers.
 55+* Support for additional parameters for ?printouts in inline queries, specified
 56+ by |+parameter=value after the printout. Currently supported are
 57+ * limit: set the maximum number of values for this printout
 58+ * order: order values ascending or descending
 59+ * align: right/center/left alignment for printouts in tables
 60+ * index: directly address one value of a multi-valued (n-ary) property
 61+* Support for inverse properties: use "-" in front of property names anywhere to
 62+ refer to the inverse direction of a property. Works in browsing interfaces,
 63+ queries, and query output directives. In queries only for properties of Type:Page.
 64+* New configuration options $smwgUseCategoryHierarchy and $smwgCategoriesAsInstances
 65+ to configure how MediaWiki categories should be interpreted by SMW.
 66+* Compatibility with new MediaWiki skin "Vector" and with MediaWiki 1.16.
 67+* Removed support for backwards compatibility to SMW <1.0 ($smwgSMWBetaCompatible).
 68+* The page Special:Ask was overhauled to include inputs for entering values
 69+ for the selected format's parameters, and to use Ajax where possible
 70+* To that end, each format's query printer now includes a getParameters()
 71+ function that supplies the name and attributes of each the format's parameters
 72+* "before" and "after" hooks for updateData() and deleteSubject() were added
 73+* A hook was added for deleteSemanticData() as well
 74+
 75+== SMW 1.4.3 ==
 76+
 77+See http://semantic-mediawiki.org/wiki/SMW_1.4.3
 78+
 79+* A new query format, 'category', that displays values in the style of a
 80+ MediaWiki category page
 81+* A new 'columns' parameter for the 'ol' and 'ul' formats
 82+* The 'csv' format now prints a header row by default
 83+* The "::~" comparator in queries can now also be used for properties of type
 84+ Geographical coordinate, to find points within a certain distance
 85+* Using "-" as an output format for query printouts, or leaving the formatting
 86+ string empty now leads to printout values being returned as plain, unformatted
 87+ values. Recall that the general format for printouts in #ask is as follows:
 88+ ?propertyname # format = label
 89+* New special property "Has improper value for" can be used to track input errors
 90+ (links pages where error happened to properties for which improper data was given).
 91+* New configuration parameter $smwgMaxNonExpNumber to set the maximal number that
 92+ SMW will normally display without using scientific exp notation. Defaults to
 93+ 1000000000000000.
 94+* New configuration parameter $smwgMaxPropertyValues to control number of values
 95+ that are shown for each page in the listing on Property pages. Defaults to 3.
 96+* Now a set of stores can be added, e.g. virtual stores, and then the new #ask
 97+ parameter "source" is used to rout to a specific store.
 98+* Labels for inverse properties can be used to improve the output of the Browse
 99+ special page.
 100+* The #ask parameter "headers" can now be given the value "plain" to get query
 101+ results that show the printout label (e.g. property name) but without a link.
 102+* Special:PageProperty now shows all values of a property when omitting the subject.
 103+* Numerous bugfixes
 104+
 105+== SMW 1.4.2 ==
 106+
 107+See http://semantic-mediawiki.org/wiki/SMW_1.4.2
 108+
 109+* Improved performance. Significantly improved memory usage on common
 110+ operations.
 111+* Initial support for running SMW on PostgreSQL (testing needed).
 112+* The query formats 'vcard' and 'icalendar' have been moved to the Semantic
 113+ Result Formats extension to make the SMW core more light-weight
 114+* SMW_refreshData.php now supports parameter --page to specify one or more
 115+ pages to be updated (instead of using ID ranges)
 116+* Various bugfixes
 117+* Extended translations
 118+
 119+== SMW 1.4.1 ==
 120+
 121+See http://semantic-mediawiki.org/wiki/SMW_1.4.1
 122+
 123+* Improved parsing support for Type:Date, fixing some open issues
 124+* Various bugfixes
 125+* Extended translations
 126+
 127+== SMW 1.4.0 ==
 128+
 129+See http://semantic-mediawiki.org/wiki/SMW_1.4.0
 130+
 131+* Easier installation, upgrade, repair:
 132+ Special:SMWAdmin now has a control for refreshing the wiki data online.
 133+* Better Type:Date
 134+ ** much larger range of dates, covering all of human history
 135+ ** internationalisation, support for localised date formats in input
 136+ ** support for single year numbers in dates
 137+ ** incomplete dates handled properly
 138+* Query for page modification date using Property:Modification_date
 139+* Full integration of "special properties" such as Property:Has_type
 140+ ** can be queried in #ask, and printed in printouts
 141+ ** usable in all browsing interfaces
 142+ ** display uses of properties on property page
 143+* Improved parsing process
 144+ ** avoid data loss in unusual circumstances
 145+ ** much better compatibility with other parser extensions
 146+* Shorter and cleaner code
 147+* Extended translations
 148+* Many bugfixes
 149+
 150+== Semantic MediaWiki 1.3 ==
 151+
 152+See http://semantic-mediawiki.org/wiki/SMW_1.3
 153+
 154+* New design of Special:Browse: more concise and less cluttered
 155+* Fuzzy search on Special:SearchByProperty: if an exact value is not found
 156+ or yields only few results, pages with close-by values are also shown.
 157+* Better result browsing on concept pages. Such pages now look like category
 158+ pages and show results in columns.
 159+* New mechanism for pre-computing concepts for very fast result display even
 160+ fomr complicated queries. Relevant for wikis with large amounts of data.
 161+ Details are documented at
 162+ http://semantic-mediawiki.org/wiki/Help:Concept_caching
 163+* Extended translations, support for aliases for special pages (translated
 164+ names used in URLs).
 165+* Various bugfixes and internal improvements for performance and robustness.
 166+
 167+== Semantic MediaWiki 1.2.2 ==
 168+
 169+Minor release with bugfixes:
 170+* in rare cases undelete would create errors on pages
 171+* inverse links for binary properties were displayed wrongly
 172+* some additional checks to make parsing more reliable
 173+
 174+== Semantic MediaWiki 1.2.1 ==
 175+
 176+See http://semantic-mediawiki.org/wiki/SMW_1.2.1
 177+
 178+* New sub-property display for property pages
 179+* Improved number parsing, admitting arbitrary spaces in numbers
 180+ (required for French)
 181+* Extended translations
 182+* Update job generation actually works now
 183+* Query format "csv" to export data as file of comma-separated values
 184+* Prevent crashes for very long property values (due to PHP PCRE)
 185+* Various other bugfixes
 186+
 187+
 188+== Semantic MediaWiki 1.2 ==
 189+
 190+See http://semantic-mediawiki.org/wiki/SMW_1.2
 191+
 192+* New SMW storage backend (SMWSQLStore2)
 193+ ** faster for queries and page display/rendering
 194+ ** full equality support built-in, no performance impact
 195+ ** support for disjunctions in queries (keyword "OR")
 196+* vCard export for query results
 197+* Improved semantic query syntax and processing
 198+ ** shortcut query syntax #show for displaying properties of
 199+ single pages, e.g. {{#show: Berlin | ?population}}
 200+ ** property chains like [[property1.property2::value]]
 201+ ** more detailed control of which query features to support
 202+ (see setting $smwgQFeatures in SMW_Settings.php)
 203+* Support for custom sortkey to control alphabetic sorting of
 204+ all pages, using MediaWiki's {{DEFAULTSORTKEY: custom key}}
 205+* Support for semantic interwiki links (e.g. [[property::meta:Test]])
 206+* Stored queries on Concept: pages (concepts as "dynamic categories"),
 207+ see http://semantic-mediawiki.org/wiki/Help:Concepts
 208+* Automated updates: changes in templates and property definitions
 209+ are automatically applied to affected pages (after some time)
 210+* Extended maintenance scripts
 211+ ** delete an existing (now unused) SMW store with SMW_setup --delete
 212+ ** select SMW storage engine to use for scripts with option -b <Store>
 213+ ** SMW_dumpRDF now supports restriction to concepts or concepts+categories
 214+* SMW <1.0 features disabled by default (remove obsolete features),
 215+ can be re-enabled with $smwgSMWBetaCompatible.
 216+* Compatible with Semantic Forms 1.2.3 and MediaWiki 1.13 (current devel
 217+ version)
 218+
 219+
 220+== Semantic MediaWiki 1.1.2 ==
 221+
 222+* Security update to avoid vulnerabilities on sites that use PHP
 223+ superglobals
 224+
 225+== Semantic MediaWiki 1.1.1 ==
 226+
 227+* Improved iCalendar support: more efficient processing, better heuristic
 228+ for giving dates, formatting bugfixes
 229+* Bugfix for Special:SearchByProperty (form-based search failed)
 230+* Minor bugfixes for RSS generation
 231+* Bugfix for Special_Ask in MediaWiki 1.11 with template formatting
 232+* Maintenance scripts now accept the MW_INSTALL_PATH environment variable
 233+
 234+== Semantic MediaWiki 1.1 ==
 235+
 236+* Support for formatted results on Special:Ask. "Further results" links
 237+ from inline queries now preserve format.
 238+* New iCalendar export for inline queries (format=icalendar)
 239+* Query results can now be sorted by more than one property (just separate
 240+ property names with "," in sort parameter)
 241+* Initial support (beta) for synching external RDF stores with SMW.
 242+ This also provides support for wiki-based SPARQL query services, see
 243+ http://semantic-mediawiki.org/wiki/Help:SPARQL_endpoint
 244+* More robust link generation code; even long query texts and links
 245+ that contain very special characters are built properly.
 246+* Extended translations. Completely new Arab translation.
 247+* New SMW registry http://semantic-mediawiki.org/wiki/Special:SMWRegistry
 248+ to replace hand-crafted list of "sites using SMW".
 249+* Various bugfixes. For example:
 250+ ** Enumerated properties (allows value) for Type:Page works now.
 251+ ** Page moves are handled more reliably
 252+
 253+== Semantic MediaWiki 1.0.1 ==
 254+
 255+* Extended translations, new Italian translation
 256+* minor bugfixes, fixed RSS links for long description texts
 257+
 258+== Changes in SMW1.0 as compared to SMW0.7 ==
 259+
 260+* Simplified semantic annotations: just one kind of annotation ("Property").
 261+* Significant speedup (both server and network load substantially reduced,
 262+ faster RDF export, more efficient query result formatting).
 263+* Prettier and easier to understand interfaces:
 264+ ** New tooltips for warnings and additional information.
 265+ ** Simplified factbox layout, with all properties in alphabetic order.
 266+ ** Inline warnings to simplify trouble shooting with annotations.
 267+ ** Improved, more helpful and informative warning and error messages.
 268+ ** Highlighting for built-in elements. E.g. built-in types are visually
 269+ distinguished from arbitrary types; useful as visual feedback.
 270+ ** Error/warning reporting for (inline) queries.
 271+* More powerful output formatting for semantic querying:
 272+ ** new {{#ask:...}} parser function syntax for inline queries, fully
 273+ compatible with MediaWiki templates, template parameters, and parser
 274+ functions of other extension
 275+ ** more readable inline query structure in #ask parser function,
 276+ printouts separated from query
 277+ ** semantic RSS feeds making feeds from query results via "format=rss"
 278+ ** new printout format "?Category:Name" for #ask
 279+ ** option to hide main column by setting "mainlabel=-", and reinserting
 280+ via print request "?" (only for #ask)
 281+* More expressivity for semantic querying:
 282+ ** support for subproperties,
 283+ ** improved equality resolution (redirects),
 284+ ** support for disjunctions,
 285+ ** inequality check for datavalues ("[[property::!value]]")
 286+ ** optional pattern matching for string values ("[[property::~Semant*]]")
 287+ ** automatic sorting on sort-parameter (no additional condition needed)
 288+* New/improved datatypes:
 289+ ** Type:Page for explicitly specifying properties that are "relations"
 290+ ** better media support in Type:Page: special treatment of Image: and Media:
 291+ ** Type:Number as universal replacement for Type:Integer and Type:Float
 292+ ** Type:URL as universal replacement for old Type:URL and Type:URI
 293+ ** Type:Geographic coordinates completely rewritten. More input formats
 294+ supported, more liberal parsing to accept most inputs
 295+ ** special property "allows value" works for all types
 296+ ** display units are now easier to select via property "display units"
 297+ ** Improved data display: URL-links and tooltips work for queries results
 298+ and on special pages
 299+* Improved special pages:
 300+ ** simpler interface for Special:Ask, hide query when using "further results" link
 301+ ** hints and warning for property usage/declaration in Special:Properties
 302+ ** extra information and warnings for types on Special:Types
 303+ ** Special:SemanticStatistics as faster replacement for earlier "ExtendedStatistics"
 304+* Better internationalisation:
 305+ ** updates in all translation files
 306+ ** new translations to Dutch, Chinese (tw/ch), Korean (beta)
 307+ ** alias strings for all SMW elements; English labels are allowed in all
 308+ languages, names of old SMW elements still work as aliases for their
 309+ replacements.
 310+* New experimental n-ary properties, allowing property values to consist of
 311+ a list of entries.
 312+* Ontology import re-enabled (simple annotation import)
 313+* Maintenance script SMW_refreshData now can rebuild all SMW data structures, fixing
 314+ even exotic database problems on most sites.
 315+* New maintenance script for announcing site to Semantic Web crawlers.
 316+* Support for upcoming MediaWiki 1.12
 317+* Improved APIs and various new hooks to simplify the life of SMW extension developers.
 318+* Many bugfixes.
 319+
 320+Other changes for SMW1.0 include:
 321+* Type:Enum became obsolete, since all types now suppport "allows value", but it
 322+ remains an alias for Type:String.
 323+* Some configuration options for LocalSettings.php have changed. Read INSTALL
 324+ for details on how to upgrade from your old installation.
 325+
 326+
 327+== Semantic MediaWiki post 1.0RC3 ==
 328+
 329+* Support for dynamic, query-generated RSS-feeds via query format "rss".
 330+* Optional query feature for pattern matching in Type:String property values.
 331+* Correct dynamic sorting of result tables, even for dates and numerical values.
 332+* Thumbnail images when displaying property values from Image namespace.
 333+* Simplified use of "sort" parameter in queries.
 334+* Support for upcoming MediaWiki 1.12 (major parser changes).
 335+* More efficient link generation in query results. Link all query results by
 336+ default now.
 337+* Maintenance script SMW_refreshData now can rebuild all SMW data structures,
 338+ fixing even exotic database problems on most sites.
 339+* New maintenance script for announcing site to Semantic Web crawlers.
 340+* Various bugfixes.
 341+
 342+== Semantic MediaWiki 1.0RC3 ==
 343+
 344+* New method for integrating inline queries via #ask parser function, separation of
 345+ query and printout requests, full compatibility with templates.
 346+* New layout for Special:Ask to reflect #ask structure.
 347+* New printout option: "?Category:Name" to ask for membership in that category.
 348+* Re-enabled service links (e.g. use [[provides service::online maps]] on any page of
 349+ a property to Type:Geographic coordinates).
 350+* Re-enabled Type:Boolean.
 351+* Prototype translation for Korean (still alpha).
 352+* Various minor bugfixes.
 353+
 354+== Semantic MediaWiki 1.0RC2 ==
 355+
 356+* Experimental Postgres support.
 357+* More liberal parsing for geographic coordinates, most user inputs accepted now.
 358+* Improved URL datatype: better linking behaviour, tolerant towards Unicode-URLs.
 359+* Significantly improved performance for RDF export.
 360+* Complete translations for Fr, Zh-tw, and Zh-ch added.
 361+* Various minor bugfixes.
 362+
 363+== Semantic MediaWiki 1.0RC1 ==
 364+
 365+* Simplified semantic annotations: just one kind of annotation ("Property").
 366+* Significant speedup (both server and network load substantially reduced).
 367+* Prettier and easier to understand interfaces:
 368+ ** New tooltips that work on both normal and special pages.
 369+ ** Simplified factbox layout, with all properties in alphabetic order.
 370+ ** Inline warnings to simplify trouble shooting with annotations.
 371+ ** Improved, more helpful and informative warning and error messages.
 372+ ** Highlighting for built-in elements. E.g. built-in types are visually
 373+ distinguished from arbitrary types; useful as visual feedback.
 374+ ** Error/warning reporting for (inline) queries.
 375+* Alias strings for all SMW elements. English labels are allowed in all
 376+ languages, names of old SMW elements still work as aliases for their
 377+ replacements.
 378+* More expressivity for semantic querying:
 379+ ** support for subproperties,
 380+ ** improved equality resolution (redirects),
 381+ ** support for disjunctions,
 382+ ** inequality check for datavalues ("[[property::!value]]")
 383+* New/improved datatypes:
 384+ ** Type:Page for explicitly specifying properties that are "relations"
 385+ ** Type:Number as universal replacement for Type:Integer and Type:Float
 386+ ** Type:URL as universal replacement for old Type:URL and Type:URI
 387+ ** Type:Geographic coordinates completely rewritten. More input formats
 388+ supported now (e.g. coordinates without "," separating Lat and Long)
 389+ ** special property "allows value" works for all types
 390+ ** display units are now easier to select via property "display units"
 391+ ** Improved data display: linked URLs and tooltips work for queries and
 392+ special pages
 393+* Improved maintenance special pages:
 394+ ** Hints and warning for property usage/declaration in Special:Properties
 395+ ** Extra information and warnings for types on Special:Types
 396+ ** Special:SemanticStatistics as faster replacement for earlier "ExtendedStatistics"
 397+* New experimental n-ary properties, allowing property values to consist of
 398+ a list of entries.
 399+* Ontology import re-enabled (simple annotation import)
 400+* Dutch translation added (by Siebrand Mazeland)
 401+* Improved APIs and various new hooks to simplify the life of SMW extension developers.
 402+* Many bugfixes.
 403+
 404+Other changes for the RC1 include:
 405+* No more support for Type:Boolean. Will be re-enabled later.
 406+* Type:Enum became obsolete, since all types now suppport "allows value", but it
 407+ remains an alias for Type:String.
 408+* Service links are not working in this Release Candidate yet, especially coordinate
 409+ values do not link to maps yet. This will reappear before SMW1.0 final.
 410+
 411+
 412+== Semantic MediaWiki 0.7 ==
 413+
 414+* New browsing interface for semantic data: Special:Browse
 415+* Improved simple searching interfaces, making the old Special:Searchtriple
 416+ obsolete by various new interlinked special pages.
 417+* New formatting options for inline queries:
 418+** Template-based formatting for formats "list" and "template"
 419+** Transclusion of result articles with format "embedded"
 420+** Counting query results with format count.
 421+* New datatype for enumerated string values (Type:Enum).
 422+* Pages of attributes and relations now list all uses of these properties.
 423+* Pages of types now list all attributes using a type.
 424+* New Special:WantedRelations showing relations that are used but have no page.
 425+* Improved support for arbitrary symbols in string values, including wiki links
 426+ and HTML entities (now correct in RDF).
 427+* Improved headers for query tables, with sort icon and link to attribute/relation
 428+ separated.
 429+* Added maintenance script to rebuild semantic data, thus fixing any inconsistencies
 430+ in the semantic database that may have occurred earlier or due to text-only imports
 431+ of pages.
 432+* Translations to further languages, including Hebrew (right-to-left).
 433+* New cleaner storage implementation, allowing to run MediaWiki parsertests with the
 434+ option $smwgDefaultStore = SMW_STORE_TESTING; in LocalSettings.php.
 435+* MediaWiki-1.10-Ready ;-)
 436+* Simplified installation (no more manual patching with MediaWiki 1.10).
 437+* Many bugfixes.
 438+
 439+== Semantic MediaWiki 0.6 ==
 440+
 441+* New Special:Ask for directly browsing query results and for testing queries.
 442+* New output format "timeline" for inline queries that deal with dates. Available
 443+ parameters are: timelinestart (name of start date attribute), timelineend (name
 444+ of end date attribute, if any), tiemlinesize (CSS-encoded height), timelinebands
 445+ (comma-separated list of bands such as DAY, WEEK, MONTH, YEAR, ...), and
 446+ timelineposition (one of start, end, today, middle).
 447+* Complete RDF export is now possible with a maintenance script, which can e.g. be
 448+ run periodically on a server to create RDF files.
 449+* New "service links" feature: any attribute can provide configurable links to
 450+ online services. As a special case, the map-services of geo-coordinates are now
 451+ fully configurable.
 452+* Inline queries now link to life search for further results if not all results
 453+ were shown inline.
 454+* The formatting code for inline queries was rewritten to become more powerful.
 455+ For instance, multi-property outputs in list format will never produce empty
 456+ parentheses now.
 457+* RDF-export code is cleaner and some further OWL DL incompatibilities are caught.
 458+* RDF-export now can generate browsable RDF (with backlinks) even for Category
 459+ pages.
 460+* Improved headers for sorting tables. Sort icon now visible even if no text is
 461+ shown in header.
 462+* Many bugfixes.
 463+
 464+== Semantic MediaWiki 0.5 ==
 465+
 466+* Customised datatypes for unit conversion: it is now possible to create customised
 467+ linear unit conversions by appropriate statements on type articles. This also
 468+ enables full localisation of all units of measurement.
 469+* Customized display of units: every attribute can now decide which units to display
 470+ in factbox and query results. Internally, values are still normalised, but users
 471+ can adjust the view to the most common description of some attribute.
 472+* Support for importing vocabularies from external ontologies. For instance, elements
 473+ of the wiki can now be mapped to the FOAF ontology during export. The import is
 474+ controlled by whitelist-like message articles.
 475+* New attribute datatypes for URLs and URIs, some of which can be exported in RDF as
 476+ ObjectProperties. A blacklist is used to prevent technically problematic URIs from
 477+ being used there (e.g. most don't want to use OWL language elements as data).
 478+* New attribute datatype for temperature, since this cannot be defined by a linear
 479+ custom unit conversion.
 480+* Improved Special:Relations and Special:Attributes, including a quicklink to searching
 481+ occurrences of some annotation.
 482+* Unit support for inline queries. Desired output unit can be adjusted through query.
 483+* Improved code layout, using object-orientation features of PHP5.
 484+* Many bugfixes.
 485+
 486+== Semantic MediaWiki 0.4.3.2 ==
 487+
 488+This fixes another small bug that prevented the limit parameter in queries to work
 489+properly.
 490+
 491+== Semantic MediaWiki 0.4.3.1 ==
 492+
 493+This fixes a small but critical bug that prevented queries for non-numeric attribute
 494+values to work properly.
 495+
 496+== Semantic MediaWiki 0.4.3 ==
 497+
 498+Semantic MediaWiki 0.4.3 is an intermediate release that greatly improves the
 499+performance and features of inline queries. It also includes some major code
 500+cleanups and various bugfixes.
 501+
 502+An updated documentation of the current inline queries is (soon) to be found at
 503+http://semantic-mediawiki.org/wiki/Help:Inline_queries
 504+
 505+== Semantic MediaWiki 0.4 ==
 506+
 507+Semantic MediaWiki 0.4 includes the following new features:
 508+
 509+* Support for inline queries: it is now possible to <ask> queries in
 510+ articles, the answers of which are included into the displayed page.
 511+ Conjunctions and nesting of queries is supported. Datatype queries
 512+ for values above or below some threshold are possible. Outputs can be
 513+ displayed in many different formats, including bulleted and numbered
 514+ lists, tables with intercative (JScript) sorting (credits go to
 515+ Stuart Langridge for www.kryogenix.org/code/browser/sorttable/), and
 516+ plain text. See http://semantic-mediawiki.org/wiki/Help:Inline_queries
 517+ for documentation.
 518+* Improved output for Special:Relations and Special:Attributes: usage of
 519+ relations and attributes is now counted
 520+* Improved ontology import feature, allowing to import ontologies and to
 521+ update existing pages with new ontological information
 522+* Experimental support for date/time datatype
 523+* More datatypes with units: mass and time duration
 524+* Support for EXP-notation with numbers, as e.g. 2.345e13. Improved number
 525+ formatting in infobox.
 526+* Configurable infobox: infobox can be hidden if empty, or switched off
 527+ completely. This also works around a bug with MediaWiki galeries.
 528+* Prototype version of Special:Types, showing all available datatypes with
 529+ their names in the current language setting.
 530+* "[[:located in::Paris]]" will now be rendered as "located in [[Paris]]"
 531+* More efficient storage: changed database layout, indexes for fast search
 532+* Code cleaned up, new style guidelines
 533+* Bugfixes, bugfixes, and some more bugfixes
 534+
 535+Semantic MediaWiki 0.4 has not been tested on MediaWiki below 1.6.1 and might
 536+fail to operate correctly in this case. Some functions explicitly use code
 537+that was introduced in 1.6.
 538+
 539+== Semantic MediaWiki 0.3 ==
 540+
 541+Changes by mak (0.3, 06 Apr 2006):
 542+
 543+* Compatibility updates for MediaWiki 1.6
 544+
 545+Changes by denny/mak (0.3, 25 Mar 2006):
 546+
 547+* Internal: improved management of special properties
 548+* RDF export: OWL conformant export of all available content data, including category information
 549+* RDF export: recursive export, "streaming"
 550+* UI: further internationalization, internationalized float number format (decimal separator)
 551+* UI: new infobox section for recognized special properties
 552+* new Specials to show all relations/attibutes
 553+* new experimental Special to import data from existing OWL/RDF ontologies
 554+* new special property "equivalent URI" that allows to map wiki concepts to URIs in other ontologies
 555+
 556+Changes by kai/mak (0.3preview, 15 Mar 2006):
 557+
 558+* Internal: new internal storage management; cleaner, more flexible, and more efficient
 559+* Internal: new internal type registration API
 560+* Internal: new internal management for special properties (e.g. 'has type')
 561+* Internationalization: almost complete; namespaces, special properties (e.g. 'has type'), datatype labels
 562+* RDF export: support for multiple mimetypes (rdf+xml and xml); needed for Piggybank
 563+* RDF export: support for bulk export
 564+* RDF export: XSD datatypes and correct instance classification (rdf:type)
 565+* UI: extended Special:SMWAdmin to convert data from old internal datatable to new format
 566+* UI: duplicate attribute values eliminated in infobox
 567+* UI: types can switch off quicksearch links
 568+* UI: more human-oriented error mesages ;-)
 569+* UI: service links for infobox and search
 570+* new datatype for geographic coordinates, accepting many kinds of coordinate inputs, and providing links to standard mapsources
 571+* Simple semantic search supports imprecise search again
 572+
 573+Changes by mak (0.2c, 9 Mar 2006):
 574+
 575+* added basic language support functionality
 576+* improved installation process (SMW_LocalSettings.php, simpler patching for Setup.php)
 577+
 578+Changes by mak (0.2c, 1 Mar 2006):
 579+
 580+* RDF Export enabled
 581+* more CSS and an icon to show RDF download link on pages
 582+
 583+Changes by kai/mak (0.2c, Feb 2006):
 584+
 585+* Added new custom stylesheet and JScript (kai/mak)
 586+* New JScript tooltips (kai)
 587+* New style for infobox search items (mak)
 588+
 589+Changes by mak (0.2c, Feb 2006):
 590+
 591+* Added new Special:SMWAdmin that allows relatively painless upgrade
 592+ from versions <=0.2 where no namespaces were used.
 593+* Added support for moving pages with its stored triples.
 594+* BUGFIX: triples in articles with SQL-hostile symbols (e.g. ') are
 595+ now working.
 596+
 597+== Semantic MediaWiki 0.2b ==
 598+
 599+Changes by mak (0.2b, Jan 2006):
 600+* Changed directory structure for more clarity, easier installation
 601+ and upgrade.
 602+* Now using custom namespaces for Relations, Attributes, and Types,
 603+ and their talks.
 604+* Semantic features can be switched on or off for each namespace
 605+ individually.
 606+* Registered extension for MediaWiki's "Special:Version".
 607+* BUGFIX: Configuration now takes fixed servername to use in storing
 608+ URIs. Before, different access methods (e.g. direct IP vs. servername)
 609+ generated different URIs.
 610+* BUGFIX: Attributes that could not be parsed now do not generate
 611+ triples with empty object in our database.
 612+
 613+Changes by mak (0.2a, 4 Dec 2005):
 614+* Attribute values are now correctly stored and retrieved.
 615+* Special SearchTriple greatly enhanced, such that queries for
 616+ attributes become possible (including unit conversion).
 617+* Links from attributes in infobox to the new search form.
 618+* Major code cleanup: SMW_AttributeStore.php now is called
 619+ SMW_SemanticData.php and managemes all types of semantic
 620+ data, including printout and storage. SMW_Hooks.php was freed
 621+ of all code with similar purpose. Look-up of attribute types
 622+ was moved from SemanticData to Datatype.
 623+
 624+Changes by mak (0.1b, 1 Dec 2005):
 625+* Reworked internal data representation. All information now is
 626+ properly encoded in URIs and decoded for display. This is an
 627+ important prerequisite for storing attributes and auxilliary
 628+ triples, which otherwise could not be distinguished from the
 629+ relational information.
 630+* New Special SearchTriple to replace the current SearchSemantic,
 631+ which is currently only half functional since it believes that
 632+ the database contains only simple names for articles, but not
 633+ full URIs.
 634+* Minor adjustments in handling of namespaces: namespaced aritcles
 635+ now properly work as subjects and are displayed with namespace in
 636+ in the infobox.
 637+
 638+Changes by mak (0.1b, 19 Nov 2005):
 639+
 640+* New type management; attributes can now be declared by creating
 641+ relations of type "has type" inside their articles (Attribute:X).
 642+ Possible targets are the builtin types (Type:String, Type:Geographic
 643+ length, etc.).
 644+* New internal method SMWGetTriples for directly retrieving triples
 645+ from the storage. Accepts subject, predicate, object pairs, where
 646+ any two can be left out.
 647+* Improved layout for infoboxes.
 648+
 649+Changes by mak (0.1b, 13 Nov 2005):
 650+
 651+* added support for separator "," in data numbers,
 652+* added tooltips for unit conversion.
 653+
 654+Changes by mak (0.1b, 17 Oct 2005):
 655+
 656+* added attribute support [[attribute name:=value|alternative text]];
 657+ currently, parsing these within the article works, including an
 658+ info box at the bottom; however, assignment from attributes to
 659+ datatypes is still hardcoded and attribute-annotations are neither
 660+ stored as triples nor are they supported in search,
 661+* added basic type support for STRING, INTEGER, and FLOAT,
 662+* added framework for unit conversion and first unit support: unit
 663+ conversion is achieved by callback functions, so that adding types
 664+ for new units boils down to writing a single unit conversion function,
 665+* code split into several files for easier colaboration of developers,
 666+* new naming convention "SMW"-prefix for all top level code elements of
 667+ the extension,
 668+* moved main storage methods to SMW_Storage.php, this should simplify
 669+ the conversion to another storage backend (triplestore),
 670+* moved stripping of semantic relations to SMW_Stripsemantics.php;
 671+ if this feature is desired, this file needs to be updated slightly
 672+ (also to include semantic attributes) and its methods connected to
 673+ their appropriate hooks as done in 0.1
 674+
 675+Changes by mak (0.1a, 4 Oct 2005):
 676+
 677+* moved parsing process to ParserAfterStrip to support <nowiki>; it
 678+ has to be done even later to support template inclusion properly,
 679+* changed process of storing/retrieving: no more stripping of semantic
 680+ relations before saving -- the annotations now appear exactly where
 681+ the user has put them, keeping them easier to read and maintain,
 682+* parse only once: saving is based on the relations that were retrieved
 683+ during the earlier call of parse(); for this to work, saving needs to
 684+ be deferred -- it is currently done at ArticleSaveComplete [should
 685+ there be a dedicated hook for deferred saving?],
 686+* enabled removal of semantic links on article deletion,
 687+* changed layout of semantic links factsheet, including some neat grouping
 688+ feature.
 689+
 690+== Semantic MediaWiki 0.1 ==
 691+
 692+This is a pre-alpha version of the Semantic MediaWiki extensions.
 693+It includes:
 694+
 695+* support for typed links [[link type::link target|link label]],
 696+* rendering of fact sheet on semantic relations at article bottom,
 697+* Special:SearchSemantic (alpha), featuring autocompletion for
 698+ link types.
Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/COPYING
@@ -0,0 +1,348 @@
 2+The license text below "----" applies to all files within this distribution, other
 3+than those that are in a directory which contains files named "LICENSE" or
 4+"COPYING", or a subdirectory thereof. For those files, the license text contained in
 5+said file overrides any license information contained in directories of smaller depth.
 6+Alternative licenses are typically used for software that is provided by external
 7+parties, and merely packaged with the Semantic MediaWiki release for convenience.
 8+----
 9+
 10+ GNU GENERAL PUBLIC LICENSE
 11+ Version 2, June 1991
 12+
 13+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
 14+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 15+ Everyone is permitted to copy and distribute verbatim copies
 16+ of this license document, but changing it is not allowed.
 17+
 18+ Preamble
 19+
 20+ The licenses for most software are designed to take away your
 21+freedom to share and change it. By contrast, the GNU General Public
 22+License is intended to guarantee your freedom to share and change free
 23+software--to make sure the software is free for all its users. This
 24+General Public License applies to most of the Free Software
 25+Foundation's software and to any other program whose authors commit to
 26+using it. (Some other Free Software Foundation software is covered by
 27+the GNU Library General Public License instead.) You can apply it to
 28+your programs, too.
 29+
 30+ When we speak of free software, we are referring to freedom, not
 31+price. Our General Public Licenses are designed to make sure that you
 32+have the freedom to distribute copies of free software (and charge for
 33+this service if you wish), that you receive source code or can get it
 34+if you want it, that you can change the software or use pieces of it
 35+in new free programs; and that you know you can do these things.
 36+
 37+ To protect your rights, we need to make restrictions that forbid
 38+anyone to deny you these rights or to ask you to surrender the rights.
 39+These restrictions translate to certain responsibilities for you if you
 40+distribute copies of the software, or if you modify it.
 41+
 42+ For example, if you distribute copies of such a program, whether
 43+gratis or for a fee, you must give the recipients all the rights that
 44+you have. You must make sure that they, too, receive or can get the
 45+source code. And you must show them these terms so they know their
 46+rights.
 47+
 48+ We protect your rights with two steps: (1) copyright the software, and
 49+(2) offer you this license which gives you legal permission to copy,
 50+distribute and/or modify the software.
 51+
 52+ Also, for each author's protection and ours, we want to make certain
 53+that everyone understands that there is no warranty for this free
 54+software. If the software is modified by someone else and passed on, we
 55+want its recipients to know that what they have is not the original, so
 56+that any problems introduced by others will not reflect on the original
 57+authors' reputations.
 58+
 59+ Finally, any free program is threatened constantly by software
 60+patents. We wish to avoid the danger that redistributors of a free
 61+program will individually obtain patent licenses, in effect making the
 62+program proprietary. To prevent this, we have made it clear that any
 63+patent must be licensed for everyone's free use or not licensed at all.
 64+
 65+ The precise terms and conditions for copying, distribution and
 66+modification follow.
 67+
 68+ GNU GENERAL PUBLIC LICENSE
 69+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 70+
 71+ 0. This License applies to any program or other work which contains
 72+a notice placed by the copyright holder saying it may be distributed
 73+under the terms of this General Public License. The "Program", below,
 74+refers to any such program or work, and a "work based on the Program"
 75+means either the Program or any derivative work under copyright law:
 76+that is to say, a work containing the Program or a portion of it,
 77+either verbatim or with modifications and/or translated into another
 78+language. (Hereinafter, translation is included without limitation in
 79+the term "modification".) Each licensee is addressed as "you".
 80+
 81+Activities other than copying, distribution and modification are not
 82+covered by this License; they are outside its scope. The act of
 83+running the Program is not restricted, and the output from the Program
 84+is covered only if its contents constitute a work based on the
 85+Program (independent of having been made by running the Program).
 86+Whether that is true depends on what the Program does.
 87+
 88+ 1. You may copy and distribute verbatim copies of the Program's
 89+source code as you receive it, in any medium, provided that you
 90+conspicuously and appropriately publish on each copy an appropriate
 91+copyright notice and disclaimer of warranty; keep intact all the
 92+notices that refer to this License and to the absence of any warranty;
 93+and give any other recipients of the Program a copy of this License
 94+along with the Program.
 95+
 96+You may charge a fee for the physical act of transferring a copy, and
 97+you may at your option offer warranty protection in exchange for a fee.
 98+
 99+ 2. You may modify your copy or copies of the Program or any portion
 100+of it, thus forming a work based on the Program, and copy and
 101+distribute such modifications or work under the terms of Section 1
 102+above, provided that you also meet all of these conditions:
 103+
 104+ a) You must cause the modified files to carry prominent notices
 105+ stating that you changed the files and the date of any change.
 106+
 107+ b) You must cause any work that you distribute or publish, that in
 108+ whole or in part contains or is derived from the Program or any
 109+ part thereof, to be licensed as a whole at no charge to all third
 110+ parties under the terms of this License.
 111+
 112+ c) If the modified program normally reads commands interactively
 113+ when run, you must cause it, when started running for such
 114+ interactive use in the most ordinary way, to print or display an
 115+ announcement including an appropriate copyright notice and a
 116+ notice that there is no warranty (or else, saying that you provide
 117+ a warranty) and that users may redistribute the program under
 118+ these conditions, and telling the user how to view a copy of this
 119+ License. (Exception: if the Program itself is interactive but
 120+ does not normally print such an announcement, your work based on
 121+ the Program is not required to print an announcement.)
 122+
 123+These requirements apply to the modified work as a whole. If
 124+identifiable sections of that work are not derived from the Program,
 125+and can be reasonably considered independent and separate works in
 126+themselves, then this License, and its terms, do not apply to those
 127+sections when you distribute them as separate works. But when you
 128+distribute the same sections as part of a whole which is a work based
 129+on the Program, the distribution of the whole must be on the terms of
 130+this License, whose permissions for other licensees extend to the
 131+entire whole, and thus to each and every part regardless of who wrote it.
 132+
 133+Thus, it is not the intent of this section to claim rights or contest
 134+your rights to work written entirely by you; rather, the intent is to
 135+exercise the right to control the distribution of derivative or
 136+collective works based on the Program.
 137+
 138+In addition, mere aggregation of another work not based on the Program
 139+with the Program (or with a work based on the Program) on a volume of
 140+a storage or distribution medium does not bring the other work under
 141+the scope of this License.
 142+
 143+ 3. You may copy and distribute the Program (or a work based on it,
 144+under Section 2) in object code or executable form under the terms of
 145+Sections 1 and 2 above provided that you also do one of the following:
 146+
 147+ a) Accompany it with the complete corresponding machine-readable
 148+ source code, which must be distributed under the terms of Sections
 149+ 1 and 2 above on a medium customarily used for software interchange; or,
 150+
 151+ b) Accompany it with a written offer, valid for at least three
 152+ years, to give any third party, for a charge no more than your
 153+ cost of physically performing source distribution, a complete
 154+ machine-readable copy of the corresponding source code, to be
 155+ distributed under the terms of Sections 1 and 2 above on a medium
 156+ customarily used for software interchange; or,
 157+
 158+ c) Accompany it with the information you received as to the offer
 159+ to distribute corresponding source code. (This alternative is
 160+ allowed only for noncommercial distribution and only if you
 161+ received the program in object code or executable form with such
 162+ an offer, in accord with Subsection b above.)
 163+
 164+The source code for a work means the preferred form of the work for
 165+making modifications to it. For an executable work, complete source
 166+code means all the source code for all modules it contains, plus any
 167+associated interface definition files, plus the scripts used to
 168+control compilation and installation of the executable. However, as a
 169+special exception, the source code distributed need not include
 170+anything that is normally distributed (in either source or binary
 171+form) with the major components (compiler, kernel, and so on) of the
 172+operating system on which the executable runs, unless that component
 173+itself accompanies the executable.
 174+
 175+If distribution of executable or object code is made by offering
 176+access to copy from a designated place, then offering equivalent
 177+access to copy the source code from the same place counts as
 178+distribution of the source code, even though third parties are not
 179+compelled to copy the source along with the object code.
 180+
 181+ 4. You may not copy, modify, sublicense, or distribute the Program
 182+except as expressly provided under this License. Any attempt
 183+otherwise to copy, modify, sublicense or distribute the Program is
 184+void, and will automatically terminate your rights under this License.
 185+However, parties who have received copies, or rights, from you under
 186+this License will not have their licenses terminated so long as such
 187+parties remain in full compliance.
 188+
 189+ 5. You are not required to accept this License, since you have not
 190+signed it. However, nothing else grants you permission to modify or
 191+distribute the Program or its derivative works. These actions are
 192+prohibited by law if you do not accept this License. Therefore, by
 193+modifying or distributing the Program (or any work based on the
 194+Program), you indicate your acceptance of this License to do so, and
 195+all its terms and conditions for copying, distributing or modifying
 196+the Program or works based on it.
 197+
 198+ 6. Each time you redistribute the Program (or any work based on the
 199+Program), the recipient automatically receives a license from the
 200+original licensor to copy, distribute or modify the Program subject to
 201+these terms and conditions. You may not impose any further
 202+restrictions on the recipients' exercise of the rights granted herein.
 203+You are not responsible for enforcing compliance by third parties to
 204+this License.
 205+
 206+ 7. If, as a consequence of a court judgment or allegation of patent
 207+infringement or for any other reason (not limited to patent issues),
 208+conditions are imposed on you (whether by court order, agreement or
 209+otherwise) that contradict the conditions of this License, they do not
 210+excuse you from the conditions of this License. If you cannot
 211+distribute so as to satisfy simultaneously your obligations under this
 212+License and any other pertinent obligations, then as a consequence you
 213+may not distribute the Program at all. For example, if a patent
 214+license would not permit royalty-free redistribution of the Program by
 215+all those who receive copies directly or indirectly through you, then
 216+the only way you could satisfy both it and this License would be to
 217+refrain entirely from distribution of the Program.
 218+
 219+If any portion of this section is held invalid or unenforceable under
 220+any particular circumstance, the balance of the section is intended to
 221+apply and the section as a whole is intended to apply in other
 222+circumstances.
 223+
 224+It is not the purpose of this section to induce you to infringe any
 225+patents or other property right claims or to contest validity of any
 226+such claims; this section has the sole purpose of protecting the
 227+integrity of the free software distribution system, which is
 228+implemented by public license practices. Many people have made
 229+generous contributions to the wide range of software distributed
 230+through that system in reliance on consistent application of that
 231+system; it is up to the author/donor to decide if he or she is willing
 232+to distribute software through any other system and a licensee cannot
 233+impose that choice.
 234+
 235+This section is intended to make thoroughly clear what is believed to
 236+be a consequence of the rest of this License.
 237+
 238+ 8. If the distribution and/or use of the Program is restricted in
 239+certain countries either by patents or by copyrighted interfaces, the
 240+original copyright holder who places the Program under this License
 241+may add an explicit geographical distribution limitation excluding
 242+those countries, so that distribution is permitted only in or among
 243+countries not thus excluded. In such case, this License incorporates
 244+the limitation as if written in the body of this License.
 245+
 246+ 9. The Free Software Foundation may publish revised and/or new versions
 247+of the General Public License from time to time. Such new versions will
 248+be similar in spirit to the present version, but may differ in detail to
 249+address new problems or concerns.
 250+
 251+Each version is given a distinguishing version number. If the Program
 252+specifies a version number of this License which applies to it and "any
 253+later version", you have the option of following the terms and conditions
 254+either of that version or of any later version published by the Free
 255+Software Foundation. If the Program does not specify a version number of
 256+this License, you may choose any version ever published by the Free Software
 257+Foundation.
 258+
 259+ 10. If you wish to incorporate parts of the Program into other free
 260+programs whose distribution conditions are different, write to the author
 261+to ask for permission. For software which is copyrighted by the Free
 262+Software Foundation, write to the Free Software Foundation; we sometimes
 263+make exceptions for this. Our decision will be guided by the two goals
 264+of preserving the free status of all derivatives of our free software and
 265+of promoting the sharing and reuse of software generally.
 266+
 267+ NO WARRANTY
 268+
 269+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
 270+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
 271+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
 272+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
 273+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 274+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
 275+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
 276+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
 277+REPAIR OR CORRECTION.
 278+
 279+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
 280+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
 281+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
 282+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
 283+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
 284+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
 285+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
 286+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
 287+POSSIBILITY OF SUCH DAMAGES.
 288+
 289+ END OF TERMS AND CONDITIONS
 290+
 291+ How to Apply These Terms to Your New Programs
 292+
 293+ If you develop a new program, and you want it to be of the greatest
 294+possible use to the public, the best way to achieve this is to make it
 295+free software which everyone can redistribute and change under these terms.
 296+
 297+ To do so, attach the following notices to the program. It is safest
 298+to attach them to the start of each source file to most effectively
 299+convey the exclusion of warranty; and each file should have at least
 300+the "copyright" line and a pointer to where the full notice is found.
 301+
 302+ <one line to give the program's name and a brief idea of what it does.>
 303+ Copyright (C) <year> <name of author>
 304+
 305+ This program is free software; you can redistribute it and/or modify
 306+ it under the terms of the GNU General Public License as published by
 307+ the Free Software Foundation; either version 2 of the License, or
 308+ (at your option) any later version.
 309+
 310+ This program is distributed in the hope that it will be useful,
 311+ but WITHOUT ANY WARRANTY; without even the implied warranty of
 312+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 313+ GNU General Public License for more details.
 314+
 315+ You should have received a copy of the GNU General Public License
 316+ along with this program; if not, write to the Free Software
 317+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 318+
 319+
 320+Also add information on how to contact you by electronic and paper mail.
 321+
 322+If the program is interactive, make it output a short notice like this
 323+when it starts in an interactive mode:
 324+
 325+ Gnomovision version 69, Copyright (C) year name of author
 326+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
 327+ This is free software, and you are welcome to redistribute it
 328+ under certain conditions; type `show c' for details.
 329+
 330+The hypothetical commands `show w' and `show c' should show the appropriate
 331+parts of the General Public License. Of course, the commands you use may
 332+be called something other than `show w' and `show c'; they could even be
 333+mouse-clicks or menu items--whatever suits your program.
 334+
 335+You should also get your employer (if you work as a programmer) or your
 336+school, if any, to sign a "copyright disclaimer" for the program, if
 337+necessary. Here is a sample; alter the names:
 338+
 339+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
 340+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
 341+
 342+ <signature of Ty Coon>, 1 April 1989
 343+ Ty Coon, President of Vice
 344+
 345+This General Public License does not permit incorporating your program into
 346+proprietary programs. If your program is a subroutine library, you may
 347+consider it more useful to permit linking proprietary applications with the
 348+library. If this is what you want to do, use the GNU Library General
 349+Public License instead of this License.
\ No newline at end of file
Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/SMW_Settings.php
@@ -0,0 +1,458 @@
 2+<?php
 3+
 4+/**
 5+ * @file
 6+ * @ingroup SMW
 7+ */
 8+
 9+#################################################################
 10+# CHANGING THE CONFIGURATION FOR SEMANTIC MEDIAWIKI #
 11+#################################################################
 12+# Do not change this file directly, but copy custom settings #
 13+# into your LocalSettings.php. Most settings should be make #
 14+# between including this file and the call to enableSemantics().#
 15+# Exceptions that need to be set before are documented below. #
 16+#################################################################
 17+
 18+if ( !defined( 'MEDIAWIKI' ) ) {
 19+ die( "This file is part of the Semantic MediaWiki extension. It is not a valid entry point.\n" );
 20+}
 21+
 22+###
 23+# This is the path to your installation of Semantic MediaWiki as seen from the
 24+# web. Change it if required ($wgScriptPath is the path to the base directory
 25+# of your wiki). No final slash.
 26+##
 27+$smwgScriptPath = (
 28+ ( version_compare( $wgVersion, '1.16', '>=' ) && isset( $wgExtensionAssetsPath ) && $wgExtensionAssetsPath )
 29+ ? $wgExtensionAssetsPath : $wgScriptPath . '/extensions'
 30+ ) . '/SemanticMediaWiki';
 31+##
 32+
 33+###
 34+# This is the path to your installation of Semantic MediaWiki as seen on your
 35+# local filesystem. Used against some PHP file path issues.
 36+# If needed, you can also change this path in LocalSettings.php after including
 37+# this file.
 38+##
 39+$smwgIP = dirname( __FILE__ ) . '/';
 40+##
 41+
 42+###
 43+# Use another storage backend for Semantic MediaWiki. The default is suitable
 44+# for most uses of SMW.
 45+##
 46+$smwgDefaultStore = "SMWSQLStore2";
 47+##
 48+
 49+// load global constants and setup functions
 50+require_once( 'includes/SMW_Setup.php' );
 51+
 52+###
 53+# If you already have custom namespaces on your site, insert
 54+# $smwgNamespaceIndex = ???;
 55+# into your LocalSettings.php *before* including this file. The number ??? must
 56+# be the smallest even namespace number that is not in use yet. However, it
 57+# must not be smaller than 100.
 58+##
 59+smwfInitNamespaces();
 60+
 61+###
 62+# This setting allows you to select in which cases you want to have a factbox
 63+# appear below an article. Note that the Magic Words __SHOWFACTBOX__ and
 64+# __HIDEFACTBOX__ can be used to control Factbox display for individual pages.
 65+# Other options for this setting include:
 66+##
 67+// $smwgShowFactbox = SMW_FACTBOX_NONEMPTY; # show only those factboxes that have some content
 68+// $smwgShowFactbox = SMW_FACTBOX_SPECIAL # show only if special properties were set
 69+$smwgShowFactbox = SMW_FACTBOX_HIDDEN; # hide always
 70+// $smwgShowFactbox = SMW_FACTBOX_SHOWN; # show always, buggy and not recommended
 71+##
 72+
 73+###
 74+# Same as $smwgShowFactbox but for edit mode and same possible values.
 75+##
 76+$smwgShowFactboxEdit = SMW_FACTBOX_NONEMPTY;
 77+##
 78+
 79+###
 80+# Should the toolbox of each content page show a link to browse the properties
 81+# of that page using Special:Browse? This is a useful way to access properties
 82+# and it is somewhat more subtle than showing a Factbox on every page.
 83+##
 84+$smwgToolboxBrowseLink = true;
 85+##
 86+
 87+###
 88+# Should warnings be displayed in wikitexts right after the problematic input?
 89+# This affects only semantic annotations, not warnings that are displayed by
 90+# inline queries or other features.
 91+##
 92+$smwgInlineErrors = true;
 93+##
 94+
 95+###
 96+# Should SMW consider MediaWiki's subcategory hierarchy in querying? If set to
 97+# true, subcategories will always be interpreted like subclasses. For example,
 98+# if A is a subcategory of B then a query for all elements of B will also yield
 99+# all elements of A. If this setting is disabled, then subclass relationships
 100+# can still be given explicitly by using the property "subcategory of" on some
 101+# category page. Only if the setting is false will such annotations be shown in
 102+# the factbox (if enabled).
 103+##
 104+$smwgUseCategoryHierarchy = true;
 105+##
 106+
 107+###
 108+# Should category pages that use some [[Category:Foo]] statement be treated as
 109+# elements of the category Foo? If disabled, then it is not possible to make
 110+# category pages elements of other categories. See also the above setting
 111+# $smwgUseCategoryHierarchy.
 112+##
 113+$smwgCategoriesAsInstances = true;
 114+##
 115+
 116+###
 117+# Should SMW accept inputs like [[property::Some [[link]] in value]]? If
 118+# enabled, this may lead to PHP crashes (!) when very long texts are used as
 119+# values. This is due to limitations in the library PCRE that PHP uses for
 120+# pattern matching. The provoked PHP crashes will prevent requests from being
 121+# completed -- usually clients will receive server errors ("invalid response")
 122+# or be offered to download "index.php". It might be okay to enable this if
 123+# such problems are not observed in your wiki.
 124+##
 125+$smwgLinksInValues = false;
 126+##
 127+
 128+###
 129+# Settings for recurring events, created with the #set_recurring_event parser
 130+# function: the default number of instances defined, if no end date is set;
 131+# and the maximum number that can be defined, regardless of end date.
 132+##
 133+$smwgDefaultNumRecurringEvents = 100;
 134+$smwgMaxNumRecurringEvents = 500;
 135+##
 136+
 137+###
 138+# Should the browse view for incoming links show the incoming links via its
 139+# inverses, or shall they be displayed on the other side?
 140+##
 141+$smwgBrowseShowInverse = false;
 142+##
 143+
 144+###
 145+# Should the browse view always show the incoming links as well, and more of
 146+# the incoming values?
 147+##
 148+$smwgBrowseShowAll = true;
 149+##
 150+
 151+###
 152+# Should the search by property special page display nearby results when there
 153+# are only a few results with the exact value? Switch this off if this page has
 154+# performance problems.
 155+##
 156+$smwgSearchByPropertyFuzzy = true;
 157+
 158+###
 159+# Number results shown in the listings on pages in the namespaces Property,
 160+# Type, and Concept. If a value of 0 is given, the respective listings are
 161+# hidden completely.
 162+##
 163+$smwgTypePagingLimit = 200; // same number as for categories
 164+$smwgConceptPagingLimit = 200; // same number as for categories
 165+$smwgPropertyPagingLimit = 25; // use smaller value since property lists need more space
 166+##
 167+
 168+###
 169+# How many values should at most be displayed for a page on the Property page?
 170+##
 171+$smwgMaxPropertyValues = 3; // if large values are desired, consider reducing $smwgPropertyPagingLimit for better performance
 172+##
 173+
 174+###
 175+# Settings for inline queries ({{#ask:...}}) and for semantic queries in
 176+# general. This can especially be used to prevent overly high server-load due
 177+# to complex queries. The following settings affect all queries, wherever they
 178+# occur.
 179+##
 180+$smwgQEnabled = true; // (De)activates all query related features and interfaces
 181+$smwgQMaxLimit = 10000; // Max number of results *ever* retrieved, even when using special query pages.
 182+$smwgIgnoreQueryErrors = true; // Should queries be executed even if some errors were detected?
 183+ // A hint that points out errors is shown in any case.
 184+
 185+$smwgQSubcategoryDepth = 10; // Restrict level of sub-category inclusion (steps within category hierarchy)
 186+$smwgQSubpropertyDepth = 10; // Restrict level of sub-property inclusion (steps within property hierarchy)
 187+ // (Use 0 to disable hierarchy-inferencing in queries)
 188+$smwgQEqualitySupport = SMW_EQ_SOME; // Evaluate #redirects as equality between page names, with possible
 189+ // performance-relevant restrictions depending on the storage engine
 190+ // $smwgQEqualitySupport = SMW_EQ_FULL; // Evaluate #redirects as equality between page names in all cases
 191+ // $smwgQEqualitySupport = SMW_EQ_NONE; // Never evaluate #redirects as equality between page names
 192+$smwgQSortingSupport = true; // (De)activate sorting of results.
 193+$smwgQRandSortingSupport = true; // (De)activate random sorting of results.
 194+$smwgQDefaultNamespaces = null; // Which namespaces should be searched by default?
 195+ // (value NULL switches off default restrictions on searching -- this is faster)
 196+ // Example with namespaces: $smwgQDefaultNamespaces = array(NS_MAIN, NS_IMAGE);
 197+
 198+/**
 199+ * List of comparator characters supported by queries, separated by '|', for use in a regex.
 200+ *
 201+ * Available entries:
 202+ * < (smaller than) if $smwStrictComparators is false, it's actually smaller than or equal to
 203+ * > (greater than) if $smwStrictComparators is false, it's actually bigger than or equal to
 204+ * ! (unequal to)
 205+ * ~ (pattern with '*' as wildcard, only for Type:String)
 206+ * !~ (not a pattern with '*' as wildcard, only for Type:String, need to be placed before ! and ~ to work correctly)
 207+ * ≤ (smaller than or equal to)
 208+ * ≥ (greater than or equal to)
 209+ *
 210+ * If unsupported comparators are used, they are treated as part of the queried value
 211+ *
 212+ * @var string
 213+ */
 214+$smwgQComparators = '<|>|!~|!|~|≤|≥|<<|>>';
 215+
 216+###
 217+# Sets whether the > and < comparators should be strict or not. If they are strict,
 218+# values that are equal will not be accepted.
 219+##
 220+$smwStrictComparators = false;
 221+##
 222+
 223+###
 224+# Further settings for queries. The following settings affect inline queries
 225+# and querying special pages. Essentially they should mirror the kind of
 226+# queries that should immediately be answered by the wiki, using whatever
 227+# computations are needed.
 228+##
 229+$smwgQMaxSize = 12; // Maximal number of conditions in queries, use format=debug for example sizes
 230+$smwgQMaxDepth = 4; // Maximal property depth of queries, e.g. [[rel::<q>[[rel2::Test]]</q>]] has depth 2
 231+
 232+// The below setting defines which query features should be available by default.
 233+// Examples:
 234+// only cateory intersections: $smwgQFeatures = SMW_CATEGORY_QUERY | SMW_CONJUNCTION_QUERY;
 235+// only single concepts: $smwgQFeatures = SMW_CONCEPT_QUERY;
 236+// anything but disjunctions: $smwgQFeatures = SMW_ANY_QUERY & ~SMW_DISJUNCTION_QUERY;
 237+// The default is to support all basic features.
 238+$smwgQFeatures = SMW_PROPERTY_QUERY | SMW_CATEGORY_QUERY | SMW_CONCEPT_QUERY |
 239+ SMW_NAMESPACE_QUERY | SMW_CONJUNCTION_QUERY | SMW_DISJUNCTION_QUERY;
 240+
 241+### Settings about printout of (especially inline) queries:
 242+$smwgQDefaultLimit = 50; // Default number of rows returned in a query. Can be increased with limit=num in #ask
 243+$smwgQMaxInlineLimit = 500; // Max number of rows ever printed in a single inline query on a single page.
 244+$smwgQPrintoutLimit = 100; // Max number of supported printouts (added columns in result table, ?-statements)
 245+$smwgQDefaultLinking = 'all'; // Default linking behaviour. Can be one of "none", "subject" (first column), "all".
 246+
 247+
 248+###
 249+# Further settings for queries. The following settings affect queries that are
 250+# part of concept pages. These are usually chosen to be les restricted than
 251+# inline queries, since there are two other means for controling their use:
 252+# (1) Concept queries that would not be allowed as normal queries will not be
 253+# executed directly, but can use pre-computed results instead. This is the
 254+# default.
 255+# (2) The whole Concept: namespace can be restricted (using some suitable
 256+# MediaWiki extension) to an experienced user group that may create more
 257+# complex queries responably. Other users can employ thus defined concepts in
 258+# their queries.
 259+##
 260+$smwgQConceptCaching = CONCEPT_CACHE_HARD; // Which concepts should be displayed only if available from cache?
 261+ // CONCEPT_CACHE_ALL -- show concept elements anywhere only if they are cached
 262+ // CONCEPT_CACHE_HARD -- show without cache if concept is not harder than permitted inline queries
 263+ // CONCEPT_CACHE_NONE -- show all concepts even without any cache
 264+ // In any cases, caches will always be used if available.
 265+$smwgQConceptMaxSize = 20; // Same as $smwgQMaxSize, but for concepts
 266+$smwgQConceptMaxDepth = 8; // Same as $smwgQMaxDepth, but for concepts
 267+
 268+// Same as $smwgQFeatures but for concepts (note: using concepts in concepts is currently not supported!)
 269+$smwgQConceptFeatures = SMW_PROPERTY_QUERY | SMW_CATEGORY_QUERY | SMW_NAMESPACE_QUERY |
 270+ SMW_CONJUNCTION_QUERY | SMW_DISJUNCTION_QUERY;
 271+
 272+// Cache life time in minutes. If a concept cache exists but is older than
 273+// this, SMW tries to recompute it, and will only use the cache if this is not
 274+// allowed due to settings above:
 275+$smwgQConceptCacheLifetime = 24 * 60;
 276+
 277+
 278+### Predefined result formats for queries
 279+# Array of available formats for formatting queries. Can be redefined in
 280+# the settings to disallow certain formats or to register extension formats.
 281+# To disable a format, do "unset($smwgResultFormats['template']);" Disabled
 282+# formats will be treated like if the format parameter had been omitted. The
 283+# formats 'table' and 'list' are defaults that cannot be disabled. The format
 284+# 'broadtable' should not be disabled either in order not to break Special:ask.
 285+##
 286+$smwgResultFormats = array(
 287+ 'table' => 'SMWTableResultPrinter',
 288+ 'list' => 'SMWListResultPrinter',
 289+ 'ol' => 'SMWListResultPrinter',
 290+ 'ul' => 'SMWListResultPrinter',
 291+ 'broadtable' => 'SMWTableResultPrinter',
 292+ 'category' => 'SMWCategoryResultPrinter',
 293+ 'embedded' => 'SMWEmbeddedResultPrinter',
 294+ 'template' => 'SMWListResultPrinter',
 295+ 'count' => 'SMWListResultPrinter',
 296+ 'debug' => 'SMWListResultPrinter',
 297+ 'rss' => 'SMWRSSResultPrinter',
 298+ 'csv' => 'SMWCsvResultPrinter',
 299+ 'json' => 'SMWJSONResultPrinter'
 300+);
 301+##
 302+
 303+### Predefined aliases for result formats
 304+# Array of available aliases for result formats. Can be redefined in
 305+# the settings to disallow certain aliases or to register extension aliases.
 306+# To disable an alias, do "unset($smwgResultAliases['alias']);" Disabled
 307+# aliases will be treated like if the alias parameter had been omitted.
 308+##
 309+$smwgResultAliases = array();
 310+##
 311+
 312+### Predefined sources for queries
 313+# Array of available sources for answering queries. Can be redefined in
 314+# the settings to register new sources (usually an extension will do so
 315+# on installation). Unknown source will be rerouted to the local wiki.
 316+# Note that the basic installation comes with no additional source besides
 317+# the local source (which in turn cannot be disabled or set explicitly).
 318+# Set a new store like this: $smwgQuerySources['freebase'] = "SMWFreebaseStore";
 319+##
 320+$smwgQuerySources = array(
 321+// 'local' => '',
 322+);
 323+##
 324+
 325+### Default property type
 326+# Undefined properties (those without pages or whose pages have no "has type"
 327+# statement) will be assumed to be of this type. This is an internal type id.
 328+# See the file languages/SMW_LanguageXX.php to find what IDs to use for
 329+# datatpyes in your language. The default corresponds to "Type:Page".
 330+##
 331+$smwgPDefaultType = '_wpg';
 332+##
 333+
 334+###
 335+# Settings for RSS export
 336+##
 337+$smwgRSSEnabled = true; // use to switch off RSS (it's not worse than querying Special:Ask, but attracts more users)
 338+$smwgRSSWithPages = true; // Should RSS feeds deliver whole pages or just link to them?
 339+##
 340+
 341+###
 342+# Settings for OWL/RDF export
 343+##
 344+$smwgAllowRecursiveExport = false; // can normal users request recursive export?
 345+$smwgExportBacklinks = true; // should backlinks be included by default?
 346+// global $smwgNamespace; // The Namespace of exported URIs.
 347+// $smwgNamespace = "http://example.org/id/"; // Will be set automatically if
 348+// nothing is given, but in order to make pretty URIs you will need to set this
 349+// to something nice and adapt your Apache configuration appropriately. This is
 350+// done, e.g., on semanticweb.org, where URIs are of the form
 351+// http://semanticweb.org/id/FOAF
 352+##
 353+
 354+###
 355+# The maximal number that SMW will normally display without using scientific exp
 356+# notation. The deafult is rather large since some users have problems understanding
 357+# exponents. Scineitfic applications may prefer a smaller value for concise display.
 358+##
 359+$smwgMaxNonExpNumber = 1000000000000000;
 360+##
 361+
 362+###
 363+# SMW defers some tasks until after a page was edited by using the MediaWiki
 364+# job queueing system (see http://www.mediawiki.org/wiki/Manual:Job_queue).
 365+# For example, when the type of a property is changed, all affected pages will
 366+# be scheduled for (later) update. If a wiki generates too many jobs in this
 367+# way (Special:Statistics and "showJobs.php" can be used to check that), the
 368+# following setting can be used to disable jobs. Note that this will cause some
 369+# parts of the semantic data to get out of date, so that manual modifications
 370+# or the use of SMW_refreshData.php might be needed.
 371+##
 372+$smwgEnableUpdateJobs = true;
 373+##
 374+
 375+###
 376+# Overwriting the following array, you can define for which namespaces
 377+# the semantic links and annotations are to be evaluated. On other
 378+# pages, annotations can be given but are silently ignored. This is
 379+# useful since, e.g., talk pages usually do not have attributes and
 380+# the like. In fact, is is not obvious what a meaningful attribute of
 381+# a talk page could be. Pages without annotations will also be ignored
 382+# during full RDF export, unless they are referred to from another
 383+# article.
 384+##
 385+$smwgNamespacesWithSemanticLinks = array(
 386+ NS_MAIN => true,
 387+ NS_TALK => false,
 388+ NS_USER => true,
 389+ NS_USER_TALK => false,
 390+ NS_PROJECT => true,
 391+ NS_PROJECT_TALK => false,
 392+ NS_IMAGE => true,
 393+ NS_IMAGE_TALK => false,
 394+ NS_MEDIAWIKI => false,
 395+ NS_MEDIAWIKI_TALK => false,
 396+ NS_TEMPLATE => false,
 397+ NS_TEMPLATE_TALK => false,
 398+ NS_HELP => true,
 399+ NS_HELP_TALK => false,
 400+ NS_CATEGORY => true,
 401+ NS_CATEGORY_TALK => false,
 402+ SMW_NS_PROPERTY => true,
 403+ SMW_NS_PROPERTY_TALK => false,
 404+ SMW_NS_TYPE => true,
 405+ SMW_NS_TYPE_TALK => false,
 406+ SMW_NS_CONCEPT => true,
 407+ SMW_NS_CONCEPT_TALK => false,
 408+);
 409+##
 410+
 411+###
 412+# Properties (usually given as internal ids or DB key versions of property
 413+# titles) that are relevant for declaring the behaviour of a property P on a
 414+# property page in the sense that changing their values requires that all
 415+# pages that use P must be processed again. For example, if _PVAL (allowed
 416+# values) for a property change, then pages must be processed again. This
 417+# setting is not normally changed by users but by extensions that add new
 418+# types that have their own additional declaration properties.
 419+##
 420+$smwgDeclarationProperties = array( '_PVAL', '_LIST' );
 421+##
 422+
 423+// some default settings which usually need no modification
 424+
 425+###
 426+# -- FEATURE IS DISABLED --
 427+# Setting this to true allows to translate all the labels within
 428+# the browser GIVEN that they have interwiki links.
 429+##
 430+$smwgTranslate = false;
 431+
 432+###
 433+# -- FEATURE IS DISABLED --
 434+# If you want to import ontologies, you need to install RAP,
 435+# a free RDF API for PHP, see
 436+# http://www.wiwiss.fu-berlin.de/suhl/bizer/rdfapi/
 437+# The following is the path to your installation of RAP
 438+# (the directory where you extracted the files to) as seen
 439+# from your local filesystem. Note that ontology import is
 440+# highly experimental at the moment, and may not do what you
 441+# extect.
 442+##
 443+// $smwgRAPPath = $smwgIP . 'libs/rdfapi-php';
 444+// $smwgRAPPath = '/another/example/path/rdfapi-php';
 445+##
 446+
 447+###
 448+# If the following is set to true, it is possible to initiate the repairing
 449+# or updating of all wiki data using the interface on Special:SMWAdmin.
 450+##
 451+$smwgAdminRefreshStore = true;
 452+##
 453+
 454+###
 455+# Sets whether or not the 'printouts' textarea should have autocompletion
 456+# on property names.
 457+##
 458+$smwgAutocompleteInSpecialAsk = true;
 459+##
Property changes on: tags/extensions/SemanticMediaWiki/REL_1_5_3/SMW_Settings.php
___________________________________________________________________
Added: svn:eol-style
1460 + native
Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/README
@@ -0,0 +1,76 @@
 2+== About ==
 3+
 4+Semantic MediaWiki is a project for extending MediaWiki with "semantic"
 5+functions that enable machine-reading of wiki-content. For details and
 6+further links, see http://semantic-mediawiki.org
 7+
 8+Notes on installing Semantic MediaWiki are found in the file INSTALL.
 9+
 10+== Contact ==
 11+
 12+If you have remarks, questions, or suggestions, please send them to
 13+semediawiki-users@lists.sourceforge.net. You can subscribe to this
 14+list at
 15+http://sourceforge.net/mailarchive/forum.php?forum_name=semediawiki-user.
 16+
 17+Bugs should be filed at MediaZilla, http://bugzilla.wikimedia.org/.
 18+
 19+People who want to contribute work to the project should subscribe to
 20+the developers list, semediawiki-devel@lists.sourceforge.net.
 21+
 22+Specific inquiries (e.g. for press releases) should go to Markus Krötzsch,
 23+markus@semantic-mediawiki.org. Do not contact Markus directly if you just need
 24+free technical support -- that is what the user list is for.
 25+
 26+== Developers ==
 27+
 28+Development is coordinated by Markus Krötzsch and Denny Vrandecic.
 29+
 30+Semantic MediaWiki development is partially funded by Institut AIFB of the
 31+Karlsruhe Institute of Technology in Germany; see http://www.aifb.kit.edu
 32+Specific development tasks have been supported by the European Union under the
 33+projects SEKT, NeOn, and Active. SMW has also been supported in the
 34+Halo project funded by Vulcan Inc., where development is coordinated
 35+by ontoprise GmbH, Karlsruhe, Germany.
 36+
 37+== Contributors ==
 38+
 39+* Heiko Haller and Max Völkel contributed to the initial design and basic
 40+ architectural decisions.
 41+
 42+* The German company Doccheck (doccheck.com) helped to get the implementation
 43+ going at the early stages of the project, and set up the first testing wiki.
 44+ The first implementation was done by Klaus Lassleben.
 45+
 46+* Code has been contributed by (in no particular order) S Page, Kai Hüner,
 47+ Fernando Correia, Yaron Koren, Nick Grandy, Jörg Heizmann, Daniel Herzig,
 48+ Nikolas Iwan, Tobias Matzner, Thomas Bleher, Felix Kratzer, Frank Dengler,
 49+ Nathan R. Yergler, Daniel Friesen, Fabian Howahl, Jie Bao, Marcel Gsteiger,
 50+ Roi Avinoam, Richard Cyganiak, Sanyam Goyal, Jeroen De Dauw.
 51+
 52+* The logo and related artwork for Semantic MediaWiki (see semanticweb.org)
 53+ were designed and realised by Rozana Vrandecic.
 54+
 55+== Translations ==
 56+
 57+Translations to various languages are provided and maintained by many people.
 58+In general, main contributors can be found in the message files. Special thanks
 59+are due to Siebrand Mazeland and the translatewiki.net project for the
 60+excellent translation service they provide.
 61+
 62+== Credits to other projects ==
 63+
 64+* Most icons used by Semantic MediaWiki are derived from the "Crystal Clear"
 65+ icon theme for KDE, which was created by Everaldo (everaldo.com).
 66+
 67+* The sorttable JavaScript function was developed by Stuart Langridge,
 68+ and taken from http://www.kryogenix.org/code/browser/sorttable. The current
 69+ code for sorting tables is derived from this original code.
 70+
 71+* The code contains a minified version of the jQuery JavaScript library
 72+ (http://jquery.com/), developed by John Resig and the jQuery team.
 73+
 74+* Many people have contributed to the project by providing helpful comments and
 75+ suggestions. Among them are the members of the Semantic Wiki Interest Group
 76+ (swikig@aifb.uni-karlsruhe.de; see semanticweb.org), the people at the project
 77+ mailing lists, and a number of anonymous reviewers. Thanks a lot!
Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/SemanticMediaWiki.php
@@ -0,0 +1,18 @@
 2+<?php
 3+
 4+/**
 5+ * Main entry point for the Semantic MediaWiki extension.
 6+ */
 7+
 8+/**
 9+ * This documentation group collects source code files belonging to Semantic
 10+ * MediaWiki.
 11+ *
 12+ * For documenting extensions of SMW, please do not use groups starting with
 13+ * "SMW" but make your own groups instead. Browsing at
 14+ * http://semantic-mediawiki.org/doc/ is assumed to be easier this way.
 15+ *
 16+ * @defgroup SMW Semantic MediaWiki
 17+ */
 18+
 19+require_once dirname( __FILE__ ) . '/SMW_Settings.php';
\ No newline at end of file
Property changes on: tags/extensions/SemanticMediaWiki/REL_1_5_3/SemanticMediaWiki.php
___________________________________________________________________
Added: svn:eol-style
120 + native
Index: tags/extensions/SemanticMediaWiki/REL_1_5_3/SMW.hooks.php
@@ -0,0 +1,61 @@
 2+<?php
 3+
 4+/**
 5+ * Static class for hooks handled by the SMW extension.
 6+ *
 7+ * This class is an attempt to clean up SMW initialization, as it's rather messy at the moment,
 8+ * and the split between SMW and SMW light is not very clean.
 9+ *
 10+ * @since 1.5.3
 11+ *
 12+ * @file SMW.hooks.php
 13+ * @ingroup SMW
 14+ *
 15+ * @author Jeroen De Dauw
 16+ */
 17+final class SMWHooks {
 18+
 19+ /**
 20+ * Register the resource modules for the resource loader.
 21+ *
 22+ * @since 1.5.3
 23+ *
 24+ * @param ResourceLoader $resourceLoader
 25+ *
 26+ * @return true
 27+ */
 28+ public static function registerResourceLoaderModules( ResourceLoader &$resourceLoader ) {
 29+ global $wgContLang, $smwgScriptPath;
 30+
 31+ $modules = array(
 32+ 'ext.smw.style' => array(
 33+ 'styles' => 'SMW_custom.css'
 34+ ),
 35+ 'ext.smw.tooltips' => array(
 36+ 'scripts' => 'SMW_tooltip.js',
 37+ 'dependencies' => array(
 38+ 'mediawiki.legacy.wikibits',
 39+ 'ext.smw.style'
 40+ )
 41+ ),
 42+ 'ext.smw.sorttable' => array(
 43+ 'scripts' => 'SMW_sorttable.js',
 44+ 'dependencies' => 'ext.smw.style'
 45+ )
 46+ );
 47+
 48+ foreach ( $modules as $name => $resources ) {
 49+ $resourceLoader->register(
 50+ $name,
 51+ new ResourceLoaderFileModule(
 52+ array_merge_recursive( $resources, array( 'group' => 'ext.smw' ) ),
 53+ dirname( __FILE__ ) . '/skins',
 54+ $smwgScriptPath . '/skins'
 55+ )
 56+ );
 57+ }
 58+
 59+ return true;
 60+ }
 61+
 62+}
\ No newline at end of file
Property changes on: tags/extensions/SemanticMediaWiki/REL_1_5_3/SMW.hooks.php
___________________________________________________________________
Added: svn:eol-style
163 + native

Status & tagging log