Property talk:P9617

Latest comment: 2 years ago by So9q in topic Emailed ifixit suggesting cooperation

Documentation

iFixit device ID
identifier of a device on the repair website ifixit.com
[create Create a translatable help page (preferably in English) for this property to be included here]
Type “appliance (Q1183543): item must contain property “instance of (P31), subclass of (P279)” with classes “appliance (Q1183543)” or their subclasses (defined using subclass of (P279)). (Help)
Exceptions are possible as rare values may exist. Exceptions can be specified using exception to constraint (P2303).
List of violations of this constraint: Database reports/Constraint violations/P9617#Type Q1183543, SPARQL
Single value: this property generally contains a single value. (Help)
Exceptions are possible as rare values may exist. Exceptions can be specified using exception to constraint (P2303).
List of violations of this constraint: Database reports/Constraint violations/P9617#Single value, SPARQL
Allowed entity types are Wikibase item (Q29934200): the property may only be used on a certain entity type (Help)
Exceptions are possible as rare values may exist. Exceptions can be specified using exception to constraint (P2303).
List of violations of this constraint: Database reports/Constraint violations/P9617#Entity types
Scope is as main value (Q54828448): the property must be used by specified way only (Help)
Exceptions are possible as rare values may exist. Exceptions can be specified using exception to constraint (P2303).
List of violations of this constraint: Database reports/Constraint violations/P9617#Scope, SPARQL
Distinct values: this property likely contains a value that is different from all other items. (Help)
Exceptions are possible as rare values may exist. Exceptions can be specified using exception to constraint (P2303).
List of violations of this constraint: Database reports/Constraint violations/P9617#Unique value, SPARQL (every item), SPARQL (by value)
Format “[A-Z0-9][a-z]*(_[A-Z0-9][a-z]*)*: value must be formatted using this pattern (PCRE syntax). (Help)
Exceptions are possible as rare values may exist. Exceptions can be specified using exception to constraint (P2303).
List of violations of this constraint: Database reports/Constraint violations/P9617#Format, SPARQL

Emailed ifixit suggesting cooperation edit

"Hi!

I work with Wikidata and we as a community would like to link our Q-items with your devices. See https://www.wikidata.org/wiki/Property:P9617

We would like to do it automatically and for that we need a sitemap or list of all your devices in machine readable form. Alternatively we can make a script that scrape your website but that is of course much less optimal because it causes a lot of unnecessary http-load on both sides.

I'm thinking a csv with all your devices in two columns where one is the name as appears on the site and the second is the device ID as defined on the link above.

--

If you could set up an API in the future that would be extra nice so we can just query your server and easily link the devices.

Alternatively you could integrate Wikidata and let users choose one of the devices in Wikidata as a first option with a fallback to a new device entry (or advice them to create the device first in Wikidata if it is missing).

If you do this step it would be easy for you to show the wikidata qid in the API as well and let us query for it. This is by far the best option that you/your users do the matching and we have you as a "source of truth" for devices.

Thanks in advance."--So9q (talk) 15:43, 4 June 2021 (UTC)Reply

Got this very promising response in no time:
Hi,

Absolutely we would love to help! I saw your discussion on the wikidata page as well.

Relevant APIs:
https://www.ifixit.com/api/2.0/doc/Content_Hierarchy#retuns-all-categories
https://www.ifixit.com/api/2.0/doc/Wikis#get-a-specific-wiki

A couple examples:
https://www.ifixit.com/api/2.0/categories?pretty
https://www.ifixit.com/api/2.0/wikis/CATEGORY/Sewing%20Machine?pretty

I certainly can provide this as a CSV as well, but integrating the API would be a better long-term strategy, we are adding new devices all the time.

We are working with some Wikipedia editors to improve the quality of repair information across product articles on Wikipedia. Perhaps once we get this going it will be of use to them?
I have a few questions:
  1. Is a device ID on Wikidata = category in your system? (in that case we should probably rename our property)
  2. Would you be willing to do the matching and add add QIDs to your API in some way? (we would like to look up a QID via your API)
  3. If you want to integrate tightly with us the easiest way to integrate wikidata IMO is to build a lookup endpoint. E.g. let ifixit.com/entity/Q15618594 redirect 302 to https://www.ifixit.com/Device/Samsung_Galaxy_S5. If no category is linked yet you return 404 or similar.
    • With something like that it is dead simple for us to check if you have a category for a device or not.
    • I recommend that you consider stopping adding categories in your system down the road and just add them directly to Wikidata and then follow the Wikidata Server Side Events API (like Google does to improve their search engine on-the-fly), see an example script in Python here: https://github.com/dpriskorn/asseeibot
  4. Also I would love if you could release your category API endpoint data as CC0 so we can import the devices we are currently missing, e.g. https://www.ifixit.com/Device/Samsung_galaxy_s5_neo
I'll let the Wikipedia editors answer for themselves regarding repair-information. This property enables easily linking from the infobox directly to ifixit if the Wikipedia community wants that.
If you need any help with any of this, feel free to reach out. :)
Cheers--So9q (talk) 00:17, 5 June 2021 (UTC)Reply
Return to "P9617" page.