Hi,
Is it possible to change the URL/URI structure of a Wikibase. I found this tutorial https://addshore.com/2019/11/changing-the-concept-uri-of-an-existing-wikibase-with-data/, 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*
[image: Wikimedia Portugal] https://pt.wikimedia.org/wiki/Wikimedia_Portugal [image: WP20Symbols MediaWiki.svg] [image: Wikipedia20 Knowledge.svg]
Hey Rute,
The "not ideal" paths you describe are standard Mediawiki/Wikibase setup. You can change the 'wiki' portion of the path by setting the variable $wgArticlePath https://www.mediawiki.org/wiki/Manual:$wgArticlePath. However I wouldn't recommend changing it, it breaks Wikibase's interaction with the triple store (the SPARQL query interface).
At the moment it looks to me as if we'll just have to live with this relic.
Yours, Dragan
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 tutorialhttps://addshore.com/2019/11/changing-the-concept-uri-of-an-existing-wikibase-with-data/, 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]https://pt.wikimedia.org/wiki/Wikimedia_Portugal [WP20Symbols MediaWiki.svg] [Wikipedia20 Knowledge.svg] [https://www.fcsh.unl.pt/]https://www.fcsh.unl.pt/
Thank you so much for your help (and also to Dragan, who replied earlier).
I am quite happy with having everything together, but since I didn't set up the system myself I often get a bit confused as to why some things are the way they are.
My main concern was the namespaces/URIs/URLs of the Wikibase entities specifically, as I have been trying to connect Wikibase with OpenRefine and the documentation mentions that the site_iri should maintain the trailing slash, and I was afraid it would interfere with the Wikipedia-side/break/not work as intended. Also, as you mentioned, one of the main purposes of the wiki is to be a Wikibase. So, the prefix "Item:" just adds unnecessary "noise" to something that could be a bit more streamlined (by just having the Qs), but I guess it's not a major issue.
Once again, thanks, as this helped clear out the fog in my head surrounding the organization of the system.
Rute Correia
*Wikimedian in Residence @ NOVA FCSH*
Laurence Parry greenreaper@hotmail.com escreveu no dia segunda, 4/07/2022 à(s) 20:18:
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 https://addshore.com/2019/11/changing-the-concept-uri-of-an-existing-wikibase-with-data/, 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*
[image: Wikimedia Portugal] https://pt.wikimedia.org/wiki/Wikimedia_Portugal [image: WP20Symbols MediaWiki.svg] [image: Wikipedia20 Knowledge.svg]
[image: https://www.fcsh.unl.pt/] https://www.fcsh.unl.pt/
Wikibaseug mailing list -- wikibaseug@lists.wikimedia.org To unsubscribe send an email to wikibaseug-leave@lists.wikimedia.org
wikibaseug@lists.wikimedia.org