Markus, great news! Looks like switch to 1.12 is inevitable for me ;)

I think speed optimizations might be even more important, especially for some large sites (hint-hint).

I wonder if "formats" idea I described in addition to "Concepts" to further minimize URLs makes sense - in any case, I'll start by testing default concept titles and descriptions first.

        Sergey


On Mon, Jul 7, 2008 at 4:51 AM, Markus Krötzsch <markus@semantic-mediawiki.org> wrote:
SMW 1.2 extends the options for controlling which queries users are allowed to
ask, and it has a mechanism that can be used to let some users ask more than
others ("permissions").

The detailed query control settings are achieved by the new configuration
parameter $smwgQFeatures. This parameter defines which query features are
allowed in #ask. The default is the following:

$smwgQFeatures = SMW_PROPERTY_QUERY | SMW_CATEGORY_QUERY | SMW_CONCEPT_QUERY |
         SMW_NAMESPACE_QUERY | SMW_CONJUNCTION_QUERY | SMW_DISJUNCTION_QUERY;

This allows all existing features to be used. Other possible settings could
be:

only category intersections:
 $smwgQFeatures = SMW_CATEGORY_QUERY | SMW_CONJUNCTION_QUERY;

only single concepts: (see earlier mail on concepts)
 $smwgQFeatures = SMW_CONCEPT_QUERY;

anything but disjunctions:
 $smwgQFeatures = SMW_ANY_QUERY & ~SMW_DISJUNCTION_QUERY;

So you can very clearly customise SMW queries. This affects only the #ask
queries. Queries stored as concepts have their own setting, called
$smwgQConceptFeatures. For example, concepts currently are not allowed to
refer to other concepts (recursion is not handled properly by SMW yet).

This gives you a way to restrict query creation to some user group of the
wiki:

* set $smwgQFeatures = SMW_CONCEPT_QUERY;
* configure MediaWiki to have the Concept: namespace being editable only by
some user groups (there are extensions for that, I have no further details
here, search the web).

Then #ask queries can only use single concepts and not be used to invent any
new queries. So you can have very complex queries, but have responsible
people creating them and making sure they are fine and fast in the wiki. You
can also set $smwgQFeatures = SMW_CONCEPT_QUERY | SMW_CONJUNCTION_QUERY; to
allow for conjunctions of multiple concepts, if desired, or you can further
include categories. This appears to be a good option especially for very
large sites that cannot afford users toying around with arbitrary queries for
reasons of performance. This restriction was not tested thoroughly yet (so do
not rely on this performance safety).

Restricting complex queries to concept will become even more useful as soon as
SMW 1.3 offers concept-specific caching (e.g. some concepts being precomputed
in the database so they can be recalled like categories). Category caching
was originally planned for SMW 1.2 already, but we decided to first introduce
concepts and then have a general caching mechanism for them. In this way, all
queries will be cacheable and scale to any site that is able to display
categories. Wikipedia comes to mind. But one more release is needed for that
to be done properly.


Cheers,

Markus

--
Markus Krötzsch
Semantic MediaWiki    http://semantic-mediawiki.org
http://korrekt.org    markus@semantic-mediawiki.org

-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________
Semediawiki-user mailing list
Semediawiki-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/semediawiki-user




--
Sergey Chernyshev
http://www.sergeychernyshev.com/