Довідка:Тип даних
This is an information page. It is not one of Wikidata's policies or guidelines, but rather intends to describe some aspect(s) of Wikidata's norms, customs, technicalities, or practices. It may reflect varying levels of consensus and vetting. |
Типи даних визначають, як діятиме твердження і якого роду дані воно прийматиме. Різні типи тверджень використовують різні типи властивостей, а також у них використовуються різні типи даних. Під час створення властивості одним із рішень є вибір типу даних, і він, будучи один раз встановленим, назавжди фіксується для цієї властивості. Це має значення для того, як вона може використовуватися, і перед створенням корисної властивості треба виконати певний обсяг планування.
Робота над властивостями координується на Wikidata:Property proposal.
Data type | Number of properties |
---|---|
External identifier | 9157 |
Item | 1670 |
Quantity | 661 |
String | 335 |
URL | 109 |
Commons media file | 83 |
Point in time | 67 |
Monolingual text | 62 |
Property | 21 |
Geographic coordinates | 10 |
Tabular data | 6 |
Geographic shape | 3 |
Data type | Number of properties |
---|---|
Mathematical expression | 36 |
Sense | 19 |
Lexeme | 15 |
Form | 10 |
Musical Notation | 6 |
Властивості за типом
Перелік властивостей, які наразі вимагаються для кожного типу даних, див. або:
- Special:ListProperties
- Wikidata:Database reports/List of properties/all
- Wikidata:Database reports/Constraint violations/All properties
- Category:Properties by datatype
Типи даних для посилань на сутності
Вікідані мають 6 типів сутностей (Item, Property, Lexeme, Sense, Form і ⧼datatypes-type-wikibase-EntitySchema⧽). Для кожного типу сутності існує однойменний тип даних, який можна використовувати для зв’язування сутностей цього типу.
- Item
- Посилання на елемент. (list of properties)
- Property
- Посилання на властивість. (list of properties)
- EntitySchema
- Link to an entity schema. (list of properties)
Наступні типи даних в основному призначені для тверджень про лексеми, які утворюють лексикографічні дані Вікіданих.
- Lexeme
- Посилання на лексему. (list of properties)
- Form
- Для тверджень щодо лексем, які посилаються на форми інших лексем, щоб вказати їхній зв’язок. (list of properties)
- Sense
- Для тверджень щодо лексем, які посилаються на смисли в інших лексемах. (list of properties)
Типи даних на основі рядків
String
- type: string (String)
- list of properties: Категорія:Властивості з типом даних string -- Special:ListProperties/string
Послідовність символів, цифр та символів, які не потрібно перекладати на інші мови або формати чисел. Рядок не використовується для обчислень.
- Examples:
- B123
- 90928390-XLE
- u29238
Максимальна довжина - 1 500 символів у Вікіданих, як визначено у співвідношенні 1:2.
Monolingual text
- type: monolingualtext (Monolingual text)
- list of properties: Категорія:Властивості з одномовним текстовим типом даних -- Special:ListProperties/monolingualtext
Рядок, який не перекладено на інші мови. Цей тип рядка визначається один раз і повторно використовується у всіх мовах. Типовим прикладом використання є географічно локалізована назва об'єкта, написана місцевою мовою, якийсь ідентифікатор, хімічна формула або латинська наукова назва. Див. розділ Help:Monolingual text languages для отримання інформації про мовні коди, доступні для значень одномовного тексту, та про те, як запросити підтримку для додаткових мовних кодів. (Зауважте, що одномовний текст також передбачає єдину систему письма, що може зробити рядок дещо проблематичним).
Максимальна довжина - 1 500 символів у Вікіданих, як визначено у співвідношенні 1:2.
External identifier
- type: external-id (External identifier)
- list of properties: Категорія:Властивості з типом даних зовнішній-id -- Special:ListProperties/external-id
Рядок, що представляє ідентифікатор, який використовується у зовнішній системі. Відображатиметься як зовнішнє посилання, якщо визначено formatter URL (P1630). Див: External identifiers.
Максимальна довжина - 1 500 символів у Вікіданих, як визначено у співвідношенні 1:2.
URL
- type: url (URL)
- list of properties: Категорія:Властивості з типом даних url -- Special:ListProperties/url
Узагальнена "URL-адреса", яка ідентифікує якийсь зовнішній ресурс, можливо, посилання на якийсь зовнішній сайт, або ідентифікатор, який використовується для пошуку в якомусь спеціалізованому ресурсі.
Максимальна довжина - 1 500 символів у Вікіданих, як визначено у співвідношенні 1:2.
Типи даних для посилання на файли на Вікісховищі
Commons media
- type: commonsMedia (Commons media file)
- list of properties: Категорія:Властивості з типом даних Медіа-файл -- Special:ListProperties/commonsMedia
Посилання на файли на Вікісховищі. Під час введення в текстовому полі буде здійснено пошук відповідних записів у просторі імен "Файл" на Вікісховищі. Ці файли можуть бути використані як для ілюстрації понять у Вікіданих, так і як реальна цінність для включення у Вікіпедію.
- Examples:
- Wikidata-logo.svg
Geographic shape
- type: geo-shape (Geographic shape)
- list of properties: Категорія: Властивості з типом даних geo-shape -- Special:ListProperties/geo-shape
Посилання на файл дані карти на Вікісховищі. При введенні в текстове поле буде здійснено пошук відповідних записів у просторі імен "Data" на Вікісховищі.
Tabular data
- type: tabular-data (Tabular data)
- list of properties: Категорія:Властивості з табличним типом даних -- Special:ListProperties/tabular-data
Посилання на файл табличні дані на Вікісховищі. При введенні в текстове поле буде здійснено пошук відповідних записів у просторі імен "Дані" на Вікісховищі.
Типи даних для певних нотацій
Mathematical expression
- type: math (Mathematical expression)
- list of properties: Категорія:Властивості з математичним типом даних -- Special:ListProperties/math
Відформатований рядок, який відображається у вигляді формули.
Приклад:
\sqrt{1-e^2}
продуктує:
Дивіться w:Help:Displaying a formula щодо відповідного формату.
Поточне обмеження: вхідний текст не може бути запитаний у Службі запитів (Query Service).
Musical Notation
- type: musical-notation (Musical Notation)
- list of properties: Категорія:Властивості з типом нотного запису -- Special:ListProperties/musical-notation
Згенероване зображення у форматі .png, яке відображає музичну партитуру. Значеннями для цього типу даних є рядки, що описують музику відповідно до синтаксису LilyPond.
Приклад:
- Значення рядку
\relative c' { c d e f | g2 g | a4 a a a | g1 |}
, призведе
Інші типи даних
Quantity
- type: quantity (Quantity)
- list of properties: Категорія:Властивості з типом даних кількість -- Special:ListProperties/quantity
Значення Кількості являє собою десяткове число разом з інформацією про інтервал невизначеності цього числа та одиницю виміру. Атрибутами є:
- amount: основне значення кількості
- lowerBound: нижня межа кількості (необов'язково)
- upperBound: верхня межа кількості (необов'язково)
- unit (одиниця виміру): одиниця виміру позиції (для безрозмірних значень пусте)
Внутрішньо сума, нижня межа та верхня межа є рядками; позитивні числа зберігаються зі знаком "плюс", хоча це не відображається на екрані. Представлення величини не може бути довшим за 127 символів, тому максимальне значення величини дорівнює 10^126-1.
Перетворення юнітів реалізовано на основі conversion to SI unit (P2370). Більшість одиниць з такою властивістю нормалізовано в RDF-експорті для сервісу запитів (жовтень 2019).
Таблицю нормалізації можна прочитати у вигляді JSON-файлу in the WMF Mediawiki repository.
- Examples:
- 762 (безрозмірний)
- 2500 км (верхня та нижня межі не встановлені, з одиницею виміру)
- 1,03 ± 0,02 г (ввести як "номінальне значення" +/- "допуск", що представляє нижню та верхню межу, з одиницею). У деяких випадках у Вікіпедії не вказується толерантність, а лише номінальне значення, наприклад, у списках Вікіданих, створених listeria ботом.
Time
- type: time (Point in time)
- list of properties: Категорія:Властивості з типом даних час -- Special:ListProperties/time
Цей тип даних зберігає дату в григоріанському або юліанському календарі. Дивіться детальну структуру.
- Examples:
- 2012
- 1780-05 (=Травень 1780)
- 1833-11-01 (=1 листопада 1833)
Дивіться Help:Dates для отримання додаткової інформації.
Globe coordinate
- type: globe-coordinate (Geographic coordinates)
- list of properties: Категорія:Властивості з типом даних географічна координата -- Special:ListProperties/globe-coordinate
Географічне положення, задане у вигляді пари широта-довгота (в міліметрах або десяткових градусах) для даної "земної кулі" (будь-якого зоряного тіла). Глобус за замовчуванням "Земля" (globe: http://www.wikidata.org/entity/Q2
). Параметр "точність" описує роздільну здатність джерела координат. Зауважте, що за систему координат приймається "WGS84" (World Geodetic System 1984 (Q11902211)), яка може не підходити для менш схожих на Землю тіл, і це не налаштовується.
Наразі веб-інтерфейс Вікіданих не відображає всі параметри цього типу даних. Значення візуалізується лише як координата, плюс вбудована карта, якщо глобус має форму Earth (Q2). Точність може бути змінена в режимі редагування. Глобус не видно і не можна редагувати у поданні елемента. Однак повну конфігурацію можна побачити у поданні різниці історії (приклад).
При використанні веб-інтерфейсу значення, що зберігається, буде точно кратне обраній точності.
Редагувати дані в повному обсязі можна через API. Інструмент CLI tool є одним із способів доступу до API. У цьому прикладі Olympus Mons (Q520) надається координата на Mars (Q111) за допомогою параметра globe (використовується в coordinate location (P625)):
wd ac Q520 P625 '{ "latitude": 18.4, "longitude": 226, "precision": 0.016666666666667, "globe": "http://www.wikidata.org/entity/Q111" }'
Скрипт globe.js додає інтерфейс для встановлення параметра globe для coordinate location (P625).
Такі боти, як LocatorBot, можуть виявити, коли параметр глобуса coordinate location (P625) не встановлено відповідно до located on astronomical body (P376). Додавання located on astronomical body (P376) і очікування, поки бот оновить глобус координат, є загальноприйнятим обхідним шляхом.
Технічні деталі
У форматі Wikibase JSON кожне значення представлено як "datatype": <datatype>, "datavalue": {"type": <type>, "value": ...}
, де представлення value
залежить від type
.
У форматі RDF типи даних представлені RDF name у наведеній нижче таблиці з префіксом http://wikiba.se/ontology# (або префіксом wikibase:
у випадку дампів RDF). Зверніть увагу, що цей префікс також доступний у службі запитів Вікіданих, тому, наприклад, ?prop wikibase:propertyType wikibase:String поверне всі властивості з типом даних Рядок.
Name | JSON datatype | RDF name | JSON type | Implemented by | Links |
---|---|---|---|---|---|
Елемент | wikibase-item | WikibaseItem | wikibase-entityid | built-in | list, query |
Властивість | wikibase-property | WikibaseProperty | wikibase-entityid | built-in | list, query |
Лексема | wikibase-lexeme | WikibaseLexeme | wikibase-entityid | WikibaseLexeme (Q28925815) | list, query |
Смисл | wikibase-sense | WikibaseSense | wikibase-entityid | WikibaseLexeme (Q28925815) | list, query |
Форма | wikibase-form | WikibaseForm | wikibase-entityid | WikibaseLexeme (Q28925815) | list, query |
Entity Schema | entity-schema | EntitySchema | wikibase-entityid | Wikidata Entity Schema (Q73505550) | list, query |
Одномовний текст | monolingualtext | Monolingualtext | monolingualtext | built-in | list, query |
Рядок | string | String | string | built-in | list, query |
Зовнішній ідентифікатор | external-id | ExternalId | string | built-in | list, query |
URL | url | Url | string | built-in | list, query |
Медіафайл з Вікісховища | commonsMedia | CommonsMedia | string | built-in | list, query |
Географічна форма | geo-shape | GeoShape | string | built-in | list, query |
Табличні дані | tabular-data | TabularData | string | built-in | list, query |
Математичний вираз | math | Math | string | Math (Q21677559) | list, query |
Музична нотація | musical-notation | MusicalNotation | string | Score (Q21678392) | list, query |
Кількість | quantity | Quantity | quantity | built-in | list, query |
Момент часу | time | Time | time | built-in | list, query |
Географічні координати | globe-coordinate | Globecoordinate | globecoordinate | built-in | list, query |
Обмеження
- Point in time не підтримує час доби. phab:T57755
- Quantity не підтримує infinity (Q205), наприклад, ви не можете вказати prime number (Q49008)quantity (P1114)нескінченно багато.
Неопрацьовані типи даних
Для жодної з наступних дат впровадження, ймовірно, не буде доступним. Наявні типи даних можуть вирішити цю проблему в той же час.
Дивись: Wikidata:Development plan
Планується зробити
Тривалість
час у форматі HH:MM:SS.
Плануємо
Обчислювальна властивість
Властивість, що обчислюється Вікісховищем і додається безпосередньо до статей. Відсутня у планах розвитку.
Можливі варіанти використання: кількість тверджень з даного питання.
Небесні координати
Координатний формат для вказівки положень небесних об'єктів. У планах розробки відсутній.
Поточне рішення: див.Wikidata:Property proposal/Astronomical coordinates
Цілочисельний тип даних
Кількісний тип даних для натуральних цілих чисел. Це було частково реалізовано шляхом видалення точності та створення integer constraint (Q52848401).
Однорядковий елемент
Тип даних, що дозволяє описи будь-якою мовою, але з єдиною міткою. Відсутній у плані розробки.
Актуальні альтернативи: лексеми
Альтернатива, що оцінюється: багатомовна мітка замість повторюваних міток
Багатомовний текст
Рядок, який повинен бути перекладений іншими мовами. Це може бути ім'я суб'єкта у нелокальній формі, яке перекладається різними мовами та системами письма. (Зауважте, що багатомовний текст також передбачає багато ручної роботи під час перекладу). Фактична мета має бути визначена.
Багаторядковий текст
Рядок, який може містити символи нового рядка.
Віддалена властивість
Властивості у віддалених сховищах, ймовірно, будуть ідентифікуватися через спеціальне поле на наявних сутностях, а не через окремий тип даних.
Ряд значень
Спрощений спосіб зберігання рядів значень для різних моментів часу. Відсутній у плані розробки.
Шахи
Відображати рядки у нотації FEN, як у position in Forsyth-Edwards Notation (P6648), безпосередньо як шахові дошки.
Hiero
Рядки для відображення в WikiHiero. Рядки в синтаксисі WikiHiero вбудовуються в <hiero></hiero>
для відображення. Зразки на Talk:Q68101340 та Property_talk:P7383.
Phab прохання зробити.
Комбінований текстовий та цифровий id ідентифікатор
Тип даних для додавання числового ідентифікатора та назви сторінки, наприклад, сторінки MediaWiki. Кваліфікатор MediaWiki page ID (P9675) іноді додається до значення властивостей з назвами сторінок. Деякі властивості використовують числове значення безпосередньо.
Твердження з Вікіпедії
Тип даних для посилання на конкретне твердження Вікіданих.
Регулярні вирази
Тип даних для зберігання регулярних виразів (regex). Наразі вони зберігаються у вигляді рядків або одномовного тексту, наприклад, format as a regular expression (P1793), format as language specific regular expression (P8770).
діапазони IP-адрес
Тип даних для зберігання діапазонів адрес та спрощення запитів до них.
Типи даних, які ніколи не будуть впроваджені
Boolean
Відхилено. Запропонована альтернатива: елемент - тип даних.
Зміна типу даних
Властивість з типом даних "рядок" може бути переведена адміністратором системи до типу даних "зовнішній ідентифікатор". Запропонувати таку зміну можна розпочати обговорення на сторінці обговорення властивості або в Чаті проекту. Після досягнення консенсусу, запит може бути зроблений в Контакт з командою розробників. Ви повинні прочитати Попереднє обговорення, якщо ви хочете перетворити власність, створену до 2016 року.
Інші зміни типу даних вимагають створення нової властивості та видалення старої. Для таких запитів слід використовувати Властивості для видалення.