transducer based rewriting games for active xml
play

Transducer-Based Rewriting Games for Active XML Martin Schuster TU - PowerPoint PPT Presentation

Transducer-Based Rewriting Games for Active XML Martin Schuster TU Dortmund Highlights 2016 1/8 Active XML 2/8 Active XML City Name, Meteo, Events City Name S TRING Meteo @meteo_svc Name Meteo Events Events @event_svc


  1. Transducer-Based Rewriting Games for Active XML Martin Schuster TU Dortmund Highlights 2016 1/8

  2. Active XML 2/8

  3. Active XML City → Name, Meteo, Events City Name → S TRING Meteo → @meteo_svc Name Meteo Events Events → @event_svc Brussels @ meteo_svc @event_svc event_svc: → (Sports|Concert)*@event_svc meteo_svc: → S TRING centigrade Brussels . . . 2/8

  4. Active XML City → Name, Meteo, Events Name → S TRING City Meteo → @meteo_svc Name Meteo Events Events → @event_svc event_svc: → (Sports|Concert)*@event_svc 24 ◦ /sunny Sports @event_svc Brussels meteo_svc: → S TRING . football Brussels . . 2/8

  5. The Schema Rewriting Problem Server Client City → Name, Meteo, Events City → Name, Meteo, Events Events → (Sports | Concert)* Events → @event_svc event_svc: → (Sports | Concert)* Server (CC-BY-SA 3.0) RRZE Icons, Client (LGPL) Everaldo Coelho 3/8

  6. The Schema Rewriting Problem Server Client City → Name, Meteo, Events City → Name, Meteo, Events Events → (Sports | Concert)* Events → @event_svc event_svc: → (Sports | Concert)* Server (CC-BY-SA 3.0) RRZE Icons, Client (LGPL) Everaldo Coelho Goal: Rewrite source document into target schema using function calls 3/8

  7. The Schema Rewriting Problem Server Client City → Name, Meteo, Events City → Name, Meteo, Events Events → (Sports | Concert)* Events → @event_svc event_svc: → (Sports | Concert)* Server (CC-BY-SA 3.0) RRZE Icons, Client (LGPL) Everaldo Coelho Goal: Rewrite source document into target schema using function calls Only schemas for remote services known in advance 3/8

  8. The Schema Rewriting Problem Server Client City → Name, Meteo, Events City → Name, Meteo, Events Events → (Sports | Concert)* Events → @event_svc event_svc: → (Sports | Concert)* Server (CC-BY-SA 3.0) RRZE Icons, Client (LGPL) Everaldo Coelho Goal: Rewrite source document into target schema using function calls Only schemas for remote services known in advance � find a safe rewriting strategy 3/8

  9. The Schema Rewriting Problem Server Client City → Name, Meteo, Events City → Name, Meteo, Events Events → (Sports | Concert)* Events → @event_svc event_svc: → (Sports | Concert)* Server (CC-BY-SA 3.0) RRZE Icons, Client (LGPL) Everaldo Coelho Goal: Rewrite source document into target schema using function calls Only schemas for remote services known in advance � find a safe rewriting strategy � Context-free game on nested words 3/8

  10. Nested Words 4/8

  11. Nested Words Idea: Correct nesting of tags over label alphabet Σ Example � a �� / a �� a �� b �� c �� / c �� / b �� a �� / a �� / a � 4/8

  12. Nested Words Idea: Correct nesting of tags over label alphabet Σ � Linearisations of Σ -labelled forests Example a a � a �� / a �� a �� b �� c �� / c �� / b �� a �� / a �� / a � b a c 4/8

  13. Context-Free Games on Nested Words: Example 5/8

  14. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement 5/8

  15. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached 5/8

  16. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} 5/8

  17. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} | � f �� / f �� f �� / f � 5/8

  18. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f � | � / f �� f �� / f � 5/8

  19. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f � | � f �� / f � 5/8

  20. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � 5/8

  21. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � 5/8

  22. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ 5/8

  23. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f � | � a �� g �� / g �� / a � 5/8

  24. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f �� a � | � g �� / g �� / a � 5/8

  25. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f �� a �� g � | � / g �� / a � 5/8

  26. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f �� a �� g � | � / g �� / a � 5/8

  27. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f �� a �� g � | � / g �� / a � ↓ 5/8

  28. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f �� a �� g � | � / g �� / a � ↓ � f �� / f �� a �� a �� / a �� / a � 5/8

  29. Context-Free Games on Nested Words: Example Intuition: J ULIET picks function node to call, R OMEO chooses replacement J ULIET wins once a target language string is reached Example T = {� f �� / f �� a � n � / a � n | n ≥ 0 } , f → {� a � n � g � m � / g � m � / a � n | n , m ≥ 0 } , g → {� a �� / a �} � f �� / f �� f � | � / f � ↓ � f �� / f �� a �� g � | � / g �� / a � ↓ � f �� / f �� a �� a �� / a �� / a � � 5/8

Recommend


More recommend