Topic on Talk:Semantic Bundle

Property namespace disappears with SB

12
Cavila (talkcontribs)

Following up on the post below. While the patch nay have worked, I noticed another unfortunate issue, which is that the namespace with the prefix "Property" has disappeared, probably also leading to some faulty queries. I've started a data refresh but it may take months before that one is finished.

Yaron Koren (talkcontribs)

What do you mean by "disappeared"? And how would a data refresh help? Did the ID of the Property namespace change?

Cavila (talkcontribs)

That's a good question. I'm not really sure, but it may be that the "Property" namespace has become an alias of another (main?) namespace. Some of the symptoms are:

  • All pages that used to start with the prefix "Property" no longer do so that a page title like "Property:Has name" has now become ":Has name".
  • When I attempt to create a test page like "Property:TestProperty", MW asks me if I want create the page ":TestProperty".
  • Issues with page titles (probably because of an extra colon being added to the beginning of a property value):
    • Properties (whether a page has been created for them are not) are still listed at Special:Properties, but without a prefix and with a pop-up warning saying that such and such (e.g. "Has name") "cannot be used as a page name in this wiki". Further, special properties in this list simply say NO_VALID_VALUE.
    • Special:Types/Text contains a list of pop-up signs saying that such and such (e.g. ":Has name") "cannot be used as a page name in this wiki".
Cavila (talkcontribs)

OK, the same thing apparently applies to the "Concept" namespace. There is an easy solution, though, which is to explicitly declare both "Property" and "Concept" as custom namespaces in the SB settings:

$wgExtraNamespaces[102] = "Property";
$wgExtraNamespaces[103] = "Property_talk";
$wgExtraNamespaces[108] = "Concept";
$wgExtraNamespaces[109] = "Concept_talk";

FWIW, I've experienced no such issues with other extensions installed through SB, e.g. Semantic Drilldown ("Filter"), Semantic Forms ("Form") or Maps ( "Layer"). so the issue appears to be specific to SMW.

Yaron Koren (talkcontribs)

Ah, okay. I believe that those namespaces get initialized when you call enableSemantics(). Could it be that you don't have an enableSemantics() call? It should be right under where SMW is included, in either LocalSettings.php or SemanticBundleSettings.php (though not in both).

Cavila (talkcontribs)

enableSemantics( parse_url( $wgServer, PHP_URL_HOST ) ); in SemanticBundleSettings.php is still in place (so no changes there) and has not been added by mistake to Localsettings.php (the only SMW-related settings here are the two lines suggested by the documentation).

Yaron Koren (talkcontribs)

Okay, I just looked through the SMW code - I was wrong before: enableSemantics() defines the property constants (102, etc.), but it's a separate function, NamespaceManager::run(), that does the settings of $wgExtraNamespaces - and that function is called in a delayed way, starting with SMW 1.9 - before the page is displayed, but after all of LocalSettings.php is called. I wonder if this is somehow an SMW 1.9 issue, not an SB issue per se. Could it be that you have some custom SMW-based code or extension(s), that is somehow accidentally messing up the initialization? Solving this problem might require putting some debugging calls into SMW's /includes/NamespaceManager.php - I'm not sure.

Cavila (talkcontribs)

Aha, I've got it now! Either Extension:ConfirmEdit (which comes bundled with MW) is incompatible with SMW 1.9.2 or it requires that some configuration settings are adjusted. That was a little unexpected, but I can do without ConfirmEdit.

Yaron Koren (talkcontribs)

That's very good to know. This might be a little too optimistic, but does getting rid of the ConfirmEdit extension solve any of the class loading problems you noted in the other thread?

Cavila (talkcontribs)

Unfortunately it doesn't. I don't know if it is a factor of any significance but I'm testing this on a private wiki, meaning it cannot be viewed by people other than those registered as users. That may have its disadvantages (as it may have, for instance, for the External Data extension, which does not work even when the CSV data called are internal to the wiki).

Cavila (talkcontribs)

Sadly, when I tested the latest Bundle on a different site (MW 1.22), the namespace issue reared its head again. This time though it has nothing to do with ConfirmEdit and as far as I can tell yet, not with any other extension either. The namespaces don't get initialised unless they are specifically declared as extra namespaces (per the above - I'm still missing the interface link "Browse properties", but I suspect that this may be down to some incompatibility between the skin used and SMW 1.9.2). I'll let you know if and when I find out more.

Stefahn (talkcontribs)

I just found this thread when I googled "confirmedit smw" and wanted to let you know that I experienced the same issue:
If I enable ConfirmEdit my SMW namespaces disappear.
We are discussing the issue here - maybe this helps to fix the problem...

Reply to "Property namespace disappears with SB"