WME Logo
      MESP HOME |  About Author |  Milestones |  Progress&Status |  Software |  Documentation |  References |

MESP: Mathematics Education Service Protocol


MESP is an Application Layer protocol that is used for delivering dynamic education content generated by WME Services to MeML Processor and managing the semantic and collaborative communication among MeML Processor and all kinds of WME Services.

MESP is not a general purpose communication protocol like RPC, RMI, SOAP, etc. It is education-oriented and it is delivered with a Common Education Model (CEM). Its design purposes are:

  • Helping to find and relocate WME Services at both MeML page authoring time and delivering time.
  • Promoting WME developers to define accessible, interoperable, and reusable WME Services.
  • Managing the interoperations and content exchange among MeML Processor and WME Services.
Figure 1 shows the relationship among MeML page, MeML Processor (Woodpecker), CEM, and MESP. Figure 2 shows how MESP can be involved at both MeML page authoring time and delivering time.

Common Education Model (CEM)

CEM is an object model which defines both practical and virtual entities that are involved in online mathematics education activities. For examples, Student and Teacher are practical entities, Quiz Base' (like DMAD) and Math Compute Engine (like IAMC Server) are virual entities. Each entity, if it is involed in a real-time educating process, must be bound to a runtime object representation in MESP. For example, Student and Teacher entities are always bound to object instances provided by MeML Processors. They represent the real student user and teacher user of WME environment. They collect data generated for student/teacher and present their interaction behaviour as object interface. Vitual entities could be either local or remote to MeML Processor. For examples, Expression Convertor could be locally implemented by MeML Processor, but Quiz Base is obviously a remote object and is implemented by a WME Service. All CEM objects can be directly or inderectly referenced by MeML page content.

Everey time when a MeML page is delivered to client browser, MeML Processor is responsible for figuring out all referenced CEM objects and find for them the correspondent implementations through MESP. After that, the work of MESP is filtering all remote object events and manage the triggered interactions and data exchange. Depending on how much information MeML Processor provide to MESP, MESP could enable the communication between MeML Processor and WME Service, or the communication between WME Services themselves.

About the author

Name: Xiao Zou


Progress & Status