User:Pablo Grass (WMDE)/wikidata/data-bridge/sequence

From Wikitech
Revision as of 14:58, 8 October 2019 by Pablo Grass (WMDE) (talk | contribs) (handle permission problems)

Compatible with:

title Wikidata Bridge

actor User
participantgroup **Client (wikipedia)**
  participant WP article
  participant Bridge
end
participantgroup **Repo (wikidata)**
  participant WB API
  participant WB GUI
end

User->WP article: reads
note over WP article: infobox

opt Javascript enabled
  opt client edit permissions
    Bridge->WP article: overload links\n(criteria T224832)
  note over WP article: infobox w/\nlinks on steroids
  end
end

User->WP article: clicks edit link

alt Javascript enabled
  WP article->Bridge: Params:\n- item id\n- property id\n- specific statement (day 2)\n- edit strategy?\n- user
  par in parallel
    Bridge->WB API:request entity
    WB API->Bridge:entity
  else
    Bridge->WB API:check repo edit permissions
    WB API->Bridge:permission
  end

  opt repo edit permissions
    opt value is supported by bridge, property is elegible for bridge
      note over Bridge: shows input field(s)
      User->Bridge: enters new value, clicks save
      Bridge->WB API: saves value
      WB API->Bridge: returns (formatted?) value
      Bridge->WP article: updates infobox
      note over WP article: updated infobox
      WP article->User: bliss
    else
      note over Bridge: displays error message + fallback link to wikidata
      User->Bridge: clicks fallback link
      User-->WB GUI: fall back to wikidata (bridge does not support this value type yet)
    end
  else
    note over Bridge: display permission message
  end
else
  User-->WB GUI: fall back to wikidata (no JS)
end