Hi Rute,

First off, there should be no particular reason why changing the concept URI is impossible. In many cases you simply have to take the "docker-compose exec XXX" bit off the front of the command in that tutorial. It would require you to manually set up a separate installation of WDQS and be sure to use the correct paths for each command. (Or, as it notes, you could use the existing one, but you would have to manually remove the existing data, which may be complicated and is not described there - not doing so is likely to result in duplicate results.)

At the risk of explaining something you may already know from editing: in the situation you describe, items - and properties, lexemes, etc. - are held in namespaces separate from the main, non-prefixed namespace. Each namespace can be viewed as a separate set of pages. So for example, Name_of_the_person (or, indeed,  Q1) is a page in the main namespace, but Item:Q1 is in the Item: namespace and treated differently. (Technically the content type is associated with the individual page, but let's ignore that for now...)

Just putting a name with a colon does not make a separate namespace - it is configured either by software (as with the default Item: namespace when you use the Wikibase extension) or in the configuration settings - https://mediawiki.org/wiki/Manual:Using_custom_namespaces - and then all pages created after that with that prefix are stored in a separate collection to other pages in other namespaces, including the default one. So there should be no problem with having items start with Item:, unless you consider that inappropriate (perhaps because the main purpose of the wiki is to be a Wikibase). And you will still have e.g. Properties that are in a separate namespace.

I guess my question would be why you feel having general pages and the items on the same wiki is not ideal? It is true that this is not how Wikipedia (and other Wikimedia projects) are set up with respect to Wikidata, but this may be because Wikidata was added on later as a separate project, and intended to serve multiple Wikimedia projects, which may not be the case for your setup. It therefore also made sense for the "main" non-prefixed namespace to be a place for items, and so the Wikidata: (aka Project:) namespace was used for other project pages.

In the "usual" case, Wikibase is used to add structured data to a project with existing pages in the main namespace, and therefore Wikidata's setup is either not possible or not very desirable, because it would mean two separate installations of MediaWiki, probably one with just the Wikibase Client while the other has the Client and Repository. This is basically the answer to your $wgServer question - normally, two different URL setups would be two separate instances. To have a non-shared prefix - i.e. not /wiki/ or similar - for two namespaces on the same wiki, I think you'd need, at least, an extension like https://mediawiki.org/wiki/Extension:NamespacePaths - I'm not sure if this has been used with Wikibase, although it'd be interesting to know if it worked to map to e.g. /items/Q1. It is stated to be unmaintained, but it is getting some general maintenance by the looks of it, so may still work.

It may also be possible to make items appear at a separate domain name or path using web server alias/rewrite rules, too, but this would probably lead to various issues. Some projects have also written standalone user interfaces that use MediaWiki+Wikibase just as a storage layer via the API, and rendered items itself, but I guess this may be more than you have in mind.

Hope this helps, if not maybe others can advise with (ideally) more information on your project and what you have in mind for your URIs instead.
--
Laurence 'GreenReaper' Parry - WBUG


From: Rute Correia - Wikimedian in Residence <wir@fcsh.unl.pt>
Sent: Monday, 4 July 2022, 19:20
To: wikibaseug@lists.wikimedia.org <wikibaseug@lists.wikimedia.org>
Subject: [Wikibase] Changing URIs and doubts about $wgServer

Hi,

Is it possible to change the URL/URI structure of a Wikibase. I found this tutorial, but since I am not using Docker, I am struggling to follow it (also my technical knowledge is rather limited).

Building on this question, is it possible to have two instances(options?) for $wgServer on MediaWiki LocalSettings.php file? I am working with a MediaWiki + Wikibase installation that encompasses both a wikipedia-style part linked to a wikibase part. Right now, the articles and entities paths are now the same, which is obviously not ideal.

Article URL structure: http://mydomain.pt/wiki/Name_of_the_person
Entity URL: http://mydomain.pt/wiki/Item:Q1234

For reference, the project uses MediaWiki 1.35.

Thank you very much in advance,

Rute Correia

Wikimedian in Residence @ NOVA FCSH

Wikimedia Portugal WP20Symbols MediaWiki.svg Wikipedia20 Knowledge.svg

https://www.fcsh.unl.pt/