02.12.2012 Views

Web-based Learning Solutions for Communities of Practice

Web-based Learning Solutions for Communities of Practice

Web-based Learning Solutions for Communities of Practice

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

context within the target template. The result is a<br />

set <strong>of</strong> mappings (correspondences) relating facts<br />

from the source documents with the target template<br />

by encapsulating all necessary in<strong>for</strong>mation<br />

to trans<strong>for</strong>m source documents into instances <strong>of</strong><br />

the target template. In order to achieve this goal,<br />

we adopt a multi-criteria matching process. Each<br />

criterion will be represented by a service. These<br />

services are extensible. As new criterion becomes<br />

available, a new service is created. Examples <strong>of</strong><br />

services include: (1) Label matching: measures the<br />

similarities between entities <strong>based</strong> on the meaning<br />

inferred from their names (e.g. author and writer<br />

are synonyms). This service uses CoPs specific<br />

vocabularies (thesauri), local dictionaries (that<br />

define the common set <strong>of</strong> abbreviations, acronyms,<br />

and commonly used substring/short hand notations<br />

<strong>for</strong> a given CoP) as well as CoPs ontologies; (2)<br />

Constraint matching: relates entities <strong>based</strong> on their<br />

respective constraints. Such constraints include<br />

the use <strong>of</strong> Datatypes, occurrence constraints, etc.<br />

and (3) Structural matching: relates entities <strong>based</strong><br />

on the similarity <strong>of</strong> the structural context in which<br />

they appear. For this templates are modelled as<br />

trees (treated as a collection <strong>of</strong> paths). This has<br />

two advantages: (1) a match between two paths<br />

can be defined as long as there are some matching<br />

nodes along the paths; and (2) a match between<br />

two nodes can be defined irrespective <strong>of</strong> where<br />

they occur in the tree as long as there is at least a<br />

partial match between their paths.<br />

We have designed an algorithm to combine all<br />

the above criteria and produce a mapping result that<br />

clearly defines source and target mapped entities,<br />

required trans<strong>for</strong>mation operations, and conditions<br />

under which the mapping can be executed. Boukottaya<br />

(2004) summarizes an evaluation study<br />

<strong>of</strong> the proposed algorithm. The algorithm was<br />

evaluated in term <strong>of</strong> precision, recall, F-measure<br />

and overall using real world application: bibliographic<br />

date description. Globally it gives good<br />

result and only presents some limitations in some<br />

cases where complex matches are required. The<br />

proposed structural matching technique is <strong>based</strong> on<br />

20<br />

A Document Reuse Tool <strong>for</strong> <strong>Communities</strong> <strong>of</strong> <strong>Practice</strong><br />

the notion <strong>of</strong> node context. We define three kinds<br />

<strong>of</strong> contexts <strong>for</strong> a given node: the ancestor context,<br />

the child context and the leaf context. We show<br />

through a comparative study with other matching<br />

algorithms that the combination <strong>of</strong> these contexts<br />

highly improves the structural matching.<br />

Experience suggests that fully automated<br />

schema matching is infeasible, especially <strong>for</strong><br />

complex matches that involve complex trans<strong>for</strong>mation<br />

operations. For this, we designed an efficient<br />

user interface where the templates (source<br />

and target) are represented as trees and a set <strong>of</strong><br />

mapping operations have been made available to<br />

the user to modify the system mappings. Figure<br />

3 depicts the user interface used <strong>for</strong> mapping<br />

validation. Once the user validates the mapping,<br />

the system generates automatically the appropriate<br />

trans<strong>for</strong>mation scripts (XSLT programs). For this,<br />

we first have defined a model <strong>for</strong> structuring mapping<br />

results according to a mapping schema that<br />

describes the five dimensions <strong>of</strong> a mapping result:<br />

entity, cardinality, structural, trans<strong>for</strong>mation and<br />

constraint dimensions. Second we have designed<br />

an algorithm that generates automatically XSLT<br />

scripts <strong>based</strong> on the above mapping structure. For<br />

each matching node pair, the algorithm traverses<br />

the target template tree in a depth-first manner<br />

and generates progressively trans<strong>for</strong>mation rules.<br />

Templates, produced mapping results as well as<br />

the trans<strong>for</strong>mation scripts are stored. When new<br />

instances are available, the trans<strong>for</strong>mation process<br />

is done automatically without re-applying the<br />

entire matching process.<br />

Template-Driven Evolution<br />

In a community <strong>of</strong> practice context, templates<br />

continuously evolve to reflect a change in the<br />

practices, to adhere to new users’ requirements,<br />

to correct initial design errors, to allow expansion<br />

<strong>of</strong> the template scope over time or to simply allow<br />

<strong>for</strong> incremental maintenance. However, templates<br />

updates have a major consequence: documents<br />

being valid <strong>for</strong> the original template are no more

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!