OAITMPlugin

From Gcube Wiki
Revision as of 17:49, 5 April 2013 by Valentina.marioli (Talk | contribs) (Plugin parameters fields)

Jump to: navigation, search

Species TM Plugin is a plugin of the Tree Manager service that defines and maintains tree views of biodiversity data sources exposed by the Species Manager services. Species TM Plugin provides an uniform model to access and storage data from SPD Service. Each Taxon generated via SPD Service is trasformed in a edge-labelled tree by Species TM Plugin.

Tree model

A tree generated by OAITMPlugin has three subtrees:

  • DwC: each data from SPD Service is mapped to Darwin Core concepts. A detailed description of the Darwin Core fields is listed here: https://gcube.wiki.gcube-system.org/gcube/index.php/Checklist_DwC.
  • Properties: additional data elements from SPD Service are stored in this subtree.
  • Provenance: information about provenance (wasDerivedFrom, wasGeneratedBy).

Generic model

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" >
          <!-- XML Schema Generated from XML Document on Fri Apr 05 2013 16:24:22 GMT+0200 (CEST) -->
          <!-- with XmlGrid.net Free Online Service http://xmlgrid.net -->
       <xs:element name="t:root" >
              <xs:complexType>
                     <xs:sequence>
                            <xs:element name="creationTime" type="xs:string" />
                            <xs:element name="lastUpdateTime" type="xs:string" />
                            <xs:element name="isDescribedBy" >
                                   <xs:complexType>
                                          <xs:sequence>
                                                 <xs:element name="mimeType" type="xs:string" />
                                                 <xs:element name="length" type="xs:int" />
                                                 <xs:element name="language" type="xs:string" />
                                                 <xs:element name="schemaName" type="xs:string" />
                                                 <xs:element name="schemaURI" type="xs:string" />
                                                 <xs:element name="bytestream" type="xs:string" />
                                                 <xs:element name="creationTime" type="xs:string" />
                                                 <xs:element name="lastUpdateTime" type="xs:string" />
                                             </xs:sequence>
                                          <xs:attribute name="t:id" type="xs:string" />
                                      </xs:complexType>
                               </xs:element>
                            <xs:element name="mimeType" type="xs:string" />
                            <xs:element name="length" type="xs:int" />
                            <xs:element name="url" type="xs:string" />
                            <xs:element name="name" type="xs:string" />
                            <xs:element name="hasAlternative" maxOccurs="unbounded" >
                                   <xs:complexType>
                                          <xs:sequence>
                                                 <xs:element name="mimeType" type="xs:string" />
                                                 <xs:element name="length" type="xs:int" />
                                                 <xs:element name="name" type="xs:string" />
                                                 <xs:element name="url" type="xs:string" />
                                                 <xs:element name="creationTime" type="xs:string" />
                                                 <xs:element name="lastUpdateTime" type="xs:string" />
                                             </xs:sequence>
                                          <xs:attribute name="t:id" type="xs:string" />
                                      </xs:complexType>
                               </xs:element>
                        </xs:sequence>
                     <xs:attribute name="xmlns:t" type="xs:string" />
                     <xs:attribute name="t:id" type="xs:string" />
                 </xs:complexType>
          </xs:element>
   </xs:schema>

Example

A tree generated by OAI TM Plugin looks like this:

<?xml version="1.0" ?>
<t:root xmlns:t="http://gcube-system.org/namespaces/data/trees" t:id="oai:dspace.mit.edu:1721.1/27225">
<creationTime>2008-03-10T16:34:16.000+01:00</creationTime>
<lastUpdateTime>2008-03-10T16:34:16.000+01:00</lastUpdateTime>
 
<isDescribedBy t:id="oai:dspace.mit.edu:1721.1/27225-oai_dc">
	<mimeType>text/xml</mimeType><length>2139</length>
	<language>unknown</language>
	<schemaName>oai_dc</schemaName>
	<schemaURI>http://www.openarchives.org/OAI/2.0/oai_dc/</schemaURI>
	<bytestream>[B@60de1b8a</bytestream>
	<creationTime>2008-03-10T16:34:16.000+01:00</creationTime>
	<lastUpdateTime>2008-03-10T16:34:16.000+01:00</lastUpdateTime>
</isDescribedBy>
 
<mimeType>text/url</mimeType>
<length>34</length>
<url>http://hdl.handle.net/1721.1/27225</url>
<name>A methodology for the assessment of the proliferation resistance of nuclear power systems: topical report</name>
 
<hasAlternative t:id="0-alternative-0">
	<mimeType>text/xml;charset=UTF-8</mimeType>
	<length>406</length>
	<name>A methodology for the assessment of the proliferation resistance of nuclear power systems</name>
	<url>http://hdl.handle.net/1721.1/27225</url>
	<creationTime>2008-03-10T16:34:16.000+01:00</creationTime>
	<lastUpdateTime>2008-03-10T16:34:16.000+01:00</lastUpdateTime>
</hasAlternative>
 
<hasAlternative t:id="0-alternative-1">
	<mimeType>text/xml;charset=UTF-8</mimeType>
	<length>406</length>
	<name>A methodology for the assessment of the proliferation resistance of nuclear power systems</name>
	<url>http://hdl.handle.net/1721.1/27225</url>
	<creationTime>2008-03-10T16:34:16.000+01:00</creationTime>
	<lastUpdateTime>2008-03-10T16:34:16.000+01:00</lastUpdateTime>
</hasAlternative>
 
<hasAlternative t:id="0-alternative-2">
	<mimeType>text/xml;charset=UTF-8</mimeType>
	<length>406</length>
	<name>A methodology for the assessment of the proliferation resistance of nuclear power systems</name>
	<url>http://hdl.handle.net/1721.1/27225</url>
	<creationTime>2008-03-10T16:34:16.000+01:00</creationTime>
	<lastUpdateTime>2008-03-10T16:34:16.000+01:00</lastUpdateTime>
</hasAlternative>
 
</t:root>

Plugin parameters fields

The data input to provide vary depending on your needs:

  • WrapSetsRequest: to create a collection for each set of the external repository.
    • In this case the mandatory information you have to provide are the following:
    • There are also other non mandatory information we suggest to provide:
      • title Xpath: the XPATH from which we can retrieve the title of a document (e.g. //*[local-name()='title'])
      • alternatives Xpath: xpath to define possible alternatives (e.g. //*[local-name()='relation' and contains(.,'://')])
      • repository name: self explaining field (e.g. aquacomm)
      • setIdentifierList: the id of the set to take into consideration
  • WrapRepositoryRequest: it has to be used to create a collection containing the entire data available in the external repository.
    • In this case the mandatory information you have to provide are the following:
    • There are also other non mandatory information we suggest to provide:
      • title Xpath: the XPATH from which we can retrieve the title of a document (e.g. //*[local-name()='title'])
      • alternatives Xpath: xpath to define possible alternatives (e.g. //*[local-name()='relation' and contains(.,'://')])
      • repository name: self explaining field (e.g. aquacomm)
      • collection description: a description for a collection

Maven coordinates

The Maven coordinates of oai-tree-plugin of its development versions are:

<dependency>
  <groupId>org.gcube.data.oai.tmplugin</groupId>
  <artifactId>oai-tm-plugin</artifactId>
  <version>1.1.0-2.13.0</version>
</dependency>