1、 Reference number ISO/IEC 24800-6:2012(E) ISO/IEC 2012INTERNATIONAL STANDARD ISO/IEC 24800-6 First edition 2012-05-01Information technology JPSearch Part 6: Reference software Technologies de linformation JPSearch Partie 6: Logiciel de rfrence ISO/IEC 24800-6:2012(E) COPYRIGHT PROTECTED DOCUMENT ISO
2、/IEC 2012 All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISOs member body in
3、the country of the requester. ISO copyright office Case postale 56 CH-1211 Geneva 20 Tel. + 41 22 749 01 11 Fax + 41 22 749 09 47 E-mail copyrightiso.org Web www.iso.org Published in Switzerland ii ISO/IEC 2012 All rights reservedISO/IEC 24800-6:2012(E) ISO/IEC 2012 All rights reserved iiiContents P
4、age Foreword iv 1 Scope 1 2 Normative references 1 3 Terms and definitions . 1 4 Overview and conventions . 2 4.1 Organization of the document . 2 4.2 Overview of the architecture of the ISO/IEC 24800 reference software . 2 5 Reference software for the ISO/IEC 24800 3 5.1 Metadata Translation Module
5、 . 3 5.2 JPQF Query Processor Module . 11 5.3 Embedded Metadata Codec Module 20 5.4 Repository Import/Export Module . 26 Bibliography 34 ISO/IEC 24800-6:2012(E) iv ISO/IEC 2012 All rights reservedForeword ISO (the International Organization for Standardization) and IEC (the International Electrotech
6、nical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical ac
7、tivity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information technology, ISO and IEC have established a joint technical com
8、mittee, ISO/IEC JTC 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task of the joint technical committee is to prepare International Standards. Draft International Standards adopted by the joint technical committee are circulated
9、 to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote. Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held respo
10、nsible for identifying any or all such patent rights. ISO/IEC 24800-6 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information. ISO/IEC 24800 consists of the following parts, under the general
11、 title Information technology JPSearch: Part 1: System framework and components Part 2: Registration, identification and management of schema and ontology Part 3: Query format Part 4: File format for metadata embedded in image data (JPEG and JPEG 2000) Part 5: Data interchange format between image r
12、epositories Part 6: Reference software INTERNATIONAL STANDARD ISO/IEC 24800-6:2012(E) ISO/IEC 2012 All rights reserved 1Information technology JPSearch Part 6: Reference software 1 Scope This part of ISO/IEC 24800 describes reference software for the normative clauses as well as utility software dem
13、onstrating the usage scenarios of ISO/IEC 24800-2 to ISO/IEC 24800-5. The information provided is applicable for determining the reference software modules available for ISO/IEC 24800-2 to ISO/IEC 24800-5 and understanding their functionality and usage. A software module provided in this part of ISO
14、/IEC 24800 can be used either as standalone software or as a part of larger integrated software depending on the module. 2 Normative references The following referenced documents, in whole or in part, indispensable for the application of this document. For dated references, only the edition cited ap
15、plies. For undated references, the latest edition of the referenced document (including any amendments/corrigenda) applies. ISO/IEC 24800-2, Information technology JPSearch Part 2 Registration, identification and management of schema and ontology ISO/IEC 24800-3, Information technology JPSearch Part
16、 3: Query format ISO/IEC 24800-4, Information technology JPSearch Part 4: File format for metadata embedded in image data (JPEG and JPEG 2000) ISO/IEC 24800-5, Information technology JPSearch Part 5: Data interchange format between image repositories 3 Terms and definitions For the purposes of this
17、document, the following terms and definitions apply. 3.1 module software component implementing reference software or utility software 3.2 reference software one or more modules utilizing normative parts of ISO/IEC 24800-2, -3, -4, -5 3.3 utility software one or more modules utilizing informative pa
18、rts of ISO/IEC 24800-1, -2, -3, -4, -5 and/or the usage of reference software within real-world applications ISO/IEC 24800-6:2012(E) 2 ISO/IEC 2012 All rights reserved4 Overview and conventions 4.1 Organization of the document In the remainder of this document, each reference and utility software mo
19、dule is described following the convention as below: Module name Name of the ZIP file with the following structure: /- -.zip : directory name in which the module can be found : name of the module, e.g., Parser, Validator, etc. : letter A, B, C, etc. for different implementations. : version number, i
20、.e., n_n_n | n_n | n Functional Description Describes the functionality the module provides. Installation Guideline Describes how the module can be installed/prepared to be used. Interface Description Describes necessary interface (e.g. command line instructions with parameters) to use the module. I
21、NPUT Describes the input of the module. OUTPUT Describes the output of the module. Programming Language(s) Lists the programming language(s) in which the module is written. Platform(s) Lists the platforms the module has been tested on and is supposed to run on. Dependencies Lists the required librar
22、ies and code with version information. Details Lists any implementation details, such as architecture diagrams and data flows. 4.2 Overview of the architecture of the ISO/IEC 24800 reference software The Part 2 module will allow 1) registering external metadata schemas and 2) validating if certain m
23、etadata instance is valid according to the Core Schema in combination with the registered external schemas. It can be used in combination with Part 4 and Part 5 modules to validate the metadata ingested into a JPSearch compliant system. The Part 3 module will process JPQF queries against the reposit
24、ory. It can be used alone, acting over an independent image repository, or it can be used in combination with the other modules, acting over the repository generated by the usage of the other modules. The Part 4 and Part 5 modules are responsible for the interchange of content and metadata between t
25、he JPSearch system and the external applications. The Part 4 module will allow extracting/annotating metadata ISO/IEC 24800-6:2012(E) ISO/IEC 2012 All rights reserved 3embedded within an image file. The Part 5 module will allow interchanging metadata from the whole repository or parts of it in XML o
26、r in binary format. For each software module mentioned in the table below, next clauses describe a brief architecture of the module with description, functionality, instructions for installation and utilization, description of using provided interface which may be command line and/or graphical user
27、interface, and examples of inputs and outputs with any additional information required to properly use the software module. module name type description Metadata Translation Module normative Schema registry and metadata validation (Part 2) JPQF Query Processor Module normative JPQF query validation
28、and processing (Part 3) Embedded Metadata Codec Module normative Metadata embedded in image files. Annotation and extraction (Part 4) Repository Import/Export Module normative Repository interchange in binary and XML formats (Part 5) 5 Reference software for the ISO/IEC 24800 5.1 Metadata Translatio
29、n Module 5.1.1 Summary The JPSearch translation rules framework supports understanding XML instance documents of metadata formats by providing translation rules from an XML instance documents of metadata formats into the JPSearch core metadata format and vice versa. For this purpose, the framework b
30、ases on the following external technologies: a XML database called BaseX for managing the individual translation rules and JDOM which is an open-source library for java optimized XML data manipulation routines. Module name Metadata Translation Module Functional Description The Java based translation
31、 module provides means for translating metadata descriptions of XML based metadata formats to and from JPSearch Core descriptions. Currently supported metadata formats are MPEG-7, Dublin Core and JPSearch Core. The current framework can be further extended by adding respective translation rules (XML
32、 instance documents) from and to JPSearch Core. Furthermore, the implementation has to be extended by a new TranslationToXXX module. Besides, the current version of the translation module supports the management (upload, download, delete) of translation rules. This is implemented by a JavaFX based G
33、UI application which can be used as web application or standalone application. Installation Guideline Runs as Java (web) application or can be used as Java library in projects. Detailed information is provided below. Interface Description INPUT JPQF query containing XML based metadata. The metadata
34、has to be stored in a QueryByDescription query type. Currently MPEG-7, Dublin Core and JPSearch ISO/IEC 24800-6:2012(E) 4 ISO/IEC 2012 All rights reservedCore is supported. OUTPUT JPQF query containing the translated metadata format in the respective QueryByDescription query type. Translation means
35、MPEG-7 or Dublin Core metadata are translated into JPSearch Core and JPSearch Core is either translated into MPEG-7 or Dublin Core. Programming Language(s) Java 1.6 and higher Platform(s) Any platform is supported that is aware of Java Dependencies JavaFX library for the visualization and Tomcat 6 o
36、r higher web server in case of using the translation framework as web application. A BaseX database for storing registered translation rules. Details 5.1.2 Functionality 5.1.2.1 Introduction This Subclause describes the complete architecture of the metadata translation module. Figure 1 presents the
37、individual components of the framework and its interplay. In the following, the components are described in more detail. Figure 1 Translation Rule Framework Class Hierarchy ISO/IEC 24800-6:2012(E) ISO/IEC 2012 All rights reserved 55.1.2.2 Translation manager The translation manager is a Java FX appl
38、ication which deals as frontend for user input and supports the registration of translation rules and the translation of XML input instances. Figure 2 presents a screenshot of the main frontend with the provided functionality: upload a new translation rule, view the existing rules and translate an i
39、nput document. Figure 2 Translation Manager 5.1.2.3 Module Translator In our demo application the Translator class is instantiated directly by the translation manager. However, it can be used and instantiated in any other Java based application as well. As input parameters, the class requires a JPQF
40、 query and one or more namespaces denoting the target metadata format. Several constructors are available for different settings. If only a query is transmitted, the translator assumes to translate the content of the input query into the JPSearch core metadata format. In this case, the responsible c
41、lass (TranslateIntoJPSearch) is used. The needed translation rules are (if not submitted by parameters) loaded from the BaseX database. 5.1.2.4 Module TranslateIntoXXX For every supported metadata format a specific Java class has to be provided. This class follows a name convention like TranslateTo.
42、 For instance for a translation into the Dublin Core schema a respective TranslateIntoDublinCore need to be implemented. The main task of those classes is to construct a valid XML instance document regarding to the target scheme (here for instance Dublin Core) and the given translation rule. 5.1.2.5
43、 Module Translate The module Translate contains the whole application logic for applying the translation rules. The class Translate receives the input query and the translation rules. After preparation of the query, the executeTranslationRules method is executed. This method traverses over all trans
44、lation rules and calls the fitting rule paradigm (one-to-one, one-to-many, or many-to-one). In general, the available XPath expression is evaluated by using the JDOM-API in order to separate the desired value. The processing of the fromField expression is done automatic but for the evaluation of the
45、 toField the respective helper classes (TranslateInto) are required. In addition, it has to be noted that the order of the translation rules is important for the final validity of the received instance document. 5.1.2.6 Integration of new metadata formats For the integration of new metadata formats,
46、 a respective TranslateIntoXXX implementation has to be provided. In addition, the necessary translation rules for the new metadata formats need to be established ISO/IEC 24800-6:2012(E) 6 ISO/IEC 2012 All rights reservedcontaining all XPath rules for mapping a JPSearch core schema instance document
47、 into the target schema and vice versa. Finally, the TranslateIntoXXX implementation has to be integrated into the project and the rules file can be uploaded by the user interface. 5.1.3 Installation / Utilization The JPSearch Metadata Translation Module comes as a set of zip file and its implementa
48、tion relies on a Java 1.6 installation on the target computer. Furthermore, for using the Java FX client application as a web application a running Apache Tomcat is necessary. Furthermore, a BaseX database has to be installed in case the web application is used. The package contains the following zi
49、p files 1. Rules.zip: Contains the four necessary translation rule XML files. 2. Schema.zip: contains the according XML scheme files for MPEG-7, Dublin Core and JPSearch. 3. Querys.zip: contains 3 example queries for testing 4. Applet.zip: contains the complete Java project 5. Translation Manager.zip: contains the Java project for the JavaFx user interface 6. WebApp.zip: contains the .war file which can be directly exported to a Tomcat server The following steps have to be applied in order to start the