Involving Business Users in Formal Modeling Using Natural Language Pattern Sentences

16
Involving Business Users in Formal Modeling using Natural Language Pattern Sentences Jeroen van Grondelle Ronald Heller Emiel van Haandel Tim Verburg Accepted as full paper for the 17th International Conference on Knowledge Engineering and Knowledge Management Embrace complexity, Simplify your organization

Transcript of Involving Business Users in Formal Modeling Using Natural Language Pattern Sentences

Involving Business Users in Formal Modeling using Natural Language Pattern Sentences Jeroen van Grondelle Ronald Heller Emiel van Haandel Tim Verburg Accepted as full paper for the 17th International Conference on Knowledge Engineering and Knowledge Management

Embrace complexity,

Simplify your organization

This paper is accepted as full paper for the 17th International Conference on Knowledge Engineering and Knowledge Management. The conference will be held October 11-15 2010 in Lisbon, Portugal. The original paper is published in the conference proceedings published in the LNCS series and will be available from www.springerlink.com.

About Be Informed

Be Informed

Wapenrustlaan 11-31

7321 DL Apeldoorn

The Netherlands

T +31 (0)55 368 14 20

E [email protected]

www.beinformed.com

Be Informed is an internationally operating, independent

software vendor. The Be Informed business process platform

supports administrative processes, which are becoming

increasingly knowledge-intensive. Thanks to Be Informed’s

unique approach to dynamic case management, the next wave

after business process management, organizations using Be

Informed often report cost savings of tens of percents. Further

benefits include a much higher straight-through processing

rate leading to vastly improved productivity, and a reduction

in time-to-change from months to days.

Involving Business Users in Formal Modelingusing Natural Language Pattern Sentences

Jeroen van Grondelle, Ronald Heller, Emiel van Haandel, and Tim Verburg

Be Informed, De Linie 620, 7325 DZ Apeldoorn, The Netherlands{j.vangrondelle, r.heller, e.vanhaandel, t.verburg}@beinformed.nl,

http://www.beinformed.nl/

Abstract. With knowledge representation based technologies reachingthe enterprise, involving business users in modeling is more importantthan ever. When primary processes and business decisions are driven bymodels, business knowledge needs to be captured and only business userscan establish whether the models created are correct.A natural language based representation of models can help businessusers get involved in the modeling process. We have used a representationbased on natural language pattern sentences to improve business userparticipation in our business modeling projects. Based on the lessonslearned, user interfaces have been developed that use this representationfor both communicating and editing formal models.

Keywords: Natural language, knowledge authoring, knowledge acqui-sition, knowledge representation, user interfaces.

1 Introduction

The adoption of model driven technologies such as Enterprise Decision Man-agement and Business Process Management is growing. As a result, involvingbusiness users in modeling is more important than ever. Their ability to capturebusiness knowledge in models correctly is a key factor in the adoption of thesetechnologies. They enable businesses to run processes based on models alone,eliminating the need for expensive and time consuming systems development toimplement changes. The feasibility and success of implementations using thesetechnologies, depend heavily on the level of control that business users have inthe modeling process.

In practice, we see business users involved in different roles. The ultimate goalis often to enable business users to create and maintain the models themselves.This is of course the most efficient way to keep regularly changing knowledgemodels up to date, and it reduces the number of transfers of information andintentions before formally capturing knowledge.Traditionally however, business users have transferred their knowledge or re-quirements informally to information professionals, such as information analysts

2 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

and systems designers. Beyond that point, the role of business users is oftenlimited to reviewing the models and specifications that these information pro-fessionals produce. In environments based on modeling, this means that businessusers are required to review more formal representations than before. Althoughthe involvement level might seem limited, it can prove challenging in practice.In this paper we describe how to equip business users to better participate inthis process.Modeling policy candidates and reviewing the resulting models can improve thepolicy making process considerably, by integrating formal modeling techniquesas early as the decision stages. Allowing for consistency checking and ’what if’analyses, the model driven environment leads to better policies.

The main challenge in involving business users in knowledge modeling is thefact that most business users are not trained in formal knowledge representationtechniques. A formal, concise, visual representation can be quite intimidatingto the uninitiated. As a result, these users experience problems relating theserepresentations to their working knowledge of the domain concerned. When pre-sented with a model representation of knowledge they provided themselves, theyoften do not understand how their knowledge is represented in the model. Thismeans they will not be able to verify the accuracy of the model directly.

Be Informed develops a software suite that is used by complex, knowledge in-tensive organizations to capture their business knowledge and run model drivenservices based on these knowledge models. This paper shows how a model vi-sualization based on natural language has helped Be Informed users to activelyparticipate in modeling business knowledge. User interfaces were developed thatcan help business users to review models created by others and develop thesemodels themselves. Furthermore, the natural language based visualization is usedto communicate the formal models further, to users that are not participatingin modeling, but whose work is influenced by the resulting models.

2 Related Work

Using natural language to represent formal models is an active field of research.The representation presented in this paper is in many respects part of the fieldof Controlled Natural Languages. Using controlled languages to represent on-tologies has been done before in Attempto Controlled Language by Kaljurandand Fuchs [1] and in CLOnE by Funk et al. [2]. The textual syntax definitionproposed in this paper is quite similar to the definition used in CLOnE.

Furthermore, work has been done to enable business users to actively expresstheir knowledge based on these controlled natural languages. As controlled lan-guages are designed to avoid ambiguity and complexity, NLP has been used toparse sentences into modeling constructs or even roundtrip between textual rep-resentation and formal ontology specification, for instance by Davis et al. [3]. Our

Involving Business Users in Formal Modeling 3

approach towards editing a model, based on a natural language visualization isdifferent: The formal model remains the single source at all times. The textualrepresentation is just used as a view on the formal model and editing operationsby the user in the view are translated into updates to that underlying formalmodel. Of course, the view needs (partial) updating as a consequence, followingthe Model-View-Controller paradigm.

The fact that no NLP or parsing needs to be performed on the textual rep-resentation provides a lot of freedom in choosing the pattern sentences. Thisenables us to benefit from areas such as requirement engineering and businessrules. Methods such as RuleSpeak [4] and the OMG standard SBVR [5] haverationalized the use of natural language by business users by introducing syn-tactic guidelines and best practices. These guidelines have proven to be usefulin choosing our pattern sentences.

3 Representing Formal Models using Pattern Sentences

3.1 Separating Syntax from Semantics

Knowledge representation in Be Informed is based on concept graphs, contain-ing concepts, relations between concepts and properties of both concepts andrelations. To add semantics, the concepts, relations and properties are typed,using types from a meta model associated with the graph.

For the purpose of presenting and editing these models, they are visualized tousers using a syntax that matches the semantic information in the meta model.These syntaxes can be both graphical and textual. For instance, the defaultvisualization in Be Informed is a graphical visualization, based on a visual syntaxthat maps iconography, line styles and colors to meta model types.

Textual syntax

Formal model

Textual visualization

ConceptProperty 1Property 2

ConceptProperty 1Property 2

ConceptProperty 1Property 2

IconographyLine styles

Labels

Graphical visualization

Visual syntax

Pattern Sentences

Fig. 1. Visualizing models using both visual and textual syntaxes

4 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

The visualization proposed in this paper represents the graph using patternsentences based on natural language. Visualization is defined by a grammar ofpattern sentences, which consists of natural language text with placeholders thatmap to the graphs concepts and properties by their types and relations. Thesesentences are hand crafted to communicate the semantics of the graph constructsthey represent.

3.2 Visualizing Graphs using Pattern Sentences

On visualizing a graph, the structural mapping constraints that follow from thepattern sentences are applied to the graphs concepts and relations. Then, in-stances of the pattern sentences are shown for each matching combination ofconcepts and relations.

Pattern sentences consist of different kinds of parts. They have their own prop-erties that are used as constraints when mapping the pattern sentences to agraph.

1. Static text fragments contain the wording of the sentences;2. Subject placeholders map to concepts that act as the subject of a sentence

and include its label in the text;(a) The subject placeholder maps to subjects of specified type;

3. Object placeholders map to the objects of the sentences’ subjects relationsand include their label in the text;(a) The object placeholder maps to objects of specified type;(b) The object placeholder maps to objects of relations with the subject of

specified type;(c) The object placeholder concats the objects labels according to the num-

ber of objects and with configurable infixes;4. Property placeholders map to the subjects properties and include their value

in the text;(a) The property placeholder maps to properties of specified type.

Legend

Concept

Property

Static text fragment

Placeholder

Fig. 2. Mapping pattern sentences to a concept graph

Fragments and placeholders are grouped into sentence parts, in order to makecertain parts of the sentence optional. If the graph construct they map to does

Involving Business Users in Formal Modeling 5

not exist, the other parts of the sentence might still apply and form a valid tex-tual representation.

Pattern sentences have to deal with cardinality in the (meta)model. In a trivialcase, where sentences encode for one relation instance only, having more than onerelation is represented in language by introducing a sentence for each relation.Pattern sentences can also represent multiplicity within a sentence, so that onesentence encodes a number of relations and concepts. A grammar can contain onesentence to encode for more multiple relations of the same type. For any subject,all these relations are then represented in a single sentence with the objects ofthe relations enumerated inside. A sentence can also encode for relations of morethan one type. In that case, sentence parts encode for the different relation types,and they are concatenated into a single sentence.

3.3 Influencing the Sentence Generation

Although the mechanism presented in the last section does not require additionalinformation to generate sentences based on a model, the resulting sentences canbe influenced at a number of levels.

A grammar may contain alternative sentences that map to the same graph frag-ments. These may be equivalent sentences, mapping to exactly the same graphconstructs. Alternatively, a grammar contains both sentences that map to moregeneral and more specific constructs. The sentences have a precedence withinthe grammar, indicating which sentence to use first if possible. Alternatively, auser could be given a choice if more than one sentence applies.

The same holds for the order of the sentences in the document. This order de-pends on the order of both sentences in the grammar and concepts in the graph.Typically, a user could be allowed to choose a more appropriate order.

Variants can also be chosen at the grammar level. As grammar and meta modelare strictly decoupled, alternative grammars can be developed for a single metamodel. As a result, a single model can be represented into different textual rep-resentations, as displayed in Figure 3. This can be used to target different usergroups for instance. A grammar containing more formal, precise language couldbe used for legally trained employees, where a more informal grammar is suitablefor wider audiences.

The same mechanism could be used to represent a single model into differentlanguages. Apart from translating the pattern sentences in the grammar, themodel will have to be available in multiple languages. This requires manuallyspecifying multi-lingual labels or using automated translation, such as is beingdeveloped in the EU’s Monnet project1.1 http://www.monnet-project.eu/

6 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

Textual syntax A

Textual syntax B

Formal model

Textual visualization A

Textual visualization B

Pattern Sentences

Pattern Sentences

Fig. 3. Mapping a model to two different textual representations

3.4 An Example: A Telecom Product Model

In this section we present an example based on the product model of a telecomprovider.

The meta model in Figure 4 is based on typical taxonomical structures for mod-eling products and associated discounts. The requirement relations connect thediscounts with the products, or combinations of products, they apply to. Thisbasic meta model enables the modeling of both the provider’s product portfoliostructure and the requirements its client must meet to apply for specific targetgroup discounts.

Product

Class

Product

Option

Discount

Class

Discount

Subclass of Subclass of

Instance of Instance of

Requires

Option for

O

P

P %

%

Fig. 4. Meta model for the Telecom example

An example of a product and discount model in the traditional graphical notationis given in Figure 5. It describes the telephone, television and internet products

Involving Business Users in Formal Modeling 7

the provider has and how customers apply for specific discounts. For example, aconsumer ordering all three products (Internet, Telephone and TV) applies fora triple play discount.

VOIP

Option

Light

ADSL

Instance of

Portfolio

TV

Analog

TV

Fast

ADSL

Digital

TV

Basic

Telephony

Internet Telephony

Triple Play Early Adopter

Consumer

Instance ofInstance ofInstance ofInstance of

Subclass of Subclass of Subclass of

Requires Requires Requires

Option for

Requires

Instance of Instance of

Requires

P

P

O

P P P P

P P

P

%

% %

Fig. 5. Product model for the Telecom example

To visualize the product model in natural language, we need to specify a gram-mar first; such a grammar should mirror the information in the meta modelshown in Figure 4. The example grammar introduces product classes and indi-vidual products in short, structural sentences. The following two patterns arepossible parts of this grammar:

1. “There is a class of products named PC.” ↔ {ProductClass}.2. “The product P is a PC product.”↔ {Product, instanceof, ProductClass}.

The first sentence pattern can be used to declare a class of products, while thesecond is meant to declare a specific product and to which class it belongs. Thefollowing two sentences are examples of such a specific declaration:

I There is a class of products named Internet.

II The product Fast ADSL is an Internet product.

Introducing discounts requires a more complex structure of several sentence partsthat can be linked together.

8 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

3. a) “The discount D is a DC discount,”↔ {Discount, instanceof,DiscountClass}

b) “and customers apply for it by ordering the product P ,”↔ {Discount, requires, Product}

c) “with options O.” ↔ {Discount, requires,Option}

The first part introduces a discount and encodes for its type relation, as it ismandatory. The second part encodes for the products required to apply for thediscount. The third part encodes for the options that are required to apply forthe discount, if any.

Based on the product model from Figure 5, the following textual representationof the two types of discounts can be constructed:

III The discount Triple Play is a Consumer discount, and customersapply for it by ordering all of the products Fast ADSL, Digital

TV and Basic Telephony.

IV The discount Early Adopter is a Consumer discount, and cus-tomers apply for it by ordering the product Basic Telephony,with option VOIP.

4 User Interfaces based on Pattern Sentences

Based on the experiences with the representation described, user interfaces weredeveloped to enable Be Informed users to use the natural language representa-tions in their work.

4.1 Using Language Representation in Knowledge Base Access

Often, the results of knowledge representation efforts are published online to as-sist reviewing and querying of the models. Typically, such an interface is basedon directory-style navigation and search. A concept, or topic, is represented bya page, containing all its properties and resources and navigation links to otherrelated topics. The types of both concepts and relations are visualized throughby instance icons or by grouping items in categories.

The natural language representation presented in Section 3 can be integratedinto such an interface. On each page, a textual representation of its concept andall its relations is shown. The textual representation can offer hyperlinks for theconcepts in the sentences, linking to their respective knowledge base pages.

The pattern sentence representation does not need to be a replacement of con-ventional knowledge base interface elements. As shown in Section 3.1, multiplerepresentations can be presented in parallel. Even the visual graph representation

Involving Business Users in Formal Modeling 9

Fig. 6. Multi syntax knowledge base: Navigation, natural language and visual

can be integrated into a knowledge base, which can be useful if the knowledgebase is used for analysts as well as end users. Typically, the appropriate represen-tation is selected based on user profile or roles. However, adding representationsin parallel allows user to focus on the representation of their personal choice,while possibly getting familiar with the other representations.

4.2 Editing Models by Manipulating Sentences

We have also developed an editor for knowledge models based on the patternsentences representation. It uses the interaction metaphor of a text documentwith sentences, however without the cursor as the main means of manipulatingthe document. Instead, the user can edit the model by adding and removingpattern sentences and filling in the placeholders of these pattern sentences.

The biggest interaction challenge in such an interface is supporting users in se-lecting the pattern sentences that match the knowledge they want to express. Atmodeling time, users have little freedom in creating their own sentences, so onlya carefully designed grammar that is offered to the user in a very contextual wayleads to a good user experience.

In the current editor, available pattern sentences are offered to the user in twoways. The pattern sentences are offered in a task centric way in a Tool Palette.Users can drag available pattern sentences from the palette onto the document,where they appear with variable parts that need to be completed. The ToolPalette presents the pattern sentences by a task-oriented name, that summa-rizes the effect or goal of the particular sentence.

10 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

Fig. 7. Task centric and word processor style editing

They are also offered in a more word processor style: By typing at the endof the document, pattern sentences matching the typed text are presented ina popup menu. Selecting a pattern sentence from the menu inserts it into thedocument. Creating references to other concepts is also performed by comboboxes that show a relevant subset of the available concepts based on typed textand placeholder constraints.

Fig. 8. Contextual controls and embedded error messages

To offer the user the experience of a text document, all controls are embedded inthe document and are only visible when a specific sentence part or placeholderis selected. Error feedback is provided by showing annotations inside the textdocument. Sentence parts containing warnings or errors are underlined, orangeand red respectively.

Involving Business Users in Formal Modeling 11

5 Evaluation and Cases

The mechanism and user interfaces presented in this paper have been developedover the last few years based on experiences in actual client projects. In thissection, we present a number of cases where we applied the use of natural lan-guage in formal modeling. We describe observations and lessons learned fromthese projects. They have either guided the development of this mechanism orare the basis for future work.

5.1 Reviews based on Language Representation

Centraal Beheer Achmea, a large Dutch insurer, has developed a self serviceportal for transport insurance, that enables logistic firms to insure their ship-ments. Applications are automatically accepted or rejected and context specificadvice about possible risks and relevant regulatory requirements is presented,both based on knowledge models.

One of the early iterations of this mechanism has been used to help the under-writers to review and validate the models that were created by analysts basedon their input.

The models in this project included context taxonomies to classify a shipmentstype of goods, conveyance and information about destinations etc. A central Risktaxonomy was associated to these context taxonomies to express how shipmentsindividuals belonged to specific risk classes.

– We find that business users often have trouble evaluating formal models usingvisual diagrams. Our clients underwriters, who were owners of the knowledgebeing captured, actively participated in the workshops where we elicited theknowledge, but they had trouble reviewing the result. We got the impres-sion that, although a lack of experience with formal methods contributed tothis problem, there was a cultural dimension to it: graphical diagrams wereregarded as just too technical.

– We found that graphical visualization of tree structured graphs can be im-proved by using a hierarchical layout using indenting. The associative partsof models with many to many relations are the hardest part for businessusers.

– We experienced that natural language representation improves greatly thebusiness users understanding of the models. A first version of the algorithmdescribed above was developed at that time and applied to the risk models.Although the sentences produced were rough and still very triple oriented,the business users immediately spotted language constructs that appearedodd to them. It turned out that the recall rate of modeling errors improveddrastically and investigating sentences they marked was a very good review-ing strategy.

12 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

5.2 Improving the Quality of Legislation through Early Modeling

The Dutch Immigration Office has recently implemented their primary processbased on a knowledge driven architecture, as described in [6]. Based on theirexperiences in retro actively converting existing policy into formal, executablemodels, they are now assessing whether formal modeling as early as in the policymaking process can help to keep the policy consistent and executable.

This project of the Dutch Immigration Office is called the Modern MigrationPolicy, meaning a complete redesign of migration legislation where the valida-tion of implementation possibility and separation of law, policy and applicationis done up front.

The mechanism proposed in this paper is being used to validate candidate pol-icy decisions for consistency even before they are finalized into active policy. Inworkshops with business representatives, legal advisors and knowledge analysts,the policy is defined according to a strict set of textual rules, which is a mixtureof company vocabulary and business rules oriented syntax.

These sentence rules are also implemented in our software and using the de-scribed mechanism we are able to capture the sentences in the same form asthe business users define them. This way, we can validate and demonstrate inrealtime whether or not the defined policy rule is indeed executable using aknowledge based decision system.

Although it is too early to conclude anything from these workshops, as it is workin progress, there are some observations that are interesting enough to share.

– We find that representing knowledge in structured language helps the busi-ness users recognize and understand the knowledge they are responsible for.The graphical representation proved to be unsuitable for most policy makers,who seem to be very text oriented.

– We observe that business users have a hard time recognizing the capturedknowledge in textual representation if it is not represented in the exact samemanner as they have originally stated the rule. For example, a set of criteriarepresented as a comma separated list was not recognizable to users whooriginally stated the rule as a bullet list.

– Another lesson learned is the enthousiasm about the possibility to executethe newly defined policy against test cases almost realtime. As soon as theknowledge is captured in the knowledge system, one is able to execute ser-vices like classification and decision services. This provides direct feedbackand verification of the defined rules. Business users can see that their ownrules are being used. They see the effects they have in real life cases. All this,and as early as in the policy creation phase, should make for better law andlegislation, a conviction shared by all project members involved.

Involving Business Users in Formal Modeling 13

5.3 Dissemination of Finished Models

A risk when implementing a knowledge modeling based application, is that it isregarded as a black box afterwards. In that case, the knowledge is hidden for therest of the organization and is only used for the decision making process. Theapplication described in Section 5.2 heavily depends on the models it is based onand the Dutch Immigration Office is aware that sharing the models is important.

A company wide knowledge infrastructure requires that the knowledge modelsare available to the whole organization, or at least a large part. It would seemlogical to use this knowledge as a basis for multiple company processes. We be-lieve that the textual representation of this knowledge helps in the companywide adoption, especially if this knowledge proves to be the fundamental part inthe primary process.

In the previous sections we used the textual representation as a means to reviewand validate captured knowledge by business users. Other examples of processeswhere the knowledge is applied and where the mechanism described in this papercan deliver support, are:

– The call center employee needs to understand the rules applied. The textualrepresentation can act as another instrument for quick overview and under-standing. The mechanism presented in this paper has support for multipleconfigurations, meaning that the sentence patterns can be custom designedfor identified user groups.

– In the operational process, a decision maker is supported in this activity withknowledge models that specify which rules apply and how to apply them.The decision maker needs to be able to understand the rules when questionsarise. The textual representation is an instrument that will aid the decisionmaker in this.

– External parties, like auditors, reviewers or other experts in the field, mean-ing the knowledge domain, will be able to view the knowledge without theneed for a thorough understanding of for example formal models and on-tologies. The textual representation will enable them to participate at anymoment in the knowledge lifecycle.

6 Discussion and Future Work

In this paper we have presented a mechanism for representing formal conceptgraphs as natural language, using natural language pattern sentences.

This mechanism is not using natural language processing for interpreting thesentences to update the models as many related technologies do. Natural lan-guage generation is used to create sentences from a graph, but updates to thesesentences are performed directly on the underlying graph. This gives a largedegree of freedom in choosing pattern sentences. Sentences that might seem too

14 Jeroen van Grondelle, Ronald Heller, Emiel van Haandel and Tim Verburg

informal or complex from a parsing perspective, are feasible in our approach andmay be very understandable to business users.

Another important choice is the fact that the textual syntax, like the meta modeland visual syntax, is chosen before the actual modeling. In other words: a lan-guage has to be chosen before one can start to speak. This relieves the modelerof choosing the appropriate words in every sentence, as he would not chooseiconography for individual diagrams in visual notation. As the number of thingsthat can be said are limited by the meta model, the number of ways to say it isnow limited by the available pattern sentences.

We have demonstrated a number of user interfaces based on this representationthat can be used for creating, maintaining en reviewing formal models. Its usein practical cases shows that the use of pattern sentences has helped businessusers to actively participate in various phases of knowledge representation basedprojects.

However, a thorough quantitative analysis of business users performance basedon this representation as opposed to the more common, graphical notation isneeded. Especially, the ability of business users to actually create models usingthis representation and the editor itself have to be evaluated in more detail.

References

1. Kaarel Kaljurand and Norbert E. Fuchs: Verbalizing OWL in Attempto ControlledEnglish. In Proceedings of Third International Workshop on OWL: Experiences andDirections, Innsbruck, Austria (6th–7th June 2007).

2. Funk, V. Tablan, K. Bontcheva, H. Cunningham, B. Davis, S. Handschuh. CLOnE:Controlled Language for Ontology Editing. In Proceedings of the International Se-mantic Web Conference (ISWC 2007), Busan, Korea, November, 2007.

3. Brian Davis, Ahmad Ali Iqbal, Adam Funk, Valentin Tablan, Kalina Bontcheva,Hamish Cunningham and Siegfried Handschuh: RoundTrip Ontology Authoring.In Proceedings of the 7th International Semantic Web Conference (ISWC2008),Karlsruhe, Germany, October 2008.

4. Ronald G. Ross: ”RuleSpeak Sentence Forms: Specifying Natural-Language Busi-ness Rules in English,” Business Rules Journal, Vol. 10, No. 4 (Apr. 2009)

5. Semantics Of Business Vocabulary And Business Rules (SBVR), Version 1.0,http://www.omg.org/spec/SBVR/1.0/PDF/

6. Heller, R., van Teeseling, F., Gulpers, M.: A Knowledge Infrastructure for the DutchImmigration office., 7th Extended Semantic Web Conference, ESWC 2010 Herak-lion, Greece, May 30 June 3, 2010.