Coder Social home page Coder Social logo

wmde / wikidata-wikibase-architecture Goto Github PK

View Code? Open in Web Editor NEW
4.0 18.0 1.0 6.72 MB

Wikidata and Wikibase architecture documentation

Home Page: https://wmde.github.io/wikidata-wikibase-architecture/

License: BSD 3-Clause "New" or "Revised" License

JavaScript 99.48% Stylus 0.52%

wikidata-wikibase-architecture's Introduction

Architecture Overview

Welcome to the Wikidata & Wikibase architecture documentation. The canonical place to read these docs is on Github Pages.

Here you will find a high level overview of Wikibase, its surrounding systems, and some details relating to specific cases and deployments such as Wikidata.

Systems are documented using arc42 structured templates. You can read more about this method at docs.arc42.org.

Wikibase Systems

Wikibase has expanded far beyond the initial MediaWiki extension that was created called Wikibase.

Multiple other MediaWiki extensions, and other surrounding systems now make up part of the Wikibase system landscape.

To simplify things the whole system is represented as Repository, Query Service and Client.

Overall Context

Other components

You may be familiar with other components, and should be able to easily navigate to their location using the table below.

Component Parent System
Termbox & Termbox SSR Repository
EntitySchema Repository
Property Suggester Repository
QualityConstraints Repository
WikibaseLexeme Repository
WikibaseMediaInfo Repository
DataBridge Client
Article Placeholder Client
Query UI Query Service
Query Builder Query Service
Quickstatements External tools

Contributing

If you would like to contribute to these docs then please read the dedicated contributing guide.

wikidata-wikibase-architecture's People

Contributors

addshore avatar darthmon avatar dependabot[bot] avatar guergana avatar jakobw avatar lucaswerkmeister avatar manicki avatar micgro42 avatar outdooracorn avatar silvan-wmde avatar toban avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

b-zurg

wikidata-wikibase-architecture's Issues

Write about the high level entity type dispatching pattern

Wikibase makes use of a generic service pattern, focused around entity ids, "dispatching" to specific implementations per entity type based on entity type definitions.
We should write about this as a high level concept that is reused around the place

Editor representation, automated vs non

While working on some docs today I found the desire to get rid of the right hand side of this diagram for simplicity.

image

I think a different framing, that may then also make sense for the stakeholder definitions further up would make sense.
This would divide Editors into Editors that want to use the API and editors that want to use the UI.
Of course, an individual can be both of these, however they have different expectations of the system, and also different interaction patterns with the system.

Perhaps API User / Editor and UI User / Editor are over simplifications?

Thoughts?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.