=Paper= {{Paper |id=None |storemode=property |title=XQuery Framework for Interoperable Multimedia Retrieval |pdfUrl=https://ceur-ws.org/Vol-733/paper_doeller.pdf |volume=Vol-733 |dblpUrl=https://dblp.org/rec/conf/gvd/DollerSSK11 }} ==XQuery Framework for Interoperable Multimedia Retrieval== https://ceur-ws.org/Vol-733/paper_doeller.pdf
    XQuery Framework for Interoperable Multimedia Retrieval

                   Mario Döller, Florian Stegmaier, Alexander Stockinger, Harald Kosch
                                             Chair of Distributed Information Systems
                                                       University of Passau
                                                    94034 Passau, GERMANY
                                            firstname.lastname@uni-passau.de


ABSTRACT                                                                   well known and established XQuery2 language. The XQuery
Multimedia retrieval relies on the underlying metadata for-                language has its strengthens in expressing data centric and
mat for effective querying of multimedia information. Most                 exact queries over XML data such as Give me all images
of the metadata formats are XML-based (for instance MPEG-                  whose filesize > 100 kByte, but lack the ability to express
7 or P/META). In this context, the XQuery query language                   fuzzy requests common in multimedia retrieval (e.g., Query-
is a natural choice for querying these data based on exact                 By-Example). To fill this gap, a new multimedia query lan-
matches. However, XQuery lacks in expressing and eval-                     guage, the MPEG Query Format [5] (MPQF) has been stan-
uating multimedia specific requests (e.q., spatial, fuzzy re-              dardized in late 2008 by MPEG (formally known as ISO/IEC
quests). Therefore, the MPEG Query Format (MPQF), a                        SC29 WG11). The query language addresses XML based
novel XML based query language tuned for standardized                      metadata formats (e.g., MPEG-7) and combines data and
multimedia requests, has been developed. Based on this, the                information retrieval components as well as management
paper introduces a MPQF aware XQuery framework which                       functionalities.
features a.) a plug-in architecture for external multimedia                   In this context, the paper contributes with a XQuery
routines, b.) an automatic approach for MPQF to XQuery                     framework for multimedia search that features a.) a plug-
transformation and c.) an injection of information retrieval               in architecture for external multimedia routines, b.) an
capabilities to XQuery (e.g., scoring, ranking). Besides, the              automatic approach for MPQF to XQuery transformation
framework can be adopted to any available XQuery reposi-                   and c.) an injection of information retrieval capabilities to
tory and allows the retrieval in any XML based multimedia                  XQuery (e.g., scoring, ranking). Besides, the framework can
metadata format.                                                           be adopted to any available XQuery repository and allows
                                                                           the retrieval in any XML based multimedia metadata for-
                                                                           mat. Another benefit of adopting XQuery for multimedia
Categories and Subject Descriptors                                         retrieval is the broad diversity of available XQuery tools
H.2.4 [Systems]: Query Processing—Multimedia Databases;                    (databases, parsers, etc.).
H.3.3 [Information Storage and Retrieval]: Information                        The paper uses the MPEG Query Format (MPQF). The
Search and Retrieval—Query Formulation                                     definition of the format is out of scope of this paper and has
                                                                           been published elsewhere. Readers not familiar with MPQF
                                                                           may look in [5] for detailed information. Further note, the
Keywords                                                                   specified transformation model presents only selected trans-
XQuery, MPEG Query Format, Multimedia retrieval                            formation rules and an extended version of this paper can
                                                                           be found at: http://dimis.fim.uni-passau.de/iris/GI_
1.     INTRODUCTION                                                        Workshop_extended.pdf.
                                                                              The reminder of this paper is organized as follows: Sec-
   Retrieving information in multimedia repositories is one
                                                                           tion 2 introduces related work in the area of XQuery exten-
of the major challenging tasks in the multimedia life cy-
                                                                           sions for fuzzy retrieval. This is followed by Section 3 where
cle. Whenever, multimedia retrieval is discussed, one has
                                                                           the proposed MPQF to XQuery framework is described. In
to deal with the related metadata (formats) which are of-
                                                                           this context, Section 4 specifies our mapping approach for a
ten XML based (e.g. MPEG-71 ). In series, by investigating
                                                                           MPQF to XQuery transformation. The specification is eval-
XML based retrieval techniques, one finally ends up by the
                                                                           uated by a small example in Section 5. Performance analysis
1
    http://mpeg.chiariglione.org/                                          results are presented in Section 6. Finally, this article is con-
                                                                           cluded in Section 7.

                                                                           2.     RELATED WORK
                                                                              As highlighted in the introduction, multimedia retrieval
                                                                           considers (to an high extend) multimedia metadata which
                                                                           is often XML-based (e.g., TV-Anytime, MPEG-7, etc.). In
                                                                           this context, in the past several query languages that are es-
23rd GI-Workshop on Foundations of Databases (Grundlagen von Daten-        pecially designed for XML data have been developed such as
banken), 31.05.2011 - 03.06.2011, Obergurgl, Austria.                      2
Copyright is held by the author/owner(s).                                      http://www.w3.org/TR/xquery/




                                                                      73
XIRQL [4], but the most well known representative approach
is XQuery [8]. XML based query languages are strong in ex-
pressing data centric, but lack the ability to express fuzzy
requests common in multimedia retrieval (e.g., Query-By-
Example). There are already some approaches (e.g., VeX-
Query [9]) aiming to extend XQuery in this direction. How-
ever, none of them is completely adequate for multimedia
retrieval in terms of missing support for weighting of query                  Figure 2: Overview of plug-in injection
terms (to reflect user preferences) or support for tempo-
ral or spatial retrieval etc. Further approaches that extend
                                                                     extension of the XQuery language set (e.g., power function),
XQuery for fuzzy retrieval can be summarized as follows:
                                                                     data model dependent transformations (e.g., MIME type fil-
Early works (e.g. [6]) introduced an XQuery rank opera-
                                                                     tering) or functionality specific for the underlying XQuery
tor for the evaluation of information retrieval request that
                                                                     database. In general, a plug-in is a Java module which re-
target on an estimation of the relative relevance of docu-
                                                                     ceives a fixed set of input parameters and is able to ma-
ments within document collections. The integration of a
                                                                     nipulate the internal context of the transformation process.
vector space model and an associated vscore function has
                                                                     For instance, the plug-in module for our QueryByMedia im-
been presented in [7]. The vscore function returns the sim-
                                                                     plementation receives as input parameters the possible el-
ilarity degree between a query vector and a content ele-
                                                                     ements and attributes of the specified MPQF query type
ment vector. Recently, in [3], the authors proposed a fuzzy
                                                                     (e.g., matchT ype and M ediaResource). Then, the mod-
XQuery processing technique which allows the users to use
                                                                     ule performs a similarity search at an external PostgreSQL3
linguistic terms based user-defined functions in XQuery in-
                                                                     database where the ScalableColor features of MPEG-7 are
stances. The approach has been implemented in the native
                                                                     stored. After finalization, the module responds with the re-
eXist XML database and provides better output than nor-
                                                                     sults as presented by Transformation Rules 7 and 8.
mal XQuery language execution.

3.    MPQF BASED XQUERY FRAMEWORK                                    4.     MPQF TO XQUERY TRANSFORMATION
  This section describes the overall structure and architec-                RULES
ture of the proposed MPQF based XQuery framework.                       The transformation formalism presented in this paper con-
                                                                     centrates on the implementation of a global framework for
3.1     Architecture                                                 fuzzy retrieval within XQuery based on the MPQF stan-
  Figure 1 presents the overall architecture and workflow of         dard. In general, the rules distinguish between data model
the framework. First, the incoming MPQF request is parsed            depended and data model independent transformation. That
by an internal MPQF parser which establishes a visitor pat-          is, data model depended rules need to be adopted to the un-
tern syntax tree.                                                    derlying metadata format as the required information can
                                                                     not be addressed by a given XPath4 within the MPQF query
                                                                     request but need additional domain specific data.

                                                                     4.1     Transformation Rules for Selection
                                                                       The transformation rules for selection cover the mapping
                                                                     of the filtering step which is described by the QueryCon-
                                                                     dition element in an MPQF request. In this context, the
                                                                     skeleton for integrating a single MPQF condition (e.g., query
                                                                     type or comparison condition) into XQuery is implemented
                                                                     as follows:
                                                                        Transformation Rule 1 (Query Condition).
     Figure 1: Overview of the system architecture                   Let  Score i  be a substitute for the transformation of an
                                                                     expression (e.g, comparison evaluation see Transformation
   The MPQF syntax tree is forwarded to the transforma-              Rule 6), a boolean operator (see Transformation Rule 5) or
tion module which executes a mapping algorithm for pro-              a query type which refers to external processing (see Trans-
ducing an equivalent XQuery request. The plug-in system              formation Rule 8) for e.g., information retrieval evaluation.
(see Subsection 3.2) supports the integration and evaluation         Furthermore, let  T hreshold i  be the user given limit
of external information retrieval routines (e.g. query by ex-        of the minimum similarity score for an operation (where
ample). After the finalization of the transformation process,        1 ≤ i ≤ n and n ∈ N). Then the transformation of a MPQF
a final XQuery instance is available. In series, this XQuery         query condition to XQuery is embedded as:
request is forwarded to the connected XQuery database for            let
                                                                       $ s c o r e V a r i := <>,
execution.                                                             ...
                                                                     where
3.2     Plug-in system                                                 $ s c o r e V a r i >= <>
  In order to support a flexible system, the framework in-
                                                                       Note, $scoreV ar i is a variable keeping the score value of
troduces a plug-in system. Figure 2 demonstrates where
                                                                     the evaluation.
plug-ins take action in the transformation life cycle.
                                                                     3
  The framework identifies different categories of plug-ins:             http://www.postgresql.org/
                                                                     4
support for individual query types (e.g., QueryByMedia),                 http://www.w3.org/TR/xpath20/




                                                                74
   Constitutively on the abstract transformation of query                                                     i f (<< E x p r e s s i o n >>) t h e n    1.0    else    0.0

conditions to score values, a closer look to its specific sub-
stitutions has to be performed. As defined in MPQF, an                                                          For the evaluation of information retrieval related tech-
individual query condition can contain comparison, string                                                     niques (e.g., the QueryByMedia or SpatialQuery query type)
and arithmetic operations. Exemplarily for this set of oper-                                                  separate external processes have to be applied. These pro-
ations, the contains operation (see Transformation Rule 2)                                                    cesses filter the document set and produce document id and
and comparison operation (see Transformation Rule 3) are                                                      score value pairs which are integrated into the final XQuery
defined.                                                                                                      request. For instance, as described in Subsection 3.2, the
   Transformation Rule 2 (Contains Operator).                                                                 QueryByMedia query type can be implemented by forward-
Let Opi  be the respective operands of a MPQF contains                                                      ing this part of the MPQF request to a specialized similarity
condition where 1 ≤ i ≤ 2. Then the corresponding trans-                                                      search engine for image retrieval by example. The result of
formation to XQuery is defined as:                                                                            such an evaluation is then integrated as specified by Rule 7.
c o n t a i n s (<>, <>)
                                                                                                                 Transformation Rule 7 (Plug-in Integration).
                                                                                                              Let $qbmVar be the container variable for results of an ex-
   Transformation Rule 3 (Comparison Condition).                                                              ternal evaluation and anyU RI i  an unique identifier of
Let Operand i  be the respective operands of a MPQF                                                         an XML instance document and anyScore i  its respec-
comparison operation where 1 ≤ i ≤ 2 and Operator is                                                        tive score value (where i in [1 .. n] and n ∈ N). Then, the
the substitute of one of the defined MPQF operators (e.g.,                                                    external result is integrated by the following format:
EQUAL to =). Then the transformation of a MPQF com-
                                                                                                              $qbmVar := (
parison condition to XQuery is defined as:                                                                      
                                                                                                                  >’ s c o r e =’<< a n y S c o r e 1 >>’/>
<> <> <>                                                              ...
                                                                                                                  >’ s c o r e =’<< a n y S c o r e n >>’/>
                                                                                                                
                                                                                                              )
  A special role plays the fuzzy boolean operators as they
combine the results of preceding evaluations by the means of                                                     Note, this approach assumes that there is a unique iden-
scoring functions. In this context, the fuzzy boolean opera-                                                  tifier for every document. However, parts of a description
tors of MPQF (OR, AND, etc.) are transformed as follows:                                                      (e.g. low level features) can be swapped to specialized re-
                                                                                                              trieval stores but the unique identifier remains as link be-
   Transformation Rule 4 (Boolean operator).
Let scoreV ar i  be the score value as described in Rule 1.                                                 tween those parts.
Further, pref V ar i  specifies the given user preference
                                                                                                                 Besides, the intermediate result set (stored in a variable)
value (where i in [1 .. n] and n ∈ N) for the respective oper-
ation. Then, the mapping of fuzzy boolean operators (AND,                                                     is integrated into the overall evaluation by Rule 8 supporting
OR, XOR) follows the following interface:                                                                     the access to already existing score results.
<>                                                                                                           Transformation Rule 8 (Plug-in Evaluation).
(<< s c o r e V a r 1 >>,<< p r e f V a r 1 > > ,... , < < s c o r e V a r n >>,<< p r e f V a r n >>)
                                                                                                              Let qbmVar be the container as specified in Rule 7.
                                                                                                              Then, access to individual score values is accomplished as
  Based on the abstract definition for fuzzy boolean oper-                                                    follows:
ators in Rule 4 one example for a fuzzy AND operator is                                                        i f ( e x i s t s ( $qbmVar / d o c [ @id = b a s e−u r i ( $ d o c ) ] ) )
                                                                                                               t h e n ( number ( $qbmVar / d o c [ @id = b a s e−u r i ( $ d o c ) ] / @ s c o r e ) )
specified in Rule 5.                                                                                           else (0.0)


  Transformation Rule 5 (AND Boolean operator).
Let scoreV ar i  and pref V ar i  be specified as pre-                                                       The TargetMediaType element of MPQF restricts the mul-
sented in Rule 4 and $scoreV ar (N + 1) the variable for                                                      timedia data set according to their mime type. This filtering
holding the final result. Then, a mapping for the AND fuzzy                                                   is data model depended as no additional information (e.g.
boolean operator to a scoring function using the product t-                                                   XPath to the data) is provided within the MPQF query it-
norm is defined as follows:                                                                                   self. Therefore, the evaluation is embedded as follows:
$ s c o r e V a r (N+1) := math : pow (
                       math : pow(<< s c o r e V a r 1 >>, <

>)∗ Transformation Rule 9 (MIME type). ... math : pow(<< s c o r e V a r n >>, <

>), Let M IM E type i  be defined as a MIME type descrip- <>) tion where i in [1 .. n] and n ∈ N. Then, the filter criterion extends the XQuery where clause as follows: Note, as the MPQF boolean operators rely on the fuzzy set where theory, the scoring functions should cope the t-norm and t- {<> OR .... conorm fuzzy logics [2], respectively. Further note, this Rule <>} AND assumes that the XML engine provides specific mathematic libraries or is extensible in this direction. Otherwise, lookup Finally, the resulting documents are ordered by their score tables containing precalculated values in the interval [0.0 .. evaluation and stored in an internal format for further pro- 1.0] can be provided (e.g., has been applied as plug-in for the cessing (see Rule 10). Berkeley DB XML). Transformation Rule 10 (Ordering). The integration of data centric evaluations (e.g., compar- Let $scoreVarN contain the final score value after N calcu- ison operators) which base on a true/false basis is applied lation steps, then the resulting documents are ordered and by Transformation Rule 6. preliminary stored as follows: where Transformation Rule 6 (Expression). ... o r d e r by Let Expression be any expression derived by the Rules 2 $scoreVarN d e s c e n d i n g and 3. Then the score of those operations is gathered by the return { $ d o c } following transformation: 75 4.2 Transformation Rules for Projection 5.1 Selection phase In a final step, the desired information is extracted from The transformation mechanism starts by parsing all ele- the filtered documents and integrated in a valid MPQF out- ments of the generated sequence. The first element is the put instance. As the wanted elements are addressed as contains condition which belongs to the set of expressions. XPath expressions within an MPQF query, they can be re- and triggers the execution of Transformation Rule 2. This cycled in the transformation as well. Note, the final MPQF results in the following XQuery snippet (see Code 1). query result is embedded in an internal proprietary format in order to support enhanced functionalities such as caching, Code 1 Transformation of the contains condition paging, relevance feedback, etc. by the framework. contains($doc//mpeg7:FamilyName, ’Bob’) 4.3 Transformation process The so far introduced Transformation Rules (TR) describe This is followed by Transformation Rule 6 which is used techniques for mapping parts of a MPQF request to its for the integration of expressions into XQuery (see Code 2) equivalents in XQuery. The overall transformation process creates a rule chain during the evaluation of the query in or- Code 2 Integrating the contains condition der to map the entire MPQF request. Input of the chain is $scoreVar1 = if (contains($doc//mpeg7:FamilyName, ’Bob’)) the MPQF request. Then, a post order traversal is applied then 1.0 else 0.0 which responds with a list of nodes (MPQF conditions) of the QueryCondition element. By parsing this list, the type of the current node is identified and the respective (set of) Similarly to the contains condition, the next element in Transformation Rule(s) is/are accomplished. Then, the al- the sequence is processed, namely the GreaterT hanEqual gorithm applies optional Rules for existing aggregation or condition. Here, in our example, the Transformation Rule 3 sorting parts. Finally, the rest of MPQF’s OutputDescrip- followed by Rule 6 are evaluated, which results in the XQuery tion element is evaluated by applying the Projection rule snippet given in Code 3. (not shown in this paper). Finally, the output of this map- ping process is an equivalent XQuery instance. Code 3 Transformation of GreaterThanEqual $scoreVar2 = if ($doc//mpeg7:FileSize >= 500000) 5. EXAMPLE TRANSFORMATION then 1.0 else 0.0 For a better understanding of the defined Transformation Rules, a simple example transformation is demonstrated by the following MPQF query request (see Figure 3)5 . The ex- After applying the Transformation Rules for the leaf nodes, ample request addresses MPEG-7 based image descriptions our approach concentrates on the inner nodes (the boolean and selects the title and the creator information of all JPEG operators). The inner nodes regulate how the results of the images whose file size is greater or equal to 500000 Bytes leaf nodes are combined. For this purpose, scoring functions and where the creators family name contains the string Bob. are assigned to the respective boolean operators according Besides, the threshold of the combined score result must ex- to t-norm and t-conorm rules. Our example uses the Prod- ceed 0.5. Furthermore, the final result set should contain uct function for the AND operation in order to combine the not more then 30 elements. individual score values. In this context, applying Transfor- The processing engine of the incoming query tree applies mation Rule 5 results in Code 4 for the AN D condition. a post order traversal to extract the internal nodes. For The resulting score value and the threshold of an condi- our example, this results on the following sequence: Con- tion are integrated into the XQuery request by evaluating tains, GreaterThanEqual, AND, TargetMediaType. Then, Transformation Rule 1. Due to space constraints in this pa- by traversing this sequence, the assigned transformation rules per, the final result for integrating the given thresholds is are executed. shown in Code 5. If no threshold is assigned, the minimum value is used (0). As our example makes use of the TargetMediaType ele- ment for restricting the result set according to the file for- mat, a data model depended filtering has to be found. In our example, we assume that the respective information is annotated in the Content and FileFormat elements of the MPEG-7 description. In assuming so, the following trans- formation for MIME-types (see Rule 9) has to be applied (see Code 6). The final result of all combined transformations of the selection phase can be found in Code 7. Figure 3: Example tree 5.2 Projection phase In the following, Subsection 5.1 describes the used rules The last stage in the transformation process is the cre- for the selection phase. Finally, in the project phase (see ation of a valid MPQF response and the integration of the Subsection 5.2) the desired information is extracted and the requested information of the target data model. Our ex- entire XQuery is consolidated. ample only instantiates the TextResult and Description el- 5 ements. As described beforehand, the final MPQF output Note, the request as MPQF language can be found in the extended version of this article. description is wrapped in a proprietary format (ResultDocu- 76 Code 4 Applying Transformation Rule for scoring function Code 6 Transformation of MIME type filtering $scoreVar3 = math:pow(math:pow($scoreVar1, 0.5)* ( math:pow($scoreVar2, 0.5), 2) exists($doc//mpeg7:Content[@href = ’image’]) and string($doc//mpeg7:FileFormat/mpeg7:Name/text()) = ’JPEG’ ) Code 5 Integration of threshold values $scoreVar1 >= 0.0 and $scoreVar2 >= 0.0 and Code 7 Result of selection phase $scoreVar3 >= 0.5 $selected := (for $doc in collection(’db.dbxml’)/* let $scoreVar1 = if (contains($doc//mpeg7:FamilyName, ’Bob’)) ment element) in order to support caching, paging, relevance then 1.0 else 0.0, feedback, etc. $scoreVar2 = if ($doc//mpeg7:FileSize >= 500000) then 1.0 else 0.0, $scoreVar3 = math:pow(math:pow($scoreVar1, 0.5) * 6. EVALUATION math:pow($scoreVar2, 0.5), 2), $id := base_uri($doc) This section describes the series of experiments we per- where formed in order to evaluate the effectiveness of our transfor- (( exists($doc//mpeg7:Content[@href = ’image’]) mation approach. The tests were carried out on a subset of and the CoPhiR6 [1] data set containing MPEG-7 annotations string($doc//mpeg7:FileFormat/mpeg7:Name/text()) = ’JPEG’ of Flickr images. The sizes of our test data sets varied from )) and $scoreVar1 >= 0.0 and 100 up to 10000 annotations. In order to demonstrate the $scoreVar2 >= 0.0 and transformation approach with various XML databases, the $scoreVar3 >= 0.5 following solutions have been chosen: Saxon7 , Berkeley DB order by $scoreVar3 descending XML8 and eXist DB9 . return The overall performance evaluation is divided into two {$doc}), main parts. First, the processing time of parsing and exe- cuting the Transformation Rules has been analyzed in Sub- section 6.1. The final execution of the resulting XQuery instance at the mentioned databases is demonstrated in Sub- PostgreSQL10 database coping with low level features (color, section 6.2. texture, etc.) of images. Similarity calculation has been simplified on the basis of color features and the Euclidean 6.1 Transformation Evaluation distance (no index has been used). Figure 4 presents the This subsection describes the set of experiments for evalu- average run time needed for the transformation of an MPQF ating the performance of applying the Transformation Rules. query request to an appropriate XQuery request. The tests Input is a MPQF query request and output an equivalent have been repeated 50 times. The evaluation shows that XQuery query request. In order to receive clear differences there is a slight increase of time consumption depending on between the used query classes a less powerful system config- the increase of query complexity. However, the maximum uration has been applied, namely an Intel Premium M 1.60 differences between query classes do not increase 17%. GHz CPU with 512 MB DDR2 400 main memory running Windows XP. 6.2 Database comparison The complexity of the queries is divided into the follow- The experiments have been executed on a Windows based ing six classes in order to demonstrate the evaluation time stand-alone PC with Intel Core i7 1,6GHz (4 cores) CPU and for different compositions of Transformation Rules: queries 4 GB main memory. All databases have been tested out of where either aggregation or sorting is used (classes NoAg- the box without optimization. Similar to Subsection 6.1 six g/Sort, NoAgg/Sort Complex, Agg/NoSort), queries where different query classes have been used during the evaluation, both (class Agg/Sort) and queries where none (class NoAg- whereas exemplarily only two are demonstrated in this arti- g/NoSort) of these features have been used. Except the cle. Note, the presented performance behavior is also valid NoAgg/Sort Complex class, the example queries contain for the rest of the tests. Figure 5 show the results of our ex- only one condition (e.g. EQUAL condition). The com- periments for a query where sorting has been enabled. The plex query class demonstrates the use of Boolean operators y-axis describes the average processing time per document (AND/OR) and multiple other conditions (e.g., contains or (average processing time divided by the amount of docu- comparison). ments in the database) and the x-axis shows the amount of Finally, the sixth query class addresses the performance MPEG-7 documents stored in the database. The measured of the plug-in system by demonstrating a QueryByMedia overall processing time for one MPQF query consists of the query type which requires external processing. The external transformation time applied by our module and the time processing has been realized by the integration of a relational needed for processing the resulting XQuery. By evaluating the performance results, one can identify a 6 http://cophir.isti.cnr.it linear scaling of the Saxon and Berkeley DB XML engines, 7 http://saxon.sourceforge.net which is stable over the increasing size of the test data set. 8 http://www.oracle.com/database/berkeley-db/xml/ The impact of the initial phase needed by the engines can index.html 9 10 http://exist.sourceforge.net/ http://www.postgresql.org/ 77 Figure 6: Comparison of database performance for XQuery with QueryByMedia plug-in Figure 4: Performance of the transformation process tory. By using the proposed framework, XQuery repositories be observed by small test data sets (100 documents) and can be enhanced for multimedia retrieval on any XML based here the Berkeley DB XML is outperformed by the others. multimedia metadata format in a standardized way. In contrast to Saxon and Berkeley DB, the eXist engine is Future work will concentrate on further developments for outperformed clearly for larger test data sets as it shows a the projection and output description part and the integra- nearly quadratic scale factor. tion of additional plug-in elements coping for instance spa- tial and temporal retrieval. 8. ACKNOWLEDGMENTS This work has been supported in part by the THESEUS Program, which is funded by the German Federal Ministry of Economics and Technology. 9. REFERENCES [1] Paolo Bolettieri, Andrea Esuli, Fabrizio Falchi, Claudio Lucchese, Raffaele Perego, Tommaso Piccioli, and Fausto Rabitti. CoPhIR: a test collection for content-based image retrieval. CoRR, abs/0905.4627v2, 2009. Figure 5: Comparison of database performance for [2] Didier Dubois, Henri Prade, and Florence Sedes. Fuzzy Logic Techniques in Multimedia Database Querying: A XQuery with sorting Prelimiary Investigation of the Potentials. IEEE Transaction on Knowledge and Data Engineering, 13(3):383–392, 2001. In general, the processing time for the MPQF-XQuery [3] E.J. Thomson Fredrick and G. Radhamani. Fuzzy Logic transformation is in average under 7% of the overall pro- Based XQuery operations for Native XML Database cessing time for evaluating the final XQuery request and Systems. International Journal of Database Theory and therefore negligible. Application, 2(3):13–20, 2009. The last experiment targets on the evaluation of the plug- [4] Norbert Furh and Kai Grossjohann. XIRQL: A Query Language for Information Retrieval in XML Documents. In in injection process by the means of a QueryByMedia query Proceedings of the 24th ACM-SIGIR Conference on type which realizes similarity search on multimedia data. Research and Development in Information Retrieval, pages As described beforehand, the test environment consists of a 172–180, New Orleans, Louisiana, USA, 2001. ACM Press. PostgresSQL database storing the low level features (Scal- [5] ISO/IEC. Information technology - Multimedia content ableColor of MPEG-7). As a proof of concept, similarity description interface - Part 12: Query format. ISO/IEC search is implemented by an SQL function in the target 15938-12:2008, 2008. database. Of course, here is room for improvements (e.g., [6] Ji-Hoon Kang, Chul-Soo Kim, and Eun-Jeong Ko. An XQuery engine for digital library systems. In Proceedings of use of index structures or enhanced multimedia retrieval the 3rd International ACM/IEEE-CS joint conference on modules). Figure 6 show the results for the QueryByMedia Digital libraries, pages 400–400, Houston Texas, 2003. evaluation. [7] Jacques Le Maitre. Indexing and Querying Content and Structure of XML Documents According to the Vector Space 7. CONCLUSIONS Model. In Proceedings of the IADIS International Conference WWW/Internet, pages 353–358, Lisbon, This article proposed a MPQF based XQuery framework Portugal, 2005. which provides a specification of a set of Transformation [8] Priscilla Walmsley. XQuery. O’Reilly Media, 2007. ISBN: Rules for mapping a MPEG query format request to an 978-0596006341. equivalent XQuery request. Based on this, a framework has [9] Ling Xue, Chao Li, Yu Wu, and Zhang Xiong. VeXQuery: been developed featuring a plug-in system for external mul- an XQuery extension for MPEG-7 vector-based feature timedia retrieval routines, a threading model for fast and query. In Proceedings of the International Conference on Signal-Image Technology and Internet Based Systems scalable processing and an internal result set format enabling (IEEE/ACM SITIS’2006), pages 176–185, Hammamet, caching, paging and relevance feedback operations. The Tunesia, 2006. Springer-Verlag. framework is able to connect to any available XQuery reposi- 78