
mkroetzsch at svn
Feb 11, 2012, 6:20 AM
Post #1 of 1
(14 views)
Permalink
|
|
SVN: [111233] trunk/extensions/SemanticMediaWiki/includes/export/ SMW_Exporter.php
|
|
https://www.mediawiki.org/wiki/Special:Code/MediaWiki/111233 Revision: 111233 Author: mkroetzsch Date: 2012-02-11 14:20:21 +0000 (Sat, 11 Feb 2012) Log Message: ----------- store sort keys also for subobjects (otherwise they cannot be found when using SPARQL stores) Modified Paths: -------------- trunk/extensions/SemanticMediaWiki/includes/export/SMW_Exporter.php Modified: trunk/extensions/SemanticMediaWiki/includes/export/SMW_Exporter.php =================================================================== --- trunk/extensions/SemanticMediaWiki/includes/export/SMW_Exporter.php 2012-02-11 12:33:13 UTC (rev 111232) +++ trunk/extensions/SemanticMediaWiki/includes/export/SMW_Exporter.php 2012-02-11 14:20:21 UTC (rev 111233) @@ -86,6 +86,11 @@ $masterPage = new SMWDIWikiPage( $diWikiPage->getDBkey(), $diWikiPage->getNamespace(), $diWikiPage->getInterwiki() ); $masterExpElement = self::getDataItemExpElement( $masterPage ); $result->addPropertyObjectValue( self::getSpecialNsResource( 'swivt', 'masterPage' ), $masterExpElement ); + // Add a sortkey: subobjects do not get this during parsing (they are no pages), + // but it is needed to query for them (e.g., to get a defined order for result pages) + $subObjectLabel = $diWikiPage->getDBkey() . '#' . $diWikiPage->getSubobjectName(); + $sortkey = new SMWExpLiteral( str_replace( '_', ' ', $subObjectLabel ) ); + $result->addPropertyObjectValue( self::getSpecialPropertyResource( '_SKEY' ), $sortkey ); } else { $pageTitle = str_replace( '_', ' ', $diWikiPage->getDBkey() ); if ( $diWikiPage->getNamespace() !== 0 ) { @@ -125,6 +130,8 @@ $ed = new SMWExpLiteral( $diWikiPage->getNamespace(), 'http://www.w3.org/2001/XMLSchema#integer' ); $result->addPropertyObjectValue( self::getSpecialNsResource( 'swivt', 'wikiNamespace' ), $ed ); if ( $addStubData ) { + // Add a default sort key; for pages that exist in the wiki, + // this is set during parsing $defaultSortkey = new SMWExpLiteral( str_replace( '_', ' ', $diWikiPage->getDBkey() ) ); $result->addPropertyObjectValue( self::getSpecialPropertyResource( '_SKEY' ), $defaultSortkey ); } _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS [at] lists https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs
|