Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

    • Time: 10:00 am, Eastern Time (New York, GMT-04:00), which is 4:00 pm, Central European Summer Time

      Join Zoom MeetingTo join the online meeting:
      https://lyrasis.zoom.us/j/

      84378615572

      83471428955?pwd=

      bGUxSjlyRTdjOGl5U1B6L0Yva3RQdz09

      MnlmK1p5aEQ4QXUzOGZ6OTMxK3pIZz09

      Meeting ID:

      843 7861 5572

      834 7142 8955
      Passcode:

      556561

      731144
      One tap mobile
      +

      16699006833

      13017158592,,

      84378615572#

      83471428955#,,,,*

      556561#

      731144# US (

      San Jose

      Washington DC)
      +

      19292056099

      13126266799,,

      84378615572#

      83471428955#,,,,*

      556561#

      731144# US (

      New York

      Chicago)

      Dial by your location
              +1

      669 900 6833

      301 715 8592 US (

      San Jose

      Washington DC)
              +1

      929 205 6099

      312 626 6799 US (

      New York

      Chicago)
              +1

      253 215 8782

      346 248 7799 US (

      Tacoma

      Houston)
              +1

      301 715 8592

      669 900 6833 US (

      Washington DC

      San Jose)
              +1

      312 626 6799

      929 205 6099 US (

      Chicago

      New York)
              +1

      346 248 7799

      253 215 8782 US (

      Houston

      Tacoma)
             

      877 853 5257

      888 475 4499 US Toll-free
             

      888 475 4499

      877 853 5257 US Toll-free
      Meeting ID:

      843 7861 5572

      834 7142 8955
      Passcode:

      556561

      731144
      Find your local number:

       

      https://lyrasis.zoom.us/u/

      kerqtGDrJ4

      kb8MUte8nt

      Slack

Attendees

Resources

...

  1. Review the sprint objectives
    What goal or metric was most important for us to focus on this sprint?
  2. Demonstration of implemented features
  3. Feedback and questions

...

Notes

Dragan Ivanovic briefly introduced the idea of VIVO Dynamic API and benefits of this feature in the VIVO platform.

  • Reengineering of the VIVO/Vitro architecture
    • decouple backend and frontend
  • Providing RESTful API to VIVO users
    • Also might be used for data ingestion and integration with third party systems
  • Simplifying VIVO extensions
    • Dynamic API ontology will make VIVO extendable through description of requests in RDF notation
    • In that ontology classes representing main entities of requests against VIVO should be defined
      • Action, steps, operations, resource API endpoints, etc.
    • For localization and customization of VIVO instance “programming in n3 notation”, not in Java

Also, explained status of the implementation and presented plan for further development. 

The Dynamic API ontology has been defined, as well as the first version of engine for execution of a dynamic action described in RDF. Also, generator for implementation of endpoints for running an action has been implemented:  

  • REST - wiki
  • RCP - wiki
  • Generating OpenAPI specification - wiki

The next three-week sprint is planned for May/June 2022. Issues for the next sprint:

  • Extension of expressiveness of the notation
    • Flow of tasks
      • Chaining steps
      • Conditional and iterative steps
    • N3Template for deletion and modification
  • Generating front-end based on definition of a dynamic action in RDF
  • UI for defining dynamic actions
  • Validation of a dynamic action
  • Authorization and authentication over a dynamic action

After this presentation, Dragan Ivanovic made a short demo by defining dynamic actions and two endpoints for geospatial (countries) in an N3 file, one for fetching all countries, and one for adding new country. 

Christian Hauschke asked whether it is possible to create new dynamic actions in some other Jena model and enable customization of dynamic actions without restarting the server. Georgy Litvinov yes, this is possible, and we should do that.

Christian Hauschke also stated his concern about security aspect for dynamic action. Dragan Ivanovic responded there is the "Role" object property which might be assigned to any dynamic action to define who might execute the action. Security will be one important topic for further development of Dynamic API. 


Draft notes on Google Drive