wikibase / data-model
PHP implementation of the Wikibase DataModel
Installs: 237 930
Dependents: 26
Suggesters: 0
Security: 0
Stars: 34
Watchers: 31
Forks: 18
Open Issues: 9
Requires
- php: ^8.0|^7.1
- data-values/data-values: ~0.1|~1.0|~2.0|~3.0
- wikimedia/assert: ~0.2.2|~0.3.0|~0.4.0|~0.5.0
Requires (Dev)
- mediawiki/mediawiki-codesniffer: 34.0.0
- ockcyp/covers-validator: ~1.1
- phpmd/phpmd: ~2.6
- phpunit/phpunit: ~8.0
- dev-master / 9.6.x-dev
- 9.6.1
- 9.6.0
- 9.5.1
- 9.5.0
- 9.4.0
- 9.3.0
- 9.2.0
- 9.1.0
- 9.0.1
- 9.0.0
- 8.0.0
- 7.5.0
- 7.4.1
- 7.4.0
- 7.3.0
- 7.2.0
- 7.1.0
- 7.0.0
- 6.3.1
- 6.3.0
- 6.2.0
- 6.1.0
- 6.0.1
- 6.0.0
- 5.1.0
- 5.0.2
- 5.0.1
- 5.0.0
- 4.4.0
- 4.3.0
- 4.2.0
- 4.1.0
- 4.0.0
- 3.0.1
- 3.0.0
- 2.6.1
- 2.6.0
- 2.5.0
- 2.4.1
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.1
- 2.1.0
- 2.0.2
- 2.0.1
- 2.0.0
- 1.1.0
- 1.0.1
- 1.0.0
- 0.9.1
- 0.9.0
- 0.8.2
- 0.8.1
- 0.8
- 0.7.4
- 0.7.3
- 0.7.2
- 0.7.1
- 0.7
- 0.6
- 0.6-RC2
- 0.6-RC
- 0.5
- 0.4
- dev-test-php-versions
- dev-legacy
- dev-addshoreBlank
- dev-Make_sure_all_Wikibase_codebases_run_PHPCS_during_composer_test
- dev-update_data_values
- dev-rankClass
- dev-snakListArray
- dev-entity-setid-nonull
- dev-statementgroup
This package is auto-updated.
Last update: 2024-12-11 19:34:52 UTC
README
Wikibase DataModel is the canonical PHP implementation of the Data Model at the heart of the Wikibase software.
It is primarily used by the Wikibase MediaWiki extensions, though has no dependencies whatsoever on these or on MediaWiki itself.
Recent changes can be found in the release notes.
Installation
You can use Composer to download and install this package as well as its dependencies. Alternatively you can simply clone the git repository and take care of loading yourself.
Composer
To add this package as a local, per-project dependency to your project, simply add a
dependency on wikibase/data-model
to your project's composer.json
file.
Here is a minimal example of a composer.json
file that just defines a dependency on
Wikibase DataModel 9.x:
{ "require": { "wikibase/data-model": "~9.0" } }
Manual
Get the Wikibase DataModel code, either via git, or some other means. Also get all dependencies. You can find a list of the dependencies in the "require" section of the composer.json file. The "autoload" section of this file specifies how to load the resources provide by this library.
Library contents
This library contains domain objects that implement the concepts part of the Wikibase DataModel. This mainly includes simple value objects, though also contains core domain logic either bound to such objects or encapsulated as service objects.
Tests
This library comes with a set up PHPUnit tests that cover all non-trivial code. Additionally, code
style checks by PHPCS and PHPMD are supported. The configuration for all 3 these tools can be found
in the root directory. You can use the tools in their standard manner, though can run all checks
required by our CI by executing composer ci
. To just run tests use composer test
, and to just
run style checks use composer cs
.
Credits
Development
Wikibase DataModel has been written by Jeroen De Dauw and Thiemo Kreuz as Wikimedia Germany employees for the Wikidata project.
Contributions were also made by several other people.
Concept
The initial conceptual specification for the DataModel was created by Markus Krötzsch and Denny Vrandečić, with minor contributions by Daniel Kinzler and Jeroen De Dauw.
Links
- Wikibase DataModel on Packagist
- Wikibase DataModel on Ohloh
- Wikibase DataModel on TravisCI
- Wikibase DataModel on ScrutinizerCI
- Wikibase DataModel on Wikimedia's Phabricator