Upgrade to Pro — share decks privately, control downloads, hide ads and more …

On DB-nets and Their Applications

Exactpro
PRO
November 08, 2019

On DB-nets and Their Applications

Marco Montali and Andrey Rivkin

International Conference on Software Testing, Machine Learning and Complex Process Analysis (TMPA-2019)
7-9 November 2019, Tbilisi

Video: https://youtu.be/m7IBgZb9GNc

TMPA Conference website https://tmpaconf.org/
TMPA Conference on Facebook https://www.facebook.com/groups/tmpaconf/

Exactpro
PRO

November 08, 2019
Tweet

More Decks by Exactpro

Other Decks in Technology

Transcript

  1. On DB-nets and their Applications
    Marco Montali, Andrey Rivkin
    .
    .
    KRDB
    3
    KRDB RESEARCH CENTER
    FOR KNOWLEDGE AND DATA

    View Slide

  2. Process-data dichotomy
    ONE WAY
    ONE WAY

    View Slide

  3. Process-data dichotomy
    ONE WAY
    ONE WAY
    A well-known problem
    coming from the BPM community
    How to make data
    and processes
    work together?

    View Slide

  4. Process-data dichotomy
    ONE WAY
    ONE WAY
    Concepts
    Formal models
    Formal analysis /
    verification
    Implementations

    View Slide

  5. Process-data dichotomy
    ONE WAY
    ONE WAY
    Concepts
    Formal models
    Formal analysis /
    verification
    Implementations
    {
    .
    .
    KRDB
    3
    Prototypes

    View Slide

  6. Process-data dichotomy
    • To find a remedy, we need to answer a question:
    “Are there models that correctly reflect synergy
    between data and processes?”
    • State-of-the-art: many approaches, ranging from
    process-centric to data-centric, but …
    ‣ … they are often not well-balanced
    ‣ … they are not formal and/or don’t allow for
    formal verification + sometimes not implemented

    View Slide

  7. Finding the balance
    process-centric data-centric

    View Slide

  8. On-line booking example

    booking
    Booking Server
    Hotel Database
    Booking Website
    Session Data
    user
    user
    session
    session

    View Slide

  9. On-line booking example

    booking
    Booking Server
    Hotel Database
    Booking Website
    Session Data
    user
    user
    session
    session
    How to model?
    process
    case
    data
    persistent
    data
    task
    decision
    logic

    View Slide

  10. Finding the balance

    View Slide

  11. Finding the balance
    process
    dimension
    (persistent) data
    dimension

    View Slide

  12. Finding the balance
    such dimensions are addressed in a three-layered structure
    DB-nets
    persistence layer
    control layer
    data logic layer
    Relational DB with constraints
    Actions
    Queries
    View
    places ⌫ Fresh vars.
    Arcs
    Read arcs
    Rollback arcs

    Transitions
    fetch update
    populate trigger

    View Slide

  13. Persistence layer
    Typed relational DB with constraints
    • DB Schema: set of relation schemas with typed
    components
    • Type: value domain D + rigidly defined predicates on D
    • Constraints: domain-independent FO sentences
    ‣ keys, FKs, multiplicities, domain constraints …
    • DB Instance: finite set of (typed) facts over DB,
    satisfying all constraints

    View Slide

  14. Example
    id : int city : string period : string
    Available
    id : int city : string period : string
    Booked
    user_data : string
    primary key

    View Slide

  15. Data (manipulation) logic layer
    A bidirectional “interface” for interacting with a DB instance
    ➡ Read from DB (queries)
    • queries: open, domain-independent FO formulas
    • answers: substitutions of free variables s.t. the resulting FO
    sentence is true in the current DB instance
    ➡ Update DB (parametrised atomic actions)
    • list of templates of facts, defined by parameters + constants, to
    be 1st deleted and 2nd added (à-la STRIPS)
    • transactional semantics: if an action application result violates
    DB constraints —> rollback!

    View Slide

  16. • Query: get all available accommodations
    ‣ in FOL:
    ‣ in SQL: SELECT * FROM Available
    • Action BOOK(id,c,p,u): book accommodation id
    in city c for period p for user u
    ‣ DEL Available(id,c,p)
    ‣ ADD Booked(id,c,p,u)
    Example
    Chose
    Another Property
    Fig. 1. The control layer of a DB-net for online booking. Here,
    corresponding to a newly created session on the website, whereas c
    variables simulating user input for selected city and period of stay. T
    (corresponds to the rollback flow) is in red and decorated with an “
    the input inscriptions with query answers. In our scenario we would lik
    able accommodations from the website database. To this end, we use
    defined as Qava
    (id,c,p):-Available(id,c,p). Its SQL counterpart is SE
    Available. This query is then assigned to view place Available Acco
    A transition in the control layer may bind its input inscriptions to
    tion attached to the transition itself, thus providing a mechanism to tr
    upon transition firing (and, maybe, consequently change the content o
    data logic layer provides a functionality for booking accommodation
    ing action book(id,c,p,u) (with four formal parameters) that, upon ex
    accommodation with identifier id from the Available table, and then a
    same id and customer data u to the Booked table. Formally it is spec
    notation: book·del={Available(id,c,p)} and change·add={Booked
    book assigned to transition Finish Booking graphically appears in t
    Note that Finish Booking has one rollback arc connected to it. Th

    View Slide

  17. • Query: get all available accommodations
    • in FOL:
    • in SQL: SELECT * FROM Available
    • Action BOOK(id,c,p,u): book accommodation id
    in city c for period p for user u
    • DEL Available(id,c,p)
    • ADD Booked(id,c,p,u)
    Example
    Chose
    Another Property
    Fig. 1. The control layer of a DB-net for online booking. Here,
    corresponding to a newly created session on the website, whereas c
    variables simulating user input for selected city and period of stay. T
    (corresponds to the rollback flow) is in red and decorated with an “
    the input inscriptions with query answers. In our scenario we would lik
    able accommodations from the website database. To this end, we use
    defined as Qava
    (id,c,p):-Available(id,c,p). Its SQL counterpart is SE
    Available. This query is then assigned to view place Available Acco
    A transition in the control layer may bind its input inscriptions to
    tion attached to the transition itself, thus providing a mechanism to tr
    upon transition firing (and, maybe, consequently change the content o
    data logic layer provides a functionality for booking accommodation
    ing action book(id,c,p,u) (with four formal parameters) that, upon ex
    accommodation with identifier id from the Available table, and then a
    same id and customer data u to the Booked table. Formally it is spec
    notation: book·del={Available(id,c,p)} and change·add={Booked
    book assigned to transition Finish Booking graphically appears in t
    Note that Finish Booking has one rollback arc connected to it. Th
    rolls back if
    accommodation id has
    been already booked

    View Slide

  18. Control layer
    A variant of CPNs
    • Unbounded colour domains
    • Manages the evolution of (typed) tokens and
    their “case” data
    • Interacts with the persistence storage via the
    data logic layer
    ‣ Two types of places to distinguish local and
    global data

    View Slide

  19. • Normal places : represent case data and resources
    • View places : represent “views” over the persistence layer
    ‣ Host answers to queries from the data logic
    ‣ Clearly identify where the control layer reads from the
    persistence storage
    ‣ Cannot be explicitly modified by the control layer …
    ‣ … but can be implicitly modified by applying actions on
    the persistence layer and recomputing the view!
    Places
    View Place
    he persistence layer provided to the
    er
    answers to a query from the data logic
    st be compatible with the returned answers
    ntifies where the control layer needs to
    m the persistence layer
    ed explicitly by the control layer
    pdated by applying actions on the
    e layer, and recomputing the view
    48
    Idle Employees
    register
    (⌫t, emp, descr)
    CreateTicket
    Active tickets
    rel
    (tid
    S
    as
    (tid
    Aw
    logData
    (tid, emp, id)
    Resolve
    Tickets
    h⌫t, empi htid, empi
    htid,em
    pi
    htid, empi
    hempi
    htid, descri
    Fig. 2. The control layer of a db-net for ticket management.
    fresh input variable, and descr is an arbitrary input variable.
    Normal Place
    resent case states and resources
    r: schema of the local data carried by tokens
    be seen as a special relation of the
    istence layer
    ens explicitly manipulated by the control layer,
    ustomary in CPNs
    47
    Idle Employees
    register
    (⌫t, emp, descr)
    CreateTicket
    Active tickets
    re
    (tid
    S
    as
    (tid
    A
    logData
    (tid, emp, id)
    Resolve
    Tickets
    h⌫t, empi htid, empi
    htid,em
    pi
    htid, empi
    hempi
    htid, descri
    Fig. 2. The control layer of a db-net for ticket management.
    fresh input variable, and descr is an arbitrary input variable.
    Example 3. Figure 2 shows the control layer of a db-net
    layer P defined in Example 1 and the data logic layer L defi
    control layer realizes a simple ticket processing workflow, w

    View Slide

  20. Example
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥string⇥string
    Fig. 1. The control layer of a DB-net for online bo
    corresponding to a newly created session on the website
    variables simulating user input for selected city and per
    (corresponds to the rollback flow) is in red and decorat
    the input inscriptions with query answers. In our scenario
    able accommodations from the website database. To this
    defined as Qava
    (id,c,p):-Available(id,c,p). Its SQL coun
    Available. This query is then assigned to view place Av
    A transition in the control layer may bind its input in
    tion attached to the transition itself, thus providing a mec
    upon transition firing (and, maybe, consequently change
    data logic layer provides a functionality for booking acco
    ing action book(id,c,p,u) (with four formal parameters) t
    accommodation with identifier id from the Available table
    same id and customer data u to the Booked table. Form
    notation: book·del={Available(id,c,p)} and change·a
    book assigned to transition Finish Booking graphically
    Note that Finish Booking has one rollback arc connec
    the aforementioned case of at least two users trying to bo
    when consequently firing Finish Booking with two token
    A “case variable”:
    - session id
    - property id
    - city and availability
    period
    - personal user data
    Enter
    User Details
    Reserved
    Property Finish
    Booking
    Reserved
    Property
    int⇥int⇥string⇥string⇥string

    View Slide

  21. Transitions
    • Input flow
    ‣ consumes tokens from normal places
    ‣ reads tokens from view places
    • To access tokens and their data: multisets of tuples
    of “matching” variables (arc inscritpions)
    • “Type-aware” guards over the input variables
    ‣ boolean expressions with type-specific
    predicates


    View Slide

  22. Transitions
    • Output flow
    • produces tokens and puts them into outgoing
    places
    • provides bindings for actions (data logic) that
    update the persistence layer
    • composed of: input flow + external input
    (additional variables) + ν-variables (fresh data)


    View Slide

  23. Example
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string

    View Slide

  24. Example
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string

    View Slide

  25. Example
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string

    View Slide

  26. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==

    View Slide

  27. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    ⌫s = 42
    AAAB/3icbVA9SwNBEJ3zM8avqGBjsxgFq3AXAtoIARvLCOYDkhD2Nntmyd7esTsnhjOFf8XGQhFbC/+BlZ3/xs1HoYkPBh7vzTAzz4+lMOi6387C4tLyympmLbu+sbm1ndvZrZko0YxXWSQj3fCp4VIoXkWBkjdizWnoS173+xcjv37LtRGRusZBzNshvVEiEIyilTq5/aOWSjqGnJMW8js0QVoqDo+ynVzeLbhjkHniTUm+nPn8AItKJ/fV6kYsCblCJqkxTc+NsZ1SjYJJPsy2EsNjyvr0hjctVTTkpp2O7x+SY6t0SRBpWwrJWP09kdLQmEHo286QYs/MeiPxP6+ZYHDWToWKE+SKTRYFiSQYkVEYpCs0ZygHllCmhb2VsB7VlKGNbBSCN/vyPKkVC55b8K68fLkEE2TgAA7hBDw4hTJcQgWqwOAeHuEZXpwH58l5dd4mrQvOdGYP/sB5/wFgpJZ/
    c = Tbilisi
    AAAB/3icbVDJSgNBEK1xjXGLCl68NCaCpzAjgl7EgBePEbJBEkJPpydp0rPQXSOGMQc/Izfx4kERr/kNb/6NneWgiQ8KHu9VUVXPjaTQaNvf1tLyyuraemojvbm1vbOb2duv6DBWjJdZKENVc6nmUgS8jAIlr0WKU9+VvOr2bsZ+9Z4rLcKghP2IN33aCYQnGEUjtTKHOUauSAP5A2ovKbnC7BSDXCuTtfP2BGSRODOSvR4Nh88AUGxlvhrtkMU+D5BJqnXdsSNsJlShYJIP0o1Y84iyHu3wuqEB9bluJpP7B+TEKG3ihcpUgGSi/p5IqK9133dNp0+xq+e9sfifV4/Ru2wmIohi5AGbLvJiSTAk4zBIWyjOUPYNoUwJcythXaooQxNZ2oTgzL+8SCpnecfOO3dOtnAOU6TgCI7hFBy4gALcQhHKwOARXuAN3q0n69X6sD6nrUvWbOYA/sAa/QC8wJgq
    p = [Nov 7, Nov 9]
    AAACBHicbVDJSgNBEK1xjXGLyy2XxkTwIGFGBPUgBLx4kghmgWSIPZ2epLFnobsmGIYcvPgrXjwo4tWP8Obf2FkOGn1Q1OO9KrrrebEUGm37y5qbX1hcWs6sZFfX1jc2c1vbNR0livEqi2SkGh7VXIqQV1Gg5I1YcRp4kte9u4uRX+9zpUUU3uAg5m5Au6HwBaNopHYuX4zPW8jvUftp8yrqk5NDMmpn7rDYzhXskj0G+UucKSmUd33/FgAq7dxnqxOxJOAhMkm1bjp2jG5KFQom+TDbSjSPKbujXd40NKQB1246PmJI9o3SIX6kTIVIxurPjZQGWg8Cz0wGFHt61huJ/3nNBP1TNxVhnCAP2eQhP5EEIzJKhHSE4gzlwBDKlDB/JaxHFWVocsuaEJzZk/+S2lHJsUvOtVMoH8MEGcjDHhyAAydQhkuoQBUYPMATvMCr9Wg9W2/W+2R0zpru7MAvWB/fjsuYKQ==

    View Slide

  28. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, Tbilisi, [Nov 7, Nov 9]i
    AAACHnicbVBNT9tAEB1DgRC+Ahx7WTUgcYgimw8Bt4heOFVUIoAUW2G9GYdV1mtrdxwRWfklXPgrvfRQVFXi1P6bbhIOLTDSap/ee6OZeXGupCXf/+PNzX9YWFyqLFdXVtfWN2qbW1c2K4zAtshUZm5iblFJjW2SpPAmN8jTWOF1PPg80a+HaKzM9CWNcoxS3tcykYKTo7q1o51Qcd1XyELCe7JJebjfYJexdLNlg3W+ZEN23GCT7zQah2bq3enW6n7TnxZ7C4IXUG9t87NbALjo1p7DXiaKFDUJxa3tBH5OUckNSaFwXA0LizkXA97HjoOap2ijcnremO06pseSzLiniU3ZfztKnlo7SmPnTDnd2dfahHxP6xSUnESl1HlBqMVsUFIoRhmbZMV60qAgNXKACyPdrkzcccMFuUSrLoTg9clvwdV+M/Cbwdeg3jqAWVXgI3yCPQjgGFpwDhfQBgEP8A1+wJP36H33fnq/ZtY576VnG/4r7/df+J2h5w==

    View Slide

  29. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, Tbilisi, [Nov 7, Nov 9]i
    AAACHnicbVBNT9tAEB1DgRC+Ahx7WTUgcYgimw8Bt4heOFVUIoAUW2G9GYdV1mtrdxwRWfklXPgrvfRQVFXi1P6bbhIOLTDSap/ee6OZeXGupCXf/+PNzX9YWFyqLFdXVtfWN2qbW1c2K4zAtshUZm5iblFJjW2SpPAmN8jTWOF1PPg80a+HaKzM9CWNcoxS3tcykYKTo7q1o51Qcd1XyELCe7JJebjfYJexdLNlg3W+ZEN23GCT7zQah2bq3enW6n7TnxZ7C4IXUG9t87NbALjo1p7DXiaKFDUJxa3tBH5OUckNSaFwXA0LizkXA97HjoOap2ijcnremO06pseSzLiniU3ZfztKnlo7SmPnTDnd2dfahHxP6xSUnESl1HlBqMVsUFIoRhmbZMV60qAgNXKACyPdrkzcccMFuUSrLoTg9clvwdV+M/Cbwdeg3jqAWVXgI3yCPQjgGFpwDhfQBgEP8A1+wJP36H33fnq/ZtY576VnG/4r7/df+J2h5w==

    View Slide

  30. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNSyNBEK1xdXWzukY9emmMgocQZlRQb0EvnkTBqJAZYk+nJjbp6Rm6a8Qw5K942b/ixYMi3mT/jJ3Egx9b0PTjvVdU1YtzJS35/qs39WN65ufs3K/K7/mFP4vVpeVzmxVGYEtkKjOXMbeopMYWSVJ4mRvkaazwIu4fjvSLGzRWZvqMBjlGKe9pmUjByVGd6t56qLjuKWQh4S3ZpNzZqrOgzs5i6cbLOmsfZzdst85G3340DM3Yvt6p1vyGPy72HQTvoNZc4QdXAHDSqb6E3UwUKWoSilvbDvycopIbkkLhsBIWFnMu+ryHbQc1T9FG5fjCIdtwTJclmXFPExuzHztKnlo7SGPnTDld26/aiPyf1i4o2YtKqfOCUIvJoKRQjDI2iot1pUFBauAAF0a6XZm45oYLcqFWXAjB15O/g/OtRuA3gtOg1tyGSc3BKqzBJgSwC004ghNogYA7uIdHePL+eg/es/cysU557z0r8Km8f29MUqKC

    View Slide

  31. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNSyNBEK1xdXWzukY9emmMgocQZlRQb0EvnkTBqJAZYk+nJjbp6Rm6a8Qw5K942b/ixYMi3mT/jJ3Egx9b0PTjvVdU1YtzJS35/qs39WN65ufs3K/K7/mFP4vVpeVzmxVGYEtkKjOXMbeopMYWSVJ4mRvkaazwIu4fjvSLGzRWZvqMBjlGKe9pmUjByVGd6t56qLjuKWQh4S3ZpNzZqrOgzs5i6cbLOmsfZzdst85G3340DM3Yvt6p1vyGPy72HQTvoNZc4QdXAHDSqb6E3UwUKWoSilvbDvycopIbkkLhsBIWFnMu+ryHbQc1T9FG5fjCIdtwTJclmXFPExuzHztKnlo7SGPnTDld26/aiPyf1i4o2YtKqfOCUIvJoKRQjDI2iot1pUFBauAAF0a6XZm45oYLcqFWXAjB15O/g/OtRuA3gtOg1tyGSc3BKqzBJgSwC004ghNogYA7uIdHePL+eg/es/cysU557z0r8Km8f29MUqKC

    u = Ann
    AAAB+3icbVDLSgNBEOz1bXyt8ehlMAqewq4e9CIqXjwmYB6QhDA7mdXB2dllplcSlgW/xIsHRbwKfoc3v8GfcPI4qLGgoajqprsrSKQw6Hmfzszs3PzC4tJyYWV1bX3D3SzWTZxqxmsslrFuBtRwKRSvoUDJm4nmNAokbwS3F0O/cce1EbG6wkHCOxG9ViIUjKKVum5xNyUnpI28jybMzpXKd7tuySt7I5Bp4k9I6fS9+nUPAJWu+9HuxSyNuEImqTEt30uwk1GNgkmeF9qp4Qllt/SatyxVNOKmk41uz8meVXokjLUthWSk/pzIaGTMIApsZ0Txxvz1huJ/XivF8LiTCZWkyBUbLwpTSTAmwyBIT2jOUA4soUwLeythN1RThjaugg3B//vyNKkflH2v7Ff90tkhjLEE27AD++DDEZzBJVSgBgz68ABP8OzkzqPz4ryOW2ecycwW/ILz9g11MJZJ

    View Slide

  32. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9], Anni
    AAACJnicbVDLSiNBFL2tzqhxnIm6dFMYB2bRhG4dUBdC1I2rQcGokG5ideV2LKyubqpui6HJ17iZX5mNC0WG2c2nWElc+DpQ1OGce7iPpFDSUhD886amZz59np2bry18Wfz6rb60fGrz0ghsi1zl5jzhFpXU2CZJCs8LgzxLFJ4lVwcj/+wajZW5PqFBgXHG+1qmUnByUre+ux4prvsKWUR4Qzatfm74LPTZSSJde+mzzq/8mm35bPTtxD7b03oYmXFmvVtvBM1gDPaehM+k0Vrh+xcAcNSt30e9XJQZahKKW9sJg4LiihuSQuGwFpUWCy6ueB87jmqeoY2r8ZpD9t0pPZbmxj1NbKy+TFQ8s3aQJa4y43Rp33oj8SOvU1K6HVdSFyWhFpNGaakY5Wx0M9aTBgWpgSNcGOlmZeKSGy7IXbbmjhC+Xfk9Od1ohkEzPA4brU2YYA5WYQ1+QAhb0IJDOII2CLiFP3APD95v78579P5OSqe858wKvIL3/wmEPqQd

    View Slide

  33. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    ⌫s = 50
    AAAB/3icbVDLSgNBEOz1lRhfq4IXL4OJ4CnsKqIXIeBBjxHMA5IQZiezyZDZ2WWmVwxrDn6B/+DFgyJe/Q1v/o2bx0ETCxqKqm66u7xICoOO820tLC4tr2Syq7m19Y3NLXt7p2rCWDNeYaEMdd2jhkuheAUFSl6PNKeBJ3nN61+O/Nod10aE6hYHEW8FtKuELxjFVGrbe4WmituGXJAm8ns0fnLqDAu5tp13is4YZJ64U5IvZZ6uSgBQbttfzU7I4oArZJIa03CdCFsJ1SiY5MNcMzY8oqxPu7yRUkUDblrJ+P4hOUyVDvFDnZZCMlZ/TyQ0MGYQeGlnQLFnZr2R+J/XiNE/byVCRTFyxSaL/FgSDMkoDNIRmjOUg5RQpkV6K2E9qinDNLJRCO7sy/Okelx0naJ74+ZLJzBBFvbhAI7AhTMowTWUoQIMHuAZXuHNerRerHfrY9K6YE1nduEPrM8fwe+WCQ==
    c = Tbilisi
    AAAB/3icbVDJSgNBEK1xjXGLCl68NCaCpzAjgl7EgBePEbJBEkJPpydp0rPQXSOGMQc/Izfx4kERr/kNb/6NneWgiQ8KHu9VUVXPjaTQaNvf1tLyyuraemojvbm1vbOb2duv6DBWjJdZKENVc6nmUgS8jAIlr0WKU9+VvOr2bsZ+9Z4rLcKghP2IN33aCYQnGEUjtTKHOUauSAP5A2ovKbnC7BSDXCuTtfP2BGSRODOSvR4Nh88AUGxlvhrtkMU+D5BJqnXdsSNsJlShYJIP0o1Y84iyHu3wuqEB9bluJpP7B+TEKG3ihcpUgGSi/p5IqK9133dNp0+xq+e9sfifV4/Ru2wmIohi5AGbLvJiSTAk4zBIWyjOUPYNoUwJcythXaooQxNZ2oTgzL+8SCpnecfOO3dOtnAOU6TgCI7hFBy4gALcQhHKwOARXuAN3q0n69X6sD6nrUvWbOYA/sAa/QC8wJgq
    p = [Nov 7, Nov 9]
    AAACBHicbVDJSgNBEK1xjXGLyy2XxkTwIGFGBPUgBLx4kghmgWSIPZ2epLFnobsmGIYcvPgrXjwo4tWP8Obf2FkOGn1Q1OO9KrrrebEUGm37y5qbX1hcWs6sZFfX1jc2c1vbNR0livEqi2SkGh7VXIqQV1Gg5I1YcRp4kte9u4uRX+9zpUUU3uAg5m5Au6HwBaNopHYuX4zPW8jvUftp8yrqk5NDMmpn7rDYzhXskj0G+UucKSmUd33/FgAq7dxnqxOxJOAhMkm1bjp2jG5KFQom+TDbSjSPKbujXd40NKQB1246PmJI9o3SIX6kTIVIxurPjZQGWg8Cz0wGFHt61huJ/3nNBP1TNxVhnCAP2eQhP5EEIzJKhHSE4gzlwBDKlDB/JaxHFWVocsuaEJzZk/+S2lHJsUvOtVMoH8MEGcjDHhyAAydQhkuoQBUYPMATvMCr9Wg9W2/W+2R0zpru7MAvWB/fjsuYKQ==
    h42, 1, Tbilisi, [Nov 7, Nov 9], Anni
    AAACJnicbVDLSiNBFL2tzqhxnIm6dFMYB2bRhG4dUBdC1I2rQcGokG5ideV2LKyubqpui6HJ17iZX5mNC0WG2c2nWElc+DpQ1OGce7iPpFDSUhD886amZz59np2bry18Wfz6rb60fGrz0ghsi1zl5jzhFpXU2CZJCs8LgzxLFJ4lVwcj/+wajZW5PqFBgXHG+1qmUnByUre+ux4prvsKWUR4Qzatfm74LPTZSSJde+mzzq/8mm35bPTtxD7b03oYmXFmvVtvBM1gDPaehM+k0Vrh+xcAcNSt30e9XJQZahKKW9sJg4LiihuSQuGwFpUWCy6ueB87jmqeoY2r8ZpD9t0pPZbmxj1NbKy+TFQ8s3aQJa4y43Rp33oj8SOvU1K6HVdSFyWhFpNGaakY5Wx0M9aTBgWpgSNcGOlmZeKSGy7IXbbmjhC+Xfk9Od1ohkEzPA4brU2YYA5WYQ1+QAhb0IJDOII2CLiFP3APD95v78579P5OSqe858wKvIL3/wmEPqQd

    View Slide

  34. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9], Anni
    AAACJnicbVDLSiNBFL2tzqhxnIm6dFMYB2bRhG4dUBdC1I2rQcGokG5ideV2LKyubqpui6HJ17iZX5mNC0WG2c2nWElc+DpQ1OGce7iPpFDSUhD886amZz59np2bry18Wfz6rb60fGrz0ghsi1zl5jzhFpXU2CZJCs8LgzxLFJ4lVwcj/+wajZW5PqFBgXHG+1qmUnByUre+ux4prvsKWUR4Qzatfm74LPTZSSJde+mzzq/8mm35bPTtxD7b03oYmXFmvVtvBM1gDPaehM+k0Vrh+xcAcNSt30e9XJQZahKKW9sJg4LiihuSQuGwFpUWCy6ueB87jmqeoY2r8ZpD9t0pPZbmxj1NbKy+TFQ8s3aQJa4y43Rp33oj8SOvU1K6HVdSFyWhFpNGaakY5Wx0M9aTBgWpgSNcGOlmZeKSGy7IXbbmjhC+Xfk9Od1ohkEzPA4brU2YYA5WYQ1+QAhb0IJDOII2CLiFP3APD95v78579P5OSqe858wKvIL3/wmEPqQd
    h50, Tbilisi, [Nov 7, Nov 9]i
    AAACHnicbVBNa9tAEB2lX46btm59zGWpE8jBGCkluLmZ9tJTccBfYAlntR7ZS1YrsTsyMcK/pJf+lV56aCmFntp/k/XHoXU6sOzjvTfMzItzJS35/h/v4MHDR4+fVA6rT4+ePX9Re/lqYLPCCOyLTGVmFHOLSmrskySFo9wgT2OFw/jm/VofLtBYmekeLXOMUj7TMpGCk6MmtYuTUHE9U8hCwluySXnhN1kvlm62bLLxx2zB2k22/i6jVWg23pNJreG3/E2x+yDYgUanzt9dA0B3UvsVTjNRpKhJKG7tOPBzikpuSAqFq2pYWMy5uOEzHDuoeYo2KjfnrdipY6YsyYx7mtiG/buj5Km1yzR2zpTT3O5ra/J/2rig5G1USp0XhFpsByWFYpSxdVZsKg0KUksHuDDS7crEnBsuyCVadSEE+yffB4PzVuC3gqug0XkD26rAMbyGMwigDR34AF3og4BP8AW+wXfvs/fV++H93FoPvF1PHf4p7/cd9vih5g==

    View Slide

  35. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9], Anni
    AAACJnicbVDLSiNBFL2tzqhxnIm6dFMYB2bRhG4dUBdC1I2rQcGokG5ideV2LKyubqpui6HJ17iZX5mNC0WG2c2nWElc+DpQ1OGce7iPpFDSUhD886amZz59np2bry18Wfz6rb60fGrz0ghsi1zl5jzhFpXU2CZJCs8LgzxLFJ4lVwcj/+wajZW5PqFBgXHG+1qmUnByUre+ux4prvsKWUR4Qzatfm74LPTZSSJde+mzzq/8mm35bPTtxD7b03oYmXFmvVtvBM1gDPaehM+k0Vrh+xcAcNSt30e9XJQZahKKW9sJg4LiihuSQuGwFpUWCy6ueB87jmqeoY2r8ZpD9t0pPZbmxj1NbKy+TFQ8s3aQJa4y43Rp33oj8SOvU1K6HVdSFyWhFpNGaakY5Wx0M9aTBgWpgSNcGOlmZeKSGy7IXbbmjhC+Xfk9Od1ohkEzPA4brU2YYA5WYQ1+QAhb0IJDOII2CLiFP3APD95v78579P5OSqe858wKvIL3/wmEPqQd
    h50, Tbilisi, [Nov 7, Nov 9]i
    AAACHnicbVBNa9tAEB2lX46btm59zGWpE8jBGCkluLmZ9tJTccBfYAlntR7ZS1YrsTsyMcK/pJf+lV56aCmFntp/k/XHoXU6sOzjvTfMzItzJS35/h/v4MHDR4+fVA6rT4+ePX9Re/lqYLPCCOyLTGVmFHOLSmrskySFo9wgT2OFw/jm/VofLtBYmekeLXOMUj7TMpGCk6MmtYuTUHE9U8hCwluySXnhN1kvlm62bLLxx2zB2k22/i6jVWg23pNJreG3/E2x+yDYgUanzt9dA0B3UvsVTjNRpKhJKG7tOPBzikpuSAqFq2pYWMy5uOEzHDuoeYo2KjfnrdipY6YsyYx7mtiG/buj5Km1yzR2zpTT3O5ra/J/2rig5G1USp0XhFpsByWFYpSxdVZsKg0KUksHuDDS7crEnBsuyCVadSEE+yffB4PzVuC3gqug0XkD26rAMbyGMwigDR34AF3og4BP8AW+wXfvs/fV++H93FoPvF1PHf4p7/cd9vih5g==

    View Slide

  36. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9], Anni
    AAACJnicbVDLSiNBFL2tzqhxnIm6dFMYB2bRhG4dUBdC1I2rQcGokG5ideV2LKyubqpui6HJ17iZX5mNC0WG2c2nWElc+DpQ1OGce7iPpFDSUhD886amZz59np2bry18Wfz6rb60fGrz0ghsi1zl5jzhFpXU2CZJCs8LgzxLFJ4lVwcj/+wajZW5PqFBgXHG+1qmUnByUre+ux4prvsKWUR4Qzatfm74LPTZSSJde+mzzq/8mm35bPTtxD7b03oYmXFmvVtvBM1gDPaehM+k0Vrh+xcAcNSt30e9XJQZahKKW9sJg4LiihuSQuGwFpUWCy6ueB87jmqeoY2r8ZpD9t0pPZbmxj1NbKy+TFQ8s3aQJa4y43Rp33oj8SOvU1K6HVdSFyWhFpNGaakY5Wx0M9aTBgWpgSNcGOlmZeKSGy7IXbbmjhC+Xfk9Od1ohkEzPA4brU2YYA5WYQ1+QAhb0IJDOII2CLiFP3APD95v78579P5OSqe858wKvIL3/wmEPqQd
    h50, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNT9tAEB3T8tHw0QDHXlYNSByiyKZCwC2CS08oSElAiq2w3ozDKuu1tTtGRFb+Cpf+FS49tELcqv4ZNh+HFhhptU/vvdHMvDhX0pLv//GWPnxcXlld+1RZ39jc+lzd3unarDACOyJTmbmOuUUlNXZIksLr3CBPY4VX8eh8ql/dobEy020a5xilfKhlIgUnR/WrJ3uh4nqokIWE92ST8sivs6DO2rF042Wd9S6yO3ZcZ9PvNJqEZmbf61drfsOfFXsLggWoNXf52Q0AtPrV53CQiSJFTUJxa3uBn1NUckNSKJxUwsJizsWID7HnoOYp2qicXThh+44ZsCQz7mliM/bfjpKn1o7T2DlTTrf2tTYl39N6BSUnUSl1XhBqMR+UFIpRxqZxsYE0KEiNHeDCSLcrE7fccEEu1IoLIXh98lvQPWwEfiO4DGrNbzCvNfgCX+EAAjiGJnyHFnRAwAM8wi/47f3wfnpP3vPcuuQtenbhv/L+vgBKqqKB

    View Slide

  37. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    h1, Tbilisi, [Nov 7, Nov 9]i
    AAACHXicbVBNSyNBEK1xdVejrlGPXhrjwh5CmF4WdG8BL55EwRghM4SeTk1s7OkZumtkw5A/shf/ihcPK+LBi/hv7CQe/HrQ9OO9KqrqJYVWjsLwKZj7Mr/w9dviUm15ZfX7Wn1949TlpZXYkbnO7VkiHGplsEOKNJ4VFkWWaOwmF/sTv3uJ1qncnNCowDgTQ6NSJQV5qV//vRNpYYYaWUT4l1xa8SY7SZQfrZqsd5hfst0mm3x/4nFkp6U7/XojbIVTsI+Ev5BGe727AB5H/fpDNMhlmaEhqYVzPR4WFFfCkpIax7WodFgIeSGG2PPUiAxdXE2vG7MfXhmwNLf+GWJT9XVHJTLnRlniKzNB5+69NxE/83olpXtxpUxREho5G5SWmlHOJlGxgbIoSY88EdIqvyuT58IKST7Qmg+Bvz/5Izn91eJhix/zRpvDDIuwBdvwEzjsQhsO4Ag6IOEfXMN/uA2ugpvgLriflc4FLz2b8AbB4zORAqD9
    Available
    ID city period
    1 Tbilisi [Nov 7, Nov 9]
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h42, 1, Tbilisi, [Nov 7, Nov 9], Anni
    AAACJnicbVDLSiNBFL2tzqhxnIm6dFMYB2bRhG4dUBdC1I2rQcGokG5ideV2LKyubqpui6HJ17iZX5mNC0WG2c2nWElc+DpQ1OGce7iPpFDSUhD886amZz59np2bry18Wfz6rb60fGrz0ghsi1zl5jzhFpXU2CZJCs8LgzxLFJ4lVwcj/+wajZW5PqFBgXHG+1qmUnByUre+ux4prvsKWUR4Qzatfm74LPTZSSJde+mzzq/8mm35bPTtxD7b03oYmXFmvVtvBM1gDPaehM+k0Vrh+xcAcNSt30e9XJQZahKKW9sJg4LiihuSQuGwFpUWCy6ueB87jmqeoY2r8ZpD9t0pPZbmxj1NbKy+TFQ8s3aQJa4y43Rp33oj8SOvU1K6HVdSFyWhFpNGaakY5Wx0M9aTBgWpgSNcGOlmZeKSGy7IXbbmjhC+Xfk9Od1ohkEzPA4brU2YYA5WYQ1+QAhb0IJDOII2CLiFP3APD95v78579P5OSqe858wKvIL3/wmEPqQd
    id = 1
    AAAB+3icbVDLSgNBEOz1GeNrjUcvg4ngKezqQS9iwIvHBMwDkiXMTmaTIbMPZnolYQn4JV48KOJV8Du8+Q3+hLtJDppY0FBUddPd5UZSaLSsL2NldW19YzO3ld/e2d3bNw8KDR3GivE6C2WoWi7VXIqA11Gg5K1Iceq7kjfd4U3mN++50iIM7nAcccen/UB4glFMpa5ZKIkeuSId5CPUXmJPSvmuWbTK1hRkmdhzUrz+qH0/AEC1a352eiGLfR4gk1Trtm1F6CRUoWCST/KdWPOIsiHt83ZKA+pz7STT2yfkJFV6xAtVWgGSqfp7IqG+1mPfTTt9igO96GXif147Ru/SSUQQxcgDNlvkxZJgSLIgSE8ozlCOU0KZEumthA2oogzTuLIQ7MWXl0njrGxbZbtmFyvnMEMOjuAYTsGGC6jALVShDgxG8AjP8GJMjCfj1Xibta4Y85lD+APj/QejLZW/
    c = Tbilisi
    AAAB/3icbVDJSgNBEK1xjXGLCl68NCaCpzAjgl7EgBePEbJBEkJPpydp0rPQXSOGMQc/Izfx4kERr/kNb/6NneWgiQ8KHu9VUVXPjaTQaNvf1tLyyuraemojvbm1vbOb2duv6DBWjJdZKENVc6nmUgS8jAIlr0WKU9+VvOr2bsZ+9Z4rLcKghP2IN33aCYQnGEUjtTKHOUauSAP5A2ovKbnC7BSDXCuTtfP2BGSRODOSvR4Nh88AUGxlvhrtkMU+D5BJqnXdsSNsJlShYJIP0o1Y84iyHu3wuqEB9bluJpP7B+TEKG3ihcpUgGSi/p5IqK9133dNp0+xq+e9sfifV4/Ru2wmIohi5AGbLvJiSTAk4zBIWyjOUPYNoUwJcythXaooQxNZ2oTgzL+8SCpnecfOO3dOtnAOU6TgCI7hFBy4gALcQhHKwOARXuAN3q0n69X6sD6nrUvWbOYA/sAa/QC8wJgq
    p = [Nov 7, Nov 9]
    AAACBHicbVDJSgNBEK1xjXGLyy2XxkTwIGFGBPUgBLx4kghmgWSIPZ2epLFnobsmGIYcvPgrXjwo4tWP8Obf2FkOGn1Q1OO9KrrrebEUGm37y5qbX1hcWs6sZFfX1jc2c1vbNR0livEqi2SkGh7VXIqQV1Gg5I1YcRp4kte9u4uRX+9zpUUU3uAg5m5Au6HwBaNopHYuX4zPW8jvUftp8yrqk5NDMmpn7rDYzhXskj0G+UucKSmUd33/FgAq7dxnqxOxJOAhMkm1bjp2jG5KFQom+TDbSjSPKbujXd40NKQB1246PmJI9o3SIX6kTIVIxurPjZQGWg8Cz0wGFHt61huJ/3nNBP1TNxVhnCAP2eQhP5EEIzJKhHSE4gzlwBDKlDB/JaxHFWVocsuaEJzZk/+S2lHJsUvOtVMoH8MEGcjDHhyAAydQhkuoQBUYPMATvMCr9Wg9W2/W+2R0zpru7MAvWB/fjsuYKQ==
    u = Ann
    AAAB+3icbVDLSgNBEOz1bXyt8ehlMAqewq4e9CIqXjwmYB6QhDA7mdXB2dllplcSlgW/xIsHRbwKfoc3v8GfcPI4qLGgoajqprsrSKQw6Hmfzszs3PzC4tJyYWV1bX3D3SzWTZxqxmsslrFuBtRwKRSvoUDJm4nmNAokbwS3F0O/cce1EbG6wkHCOxG9ViIUjKKVum5xNyUnpI28jybMzpXKd7tuySt7I5Bp4k9I6fS9+nUPAJWu+9HuxSyNuEImqTEt30uwk1GNgkmeF9qp4Qllt/SatyxVNOKmk41uz8meVXokjLUthWSk/pzIaGTMIApsZ0Txxvz1huJ/XivF8LiTCZWkyBUbLwpTSTAmwyBIT2jOUA4soUwLeythN1RThjaugg3B//vyNKkflH2v7Ff90tkhjLEE27AD++DDEZzBJVSgBgz68ABP8OzkzqPz4ryOW2ecycwW/ILz9g11MJZJ
    h50, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNT9tAEB3T8tHw0QDHXlYNSByiyKZCwC2CS08oSElAiq2w3ozDKuu1tTtGRFb+Cpf+FS49tELcqv4ZNh+HFhhptU/vvdHMvDhX0pLv//GWPnxcXlld+1RZ39jc+lzd3unarDACOyJTmbmOuUUlNXZIksLr3CBPY4VX8eh8ql/dobEy020a5xilfKhlIgUnR/WrJ3uh4nqokIWE92ST8sivs6DO2rF042Wd9S6yO3ZcZ9PvNJqEZmbf61drfsOfFXsLggWoNXf52Q0AtPrV53CQiSJFTUJxa3uBn1NUckNSKJxUwsJizsWID7HnoOYp2qicXThh+44ZsCQz7mliM/bfjpKn1o7T2DlTTrf2tTYl39N6BSUnUSl1XhBqMR+UFIpRxqZxsYE0KEiNHeDCSLcrE7fccEEu1IoLIXh98lvQPWwEfiO4DGrNbzCvNfgCX+EAAjiGJnyHFnRAwAM8wi/47f3wfnpP3vPcuuQtenbhv/L+vgBKqqKB

    View Slide

  38. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h50, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNT9tAEB3T8tHw0QDHXlYNSByiyKZCwC2CS08oSElAiq2w3ozDKuu1tTtGRFb+Cpf+FS49tELcqv4ZNh+HFhhptU/vvdHMvDhX0pLv//GWPnxcXlld+1RZ39jc+lzd3unarDACOyJTmbmOuUUlNXZIksLr3CBPY4VX8eh8ql/dobEy020a5xilfKhlIgUnR/WrJ3uh4nqokIWE92ST8sivs6DO2rF042Wd9S6yO3ZcZ9PvNJqEZmbf61drfsOfFXsLggWoNXf52Q0AtPrV53CQiSJFTUJxa3uBn1NUckNSKJxUwsJizsWID7HnoOYp2qicXThh+44ZsCQz7mliM/bfjpKn1o7T2DlTTrf2tTYl39N6BSUnUSl1XhBqMR+UFIpRxqZxsYE0KEiNHeDCSLcrE7fccEEu1IoLIXh98lvQPWwEfiO4DGrNbzCvNfgCX+EAAjiGJnyHFnRAwAM8wi/47f3wfnpP3vPcuuQtenbhv/L+vgBKqqKB

    View Slide

  39. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==

    u = Mike
    AAAB+nicbVC7SgNREJ31bXxttLRZTASrsKuFNmLAxkYwYKKQLOHuzaxecvfBvbNqWAP+iI2FIrYWfoed3+BPeJNYaPTAwOGcGWbmBKkUmlz3w5qYnJqemZ2bLywsLi2v2MXVhk4yxbHOE5mo84BplCLGOgmSeJ4qZFEg8SzoHg78sytUWiTxKfVS9CN2EYtQcEZGatvFcrbfIrwhHebHoov9ctsuuRV3COcv8b5J6eCt9nkHACdt+73VSXgWYUxcMq2bnpuSnzNFgkvsF1qZxpTxLrvApqExi1D7+fD0vrNplI4TJspUTM5Q/TmRs0jrXhSYzojRpR73BuJ/XjOjcM/PRZxmhDEfLQoz6VDiDHJwOkIhJ9kzhHElzK0Ov2SKcTJpFUwI3vjLf0lju+K5Fa/mlao7MMIcrMMGbIEHu1CFIziBOnC4hnt4hCfr1nqwnq2XUeuE9T2zBr9gvX4Bj5OWaA==
    h50, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNT9tAEB3T8tHw0QDHXlYNSByiyKZCwC2CS08oSElAiq2w3ozDKuu1tTtGRFb+Cpf+FS49tELcqv4ZNh+HFhhptU/vvdHMvDhX0pLv//GWPnxcXlld+1RZ39jc+lzd3unarDACOyJTmbmOuUUlNXZIksLr3CBPY4VX8eh8ql/dobEy020a5xilfKhlIgUnR/WrJ3uh4nqokIWE92ST8sivs6DO2rF042Wd9S6yO3ZcZ9PvNJqEZmbf61drfsOfFXsLggWoNXf52Q0AtPrV53CQiSJFTUJxa3uBn1NUckNSKJxUwsJizsWID7HnoOYp2qicXThh+44ZsCQz7mliM/bfjpKn1o7T2DlTTrf2tTYl39N6BSUnUSl1XhBqMR+UFIpRxqZxsYE0KEiNHeDCSLcrE7fccEEu1IoLIXh98lvQPWwEfiO4DGrNbzCvNfgCX+EAAjiGJnyHFnRAwAM8wi/47f3wfnpP3vPcuuQtenbhv/L+vgBKqqKB

    View Slide

  40. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h50, 1, Tbilisi, [Nov 7, Nov 9], Mikei
    AAACJ3icbVDLSiNBFL2tzoxmHkZduimMA7NoQvcM4riRMG7cKApGhXSTqa7cjkWqq5uq22Jo8jez8VfcCM4guvRPrCQufMyBog7n3MN9JIWSloLg3puZnXv3/sP8Qu3jp89fFutLy8c2L43AtshVbk4TblFJjW2SpPC0MMizROFJMtgZ+yfnaKzM9RENC4wz3tcylYKTk7r17fVIcd1XyCLCC7JptRH4LPTZUSJde+mzzn5+zjZ9Nv62Yp/tyQGOIjMJrXfrjaAZTMDekvCJNFor/NdvADjo1m+iXi7KDDUJxa3thEFBccUNSaFwVItKiwUXA97HjqOaZ2jjarLniH11So+luXFPE5uozxMVz6wdZomrzDid2dfeWPyf1ykp/RlXUhcloRbTRmmpGOVsfDTWkwYFqaEjXBjpZmXijBsuyJ225o4Qvl75LTn+3gyDZngYNlo/YIp5WIU1+AYhbEILduEA2iDgD1zBX/jnXXrX3q13Ny2d8Z4yK/AC3sMjW1ykjw==

    View Slide

  41. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h50, 1, Tbilisi, [Nov 7, Nov 9], Mikei
    AAACJ3icbVDLSiNBFL2tzoxmHkZduimMA7NoQvcM4riRMG7cKApGhXSTqa7cjkWqq5uq22Jo8jez8VfcCM4guvRPrCQufMyBog7n3MN9JIWSloLg3puZnXv3/sP8Qu3jp89fFutLy8c2L43AtshVbk4TblFJjW2SpPC0MMizROFJMtgZ+yfnaKzM9RENC4wz3tcylYKTk7r17fVIcd1XyCLCC7JptRH4LPTZUSJde+mzzn5+zjZ9Nv62Yp/tyQGOIjMJrXfrjaAZTMDekvCJNFor/NdvADjo1m+iXi7KDDUJxa3thEFBccUNSaFwVItKiwUXA97HjqOaZ2jjarLniH11So+luXFPE5uozxMVz6wdZomrzDid2dfeWPyf1ykp/RlXUhcloRbTRmmpGOVsfDTWkwYFqaEjXBjpZmXijBsuyJ225o4Qvl75LTn+3gyDZngYNlo/YIp5WIU1+AYhbEILduEA2iDgD1zBX/jnXXrX3q13Ny2d8Z4yK/AC3sMjW1ykjw==
    id = 1
    AAAB+3icbVDLSgNBEOz1GeNrjUcvg4ngKezqQS9iwIvHBMwDkiXMTmaTIbMPZnolYQn4JV48KOJV8Du8+Q3+hLtJDppY0FBUddPd5UZSaLSsL2NldW19YzO3ld/e2d3bNw8KDR3GivE6C2WoWi7VXIqA11Gg5K1Iceq7kjfd4U3mN++50iIM7nAcccen/UB4glFMpa5ZKIkeuSId5CPUXmJPSvmuWbTK1hRkmdhzUrz+qH0/AEC1a352eiGLfR4gk1Trtm1F6CRUoWCST/KdWPOIsiHt83ZKA+pz7STT2yfkJFV6xAtVWgGSqfp7IqG+1mPfTTt9igO96GXif147Ru/SSUQQxcgDNlvkxZJgSLIgSE8ozlCOU0KZEumthA2oogzTuLIQ7MWXl0njrGxbZbtmFyvnMEMOjuAYTsGGC6jALVShDgxG8AjP8GJMjCfj1Xibta4Y85lD+APj/QejLZW/
    c = Tbilisi
    AAAB/3icbVDJSgNBEK1xjXGLCl68NCaCpzAjgl7EgBePEbJBEkJPpydp0rPQXSOGMQc/Izfx4kERr/kNb/6NneWgiQ8KHu9VUVXPjaTQaNvf1tLyyuraemojvbm1vbOb2duv6DBWjJdZKENVc6nmUgS8jAIlr0WKU9+VvOr2bsZ+9Z4rLcKghP2IN33aCYQnGEUjtTKHOUauSAP5A2ovKbnC7BSDXCuTtfP2BGSRODOSvR4Nh88AUGxlvhrtkMU+D5BJqnXdsSNsJlShYJIP0o1Y84iyHu3wuqEB9bluJpP7B+TEKG3ihcpUgGSi/p5IqK9133dNp0+xq+e9sfifV4/Ru2wmIohi5AGbLvJiSTAk4zBIWyjOUPYNoUwJcythXaooQxNZ2oTgzL+8SCpnecfOO3dOtnAOU6TgCI7hFBy4gALcQhHKwOARXuAN3q0n69X6sD6nrUvWbOYA/sAa/QC8wJgq
    p = [Nov 7, Nov 9]
    AAACBHicbVDJSgNBEK1xjXGLyy2XxkTwIGFGBPUgBLx4kghmgWSIPZ2epLFnobsmGIYcvPgrXjwo4tWP8Obf2FkOGn1Q1OO9KrrrebEUGm37y5qbX1hcWs6sZFfX1jc2c1vbNR0livEqi2SkGh7VXIqQV1Gg5I1YcRp4kte9u4uRX+9zpUUU3uAg5m5Au6HwBaNopHYuX4zPW8jvUftp8yrqk5NDMmpn7rDYzhXskj0G+UucKSmUd33/FgAq7dxnqxOxJOAhMkm1bjp2jG5KFQom+TDbSjSPKbujXd40NKQB1246PmJI9o3SIX6kTIVIxurPjZQGWg8Cz0wGFHt61huJ/3nNBP1TNxVhnCAP2eQhP5EEIzJKhHSE4gzlwBDKlDB/JaxHFWVocsuaEJzZk/+S2lHJsUvOtVMoH8MEGcjDHhyAAydQhkuoQBUYPMATvMCr9Wg9W2/W+2R0zpru7MAvWB/fjsuYKQ==
    u = Mike
    AAAB/HicbVDLSgNBEOyN7/iKevQyGAVPYVcPehEDXrwICRgVkhBmJ73JkNkHM71iWCL+iRcPingVv8Ob3+BPOEk8aLSgoajqprvLT5Q05LofTm5qemZ2bn4hv7i0vLJaWFu/MHGqBdZErGJ95XODSkZYI0kKrxKNPPQVXvq9k6F/eY3ayDg6p36CzZB3IhlIwclKrcLGdsqOWIPwhkyQnckeDrZbhaJbckdgf4n3TYrHb9XPOwCotArvjXYs0hAjEoobU/fchJoZ1ySFwkG+kRpMuOjxDtYtjXiIppmNjh+wHau0WRBrWxGxkfpzIuOhMf3Qt50hp66Z9Ibif149peCwmckoSQkjMV4UpIpRzIZJsLbUKEj1LeFCS3srE12uuSCbV96G4E2+/Jdc7JU8t+RVvWJ5H8aYh03Ygl3w4ADKcAoVqIGAPtzDIzw5t86D8+y8jFtzzvfMBvyC8/oFQBmWvA==

    View Slide

  42. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    1 Tbilisi [Nov 7, Nov 9] Mike
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==

    View Slide

  43. Executing the net
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hid,c,pi
    Available
    Accommodation
    int⇥string⇥string
    Reserved
    Property
    int⇥int⇥string⇥string⇥string
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    1 Tbilisi [Nov 7, Nov
    9]
    Mike
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    constraint violation —> ROLLBACK!

    View Slide

  44. Rollback Flow
    • Use when the application of a ground action fails
    • Update=OK => commit to the DB, use normal flow
    • Update=!OK => rollback on the DB, use rollback flow
    • The rollback flow can be used to model “undo” or
    “compensation” in the control layer when the
    persistence layer rejects the update

    View Slide

  45. accommodation (option) identifier.
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Chose
    Another Property
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hs,id,c,pi
    hs,c,pi
    hid,c,pi
    hs,id,c,pi
    Executing the net
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h50, 1, Tbilisi, [Nov 7, Nov 9], Mikei
    AAACJ3icbVDLSiNBFL2tzoxmHkZduimMA7NoQvcM4riRMG7cKApGhXSTqa7cjkWqq5uq22Jo8jez8VfcCM4guvRPrCQufMyBog7n3MN9JIWSloLg3puZnXv3/sP8Qu3jp89fFutLy8c2L43AtshVbk4TblFJjW2SpPC0MMizROFJMtgZ+yfnaKzM9RENC4wz3tcylYKTk7r17fVIcd1XyCLCC7JptRH4LPTZUSJde+mzzn5+zjZ9Nv62Yp/tyQGOIjMJrXfrjaAZTMDekvCJNFor/NdvADjo1m+iXi7KDDUJxa3thEFBccUNSaFwVItKiwUXA97HjqOaZ2jjarLniH11So+luXFPE5uozxMVz6wdZomrzDid2dfeWPyf1ykp/RlXUhcloRbTRmmpGOVsfDTWkwYFqaEjXBjpZmXijBsuyJ225o4Qvl75LTn+3gyDZngYNlo/YIp5WIU1+AYhbEILduEA2iDgD1zBX/jnXXrX3q13Ny2d8Z4yK/AC3sMjW1ykjw==
    id = 1
    AAAB+3icbVDLSgNBEOz1GeNrjUcvg4ngKezqQS9iwIvHBMwDkiXMTmaTIbMPZnolYQn4JV48KOJV8Du8+Q3+hLtJDppY0FBUddPd5UZSaLSsL2NldW19YzO3ld/e2d3bNw8KDR3GivE6C2WoWi7VXIqA11Gg5K1Iceq7kjfd4U3mN++50iIM7nAcccen/UB4glFMpa5ZKIkeuSId5CPUXmJPSvmuWbTK1hRkmdhzUrz+qH0/AEC1a352eiGLfR4gk1Trtm1F6CRUoWCST/KdWPOIsiHt83ZKA+pz7STT2yfkJFV6xAtVWgGSqfp7IqG+1mPfTTt9igO96GXif147Ru/SSUQQxcgDNlvkxZJgSLIgSE8ozlCOU0KZEumthA2oogzTuLIQ7MWXl0njrGxbZbtmFyvnMEMOjuAYTsGGC6jALVShDgxG8AjP8GJMjCfj1Xibta4Y85lD+APj/QejLZW/
    c = Tbilisi
    AAAB/3icbVDJSgNBEK1xjXGLCl68NCaCpzAjgl7EgBePEbJBEkJPpydp0rPQXSOGMQc/Izfx4kERr/kNb/6NneWgiQ8KHu9VUVXPjaTQaNvf1tLyyuraemojvbm1vbOb2duv6DBWjJdZKENVc6nmUgS8jAIlr0WKU9+VvOr2bsZ+9Z4rLcKghP2IN33aCYQnGEUjtTKHOUauSAP5A2ovKbnC7BSDXCuTtfP2BGSRODOSvR4Nh88AUGxlvhrtkMU+D5BJqnXdsSNsJlShYJIP0o1Y84iyHu3wuqEB9bluJpP7B+TEKG3ihcpUgGSi/p5IqK9133dNp0+xq+e9sfifV4/Ru2wmIohi5AGbLvJiSTAk4zBIWyjOUPYNoUwJcythXaooQxNZ2oTgzL+8SCpnecfOO3dOtnAOU6TgCI7hFBy4gALcQhHKwOARXuAN3q0n69X6sD6nrUvWbOYA/sAa/QC8wJgq
    p = [Nov 7, Nov 9]
    AAACBHicbVDJSgNBEK1xjXGLyy2XxkTwIGFGBPUgBLx4kghmgWSIPZ2epLFnobsmGIYcvPgrXjwo4tWP8Obf2FkOGn1Q1OO9KrrrebEUGm37y5qbX1hcWs6sZFfX1jc2c1vbNR0livEqi2SkGh7VXIqQV1Gg5I1YcRp4kte9u4uRX+9zpUUU3uAg5m5Au6HwBaNopHYuX4zPW8jvUftp8yrqk5NDMmpn7rDYzhXskj0G+UucKSmUd33/FgAq7dxnqxOxJOAhMkm1bjp2jG5KFQom+TDbSjSPKbujXd40NKQB1246PmJI9o3SIX6kTIVIxurPjZQGWg8Cz0wGFHt61huJ/3nNBP1TNxVhnCAP2eQhP5EEIzJKhHSE4gzlwBDKlDB/JaxHFWVocsuaEJzZk/+S2lHJsUvOtVMoH8MEGcjDHhyAAydQhkuoQBUYPMATvMCr9Wg9W2/W+2R0zpru7MAvWB/fjsuYKQ==
    u = Mike
    AAAB/HicbVDLSgNBEOyN7/iKevQyGAVPYVcPehEDXrwICRgVkhBmJ73JkNkHM71iWCL+iRcPingVv8Ob3+BPOEk8aLSgoajqprvLT5Q05LofTm5qemZ2bn4hv7i0vLJaWFu/MHGqBdZErGJ95XODSkZYI0kKrxKNPPQVXvq9k6F/eY3ayDg6p36CzZB3IhlIwclKrcLGdsqOWIPwhkyQnckeDrZbhaJbckdgf4n3TYrHb9XPOwCotArvjXYs0hAjEoobU/fchJoZ1ySFwkG+kRpMuOjxDtYtjXiIppmNjh+wHau0WRBrWxGxkfpzIuOhMf3Qt50hp66Z9Ibif149peCwmckoSQkjMV4UpIpRzIZJsLbUKEj1LeFCS3srE12uuSCbV96G4E2+/Jdc7JU8t+RVvWJ5H8aYh03Ygl3w4ADKcAoVqIGAPtzDIzw5t86D8+y8jFtzzvfMBvyC8/oFQBmWvA==

    View Slide

  46. accommodation (option) identifier.
    Available
    Accommodation
    Insert
    Booking Data
    Reserve Enter
    User Details
    Chose
    Another Property
    Reserved
    Property
    book
    (id,c,p,u)
    Finish
    Booking
    h⌫s,c,pi hs,c,pi hs,id,c,pi hs,id,c,pi hs,id,c,p,ui hs,id,c,p,ui
    hs,id,c,pi
    hs,c,pi
    hid,c,pi
    hs,id,c,pi
    Executing the net
    Available
    ID city period
    3 Munich [Dec 2, Dec 22]
    Booked
    ID city period user_data
    1 Tbilisi [Nov 7, Nov 9] Ann
    h3, Munich, [Dec 2, Dec 22]i
    AAACHXicbVDPSxtBGP3W1qqprWl79DIkCkJD2I2CPYbaQy+CQmOE7BJmJ98mg7Ozy8y3Yljyj/Sif4qXHlrEg5fS/8bJxoM/+mCYx3vvY+Z7ca6kJd//5y29er38ZmV1rfZ2/d37jfqHjyc2K4zAnshUZk5jblFJjT2SpPA0N8jTWGE/PjuY+/1zNFZm+gdNc4xSPtYykYKTk4b1va1QcT1WyELCC7JJudtih4WWYtJig28oWKfFqqsTzUJTRbeG9abf9iuwlyR4IM1uI/x8BQBHw/pdOMpEkaImobi1g8DPKSq5ISkUzmphYTHn4oyPceCo5inaqKy2m7Ftp4xYkhl3NLFKfTxR8tTaaRq7ZMppYp97c/F/3qCg5EtUSp0XhFosHkoKxShj86rYSBoUpKaOcGGk+ysTE264IFdozZUQPF/5JTnptAO/HRwHze5XWGAVNqEBOxDAPnThOxxBDwT8hGv4DX+8S++Xd+PdLqJL3sPMJ3gC7+891s6hWA==
    h50, 1, Tbilisi, [Nov 7, Nov 9], Mikei
    AAACJ3icbVDLSiNBFL2tzoxmHkZduimMA7NoQvcM4riRMG7cKApGhXSTqa7cjkWqq5uq22Jo8jez8VfcCM4guvRPrCQufMyBog7n3MN9JIWSloLg3puZnXv3/sP8Qu3jp89fFutLy8c2L43AtshVbk4TblFJjW2SpPC0MMizROFJMtgZ+yfnaKzM9RENC4wz3tcylYKTk7r17fVIcd1XyCLCC7JptRH4LPTZUSJde+mzzn5+zjZ9Nv62Yp/tyQGOIjMJrXfrjaAZTMDekvCJNFor/NdvADjo1m+iXi7KDDUJxa3thEFBccUNSaFwVItKiwUXA97HjqOaZ2jjarLniH11So+luXFPE5uozxMVz6wdZomrzDid2dfeWPyf1ykp/RlXUhcloRbTRmmpGOVsfDTWkwYFqaEjXBjpZmXijBsuyJ225o4Qvl75LTn+3gyDZngYNlo/YIp5WIU1+AYhbEILduEA2iDgD1zBX/jnXXrX3q13Ny2d8Z4yK/AC3sMjW1ykjw==
    h50, 1, Tbilisi, [Nov 7, Nov 9]i
    AAACIXicbVBNT9tAEB3T8tHw0QDHXlYNSByiyKZCwC2CS08oSElAiq2w3ozDKuu1tTtGRFb+Cpf+FS49tELcqv4ZNh+HFhhptU/vvdHMvDhX0pLv//GWPnxcXlld+1RZ39jc+lzd3unarDACOyJTmbmOuUUlNXZIksLr3CBPY4VX8eh8ql/dobEy020a5xilfKhlIgUnR/WrJ3uh4nqokIWE92ST8sivs6DO2rF042Wd9S6yO3ZcZ9PvNJqEZmbf61drfsOfFXsLggWoNXf52Q0AtPrV53CQiSJFTUJxa3uBn1NUckNSKJxUwsJizsWID7HnoOYp2qicXThh+44ZsCQz7mliM/bfjpKn1o7T2DlTTrf2tTYl39N6BSUnUSl1XhBqMR+UFIpRxqZxsYE0KEiNHeDCSLcrE7fccEEu1IoLIXh98lvQPWwEfiO4DGrNbzCvNfgCX+EAAjiGJnyHFnRAwAM8wi/47f3wfnpP3vPcuuQtenbhv/L+vgBKqqKB

    View Slide

  47. What can we do with DB-nets?

    View Slide

  48. Modelling, simulation and beyond (now)
    • Formalisation of Enterprise Application Integration (EAI)
    ‣ a joint work with Daniel Ritter (SAP Germany) and
    Stefanie Rinderle-Ma (University of Vienna)
    ‣ modelling integration patterns and their compositions
    ‣ used a prototype based on CPN Tools and Access/CPN
    ‣ correctness checking via simulation
    • Currently working on patterns for multimedia databases

    View Slide

  49. • Developing a new prototype for modelling and
    simulation only / “de-prototyping” in case of EAI
    • Data benchmarking
    ‣ use a process interacting with possibly multiple
    datasources
    ‣ can be used in the preparation phase for
    process mining
    Modelling, simulation and beyond (future)

    View Slide

  50. Extending the framework
    • Distributed DB-nets
    ‣ multiple/different data sources
    ‣ persistent storages don’t have to be relational
    • DB-nets with time
    ‣ the idea has been already informally exploited
    while modelling enterprise integration patterns,
    but has never been formalised

    View Slide

  51. Verification
    • It is possible to show that a FO variant of μ-calculus
    is decidable for bounded DB-nets with real and
    string data types
    • There is a reduction from a class of DB-nets to a
    class of CPNs (requires a finite state abstraction
    implemented for the latter)
    • DB-nets in SMT: study different encodings for
    checking safety properties of DB-net models

    View Slide

  52. Questions, please

    View Slide