Difference between revisions of "Metadata XML Schema"

From Biowikifarm Metawiki
Jump to: navigation, search
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
Let us suppose we have a database having these data:
 
Let us suppose we have a database having these data:
  
<TABLE border=1 width=500>
+
<table border="1" width="500" style="wikitable">
 
<TR>
 
<TR>
 
<TH>Type</TH>
 
<TH>Type</TH>
Line 13: Line 13:
 
<TH>Language</TH>
 
<TH>Language</TH>
 
<TH>Metadata Language</TH>
 
<TH>Metadata Language</TH>
 +
<TH>Best_Quality_URI</TH>
 +
<TH>Best_Quality_Availability</TH>
 +
 
</TR>
 
</TR>
 
<TR>
 
<TR>
Line 18: Line 21:
 
<TD>Ustilago tragopogi-pratensis</TD>
 
<TD>Ustilago tragopogi-pratensis</TD>
 
<TD>Ustilago tragopogi-pratensis (Pers.) Roussel;</TD>
 
<TD>Ustilago tragopogi-pratensis (Pers.) Roussel;</TD>
<TD>http://ServiceProviderDB/MySQLDB</TD>
+
<TD>http://ServiceProvider/MyDB</TD>
 
<TD>d1e4</TD>
 
<TD>d1e4</TD>
 
<TD>872783096</TD>
 
<TD>872783096</TD>
Line 25: Line 28:
 
<TD>fr</TD>
 
<TD>fr</TD>
 
<TD>fr</TD>
 
<TD>fr</TD>
 +
<TD>URI of InteractiveResource</TD>
 +
<TD>online (free)</TD>
 
</TR>
 
</TR>
 
<TR>
 
<TR>
<TD>InteractiveResource</TD>
+
<TD>Collection</TD>
 
<TD>Puccinia coronata</TD>
 
<TD>Puccinia coronata</TD>
 
<TD>Puccinia coronata Cda.; sur Alopecurus agrestis L.</TD>
 
<TD>Puccinia coronata Cda.; sur Alopecurus agrestis L.</TD>
<TD>http://ServiceProviderDB/MySQLDB</TD>
+
<TD>http://ServiceProvider/MyDB</TD>
 
<TD>d1e5</TD>
 
<TD>d1e5</TD>
 
<TD>872783097</TD>
 
<TD>872783097</TD>
Line 37: Line 42:
 
<TD>de</TD>
 
<TD>de</TD>
 
<TD>de</TD>
 
<TD>de</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 
</TR>
 
</TR>
 
<TR>
 
<TR>
Line 42: Line 49:
 
<TD>Uromyces arenariae-leptoclados</TD>
 
<TD>Uromyces arenariae-leptoclados</TD>
 
<TD>Uromyces arenariae-leptoclados Vienn.-Bourg.; sur Arenaria leptoclados Guss.</TD>
 
<TD>Uromyces arenariae-leptoclados Vienn.-Bourg.; sur Arenaria leptoclados Guss.</TD>
<TD>http://ServiceProviderDB/MySQLDB</TD>
+
<TD>http://ServiceProvider/MyDB</TD>
 
<TD>d1e6</TD>
 
<TD>d1e6</TD>
 
<TD>872783098</TD>
 
<TD>872783098</TD>
Line 49: Line 56:
 
<TD>it</TD>
 
<TD>it</TD>
 
<TD>it</TD>
 
<TD>it</TD>
 +
<TD>URI of StillImage</TD>
 +
<TD>online (free)</TD>
 +
 +
</TR>
 +
<TR>
 +
<TD>Provider</TD>
 +
<TD>My Provider</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
<TD>&nbsp;</TD>
 +
 
</TR>
 
</TR>
</TABLE>
+
</table>
  
 
You have to create XML file with this content:
 
You have to create XML file with this content:
  
 
File 1: (demoData.xml)
 
File 1: (demoData.xml)
<pre>
+
<pre><nowiki>
 
<?xml version="1.0" encoding="UTF-8"?>
 
<?xml version="1.0" encoding="UTF-8"?>
<K2NMetadata xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="K2N.xsd" timestamp="2009-11-04T13:05:01.667+02:00">
+
<K2NMetadata xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.species-id.net/o/media/3/32/K2N.xsd" timestamp="2009-11-04T13:05:01.667+02:00">
 
<InteractiveResource>
 
<InteractiveResource>
 
<!-- Mandatory -->
 
<!-- Mandatory -->
 
<Resource_ID>d1e4</Resource_ID>
 
<Resource_ID>d1e4</Resource_ID>
<Service_Attribution_URI>http://ServiceProviderDB/MySQLDB</Service_Attribution_URI>
+
<Service_Attribution_URI>http://ServiceProvider/MyDB</Service_Attribution_URI>
 
<Collection_By_Resource_ID>872783096</Collection_By_Resource_ID>
 
<Collection_By_Resource_ID>872783096</Collection_By_Resource_ID>
 
<!-- End Mandatory -->
 
<!-- End Mandatory -->
 
<Title>Ustilago tragopogi-pratensis</Title>
 
<Title>Ustilago tragopogi-pratensis</Title>
 
                 <Caption>Ustilago tragopogi-pratensis (Pers.) Roussel;</Caption>
 
                 <Caption>Ustilago tragopogi-pratensis (Pers.) Roussel;</Caption>
 +
                <Best_Quality_URI>URI of InteractiveResource</Best_Quality_URI>
 +
<Best_Quality_Availability>online (free)</Best_Quality_Availability>
 
                 <Copyright_Statement>&#64; XXX</Copyright_Statement>
 
                 <Copyright_Statement>&#64; XXX</Copyright_Statement>
 
<Creators>Mr Smith</Creators>
 
<Creators>Mr Smith</Creators>
Line 71: Line 98:
 
<Metadata_Language>fr</Metadata_Language>
 
<Metadata_Language>fr</Metadata_Language>
 
</InteractiveResource>
 
</InteractiveResource>
<InteractiveResource>
+
<Collection>
 
<!-- Mandatory -->
 
<!-- Mandatory -->
 
<Resource_ID>d1e5</Resource_ID>
 
<Resource_ID>d1e5</Resource_ID>
<Service_Attribution_URI>http://www.keytonature.eu/wiki/</Service_Attribution_URI>
+
<Service_Attribution_URI>http://ServiceProvider/MyDB</Service_Attribution_URI>
 
<Collection_By_Resource_ID>872783097</Collection_By_Resource_ID>
 
<Collection_By_Resource_ID>872783097</Collection_By_Resource_ID>
 
<!-- End Mandatory -->
 
<!-- End Mandatory -->
Line 83: Line 110:
 
<Language><li>de</li></Language>
 
<Language><li>de</li></Language>
 
<Metadata_Language>de</Metadata_Language>
 
<Metadata_Language>de</Metadata_Language>
</InteractiveResource>
+
</Collection>
 
<StillImage>
 
<StillImage>
 
<!-- Mandatory -->
 
<!-- Mandatory -->
 
<Resource_ID>d1e6</Resource_ID>
 
<Resource_ID>d1e6</Resource_ID>
<Service_Attribution_URI>http://www.keytonature.eu/wiki/</Service_Attribution_URI>
+
<Service_Attribution_URI>http://ServiceProvider/MyDB</Service_Attribution_URI>
 
<Collection_By_Resource_ID>872783098</Collection_By_Resource_ID>
 
<Collection_By_Resource_ID>872783098</Collection_By_Resource_ID>
 
<!-- End Mandatory -->
 
<!-- End Mandatory -->
 
<Title>Uromyces arenariae-leptoclados</Title>
 
<Title>Uromyces arenariae-leptoclados</Title>
                 <Caption>Uromyces arenariae-leptoclados Vienn.-Bourg.; sur Arenaria leptoclados Guss.</Caption>
+
                 <Caption>Uromyces arenariae-leptoclados Vienn.-Bourg.; sur Arenaria leptoclados Guss.</Caption>
 +
                <Best_Quality_URI>URI of StillImage</Best_Quality_URI>
 +
<Best_Quality_Availability>online (free)</Best_Quality_Availability>
 
                 <Copyright_Statement>&#64; ZZZ</Copyright_Statement>
 
                 <Copyright_Statement>&#64; ZZZ</Copyright_Statement>
 
<Creators>Mr Fritz</Creators>
 
<Creators>Mr Fritz</Creators>
Line 97: Line 126:
 
<Metadata_Language>it</Metadata_Language>
 
<Metadata_Language>it</Metadata_Language>
 
</StillImage>
 
</StillImage>
 +
        <Provider>
 +
<Resource_ID>String</Resource_ID>
 +
<Title>My Provider</Title>
 +
</Provider>
 
</K2NMetadata>
 
</K2NMetadata>
</pre>
+
</nowiki></pre>
  
The XML file must be valid according to the scheme [http://www.species-id.net/o/media/3/32/K2N.xsd K2N.xsd ] and [http://www.species-id.net/o/media/d/de/K2NDictionary.xsd K2NDictionary.xsd].
 
You can check the validity of your XML file by using online validation tool at http://www.xmlvalidation.com/.
 
The tool allows you to upload the XML file as well as the required XSD files for validation.
 
If your XML file is valid, the tool replies "No errors were found".
 
If your XML file is not valid, a report is generated showing your errors and allowing you to edit the XML file for any corrections.
 
Next image show successfully XML validation.
 
  
 +
'''NOTE (Gregor): PRESENTLY, THIS EXAMPLE SEEMS INVALID LOGICALLY (ALTHOUGH TECHNICALLY SCHEMA VALID) BECAUSE THE COLLECTION ARE MISSING.'''
  
http://www.species-id.net/o/media/thumb/e/ef/XmlValidator.jpg/800px-XmlValidator.jpg
 
  
 +
The XML file must be valid according to the scheme [http://www.species-id.net/o/media/3/32/K2N.xsd K2N.xsd] and [http://www.species-id.net/o/media/d/de/K2NDictionary.xsd K2NDictionary.xsd]. You can check the validity of your XML file by using online validation tool at http://www.xmlvalidation.com/.
 +
The tool allows you to upload the XML file as well as the required XSD files for validation. If your XML file is valid, the tool replies "No errors were found".
 +
If your XML file is not valid, a report is generated showing your errors and allowing you to edit the XML file for any corrections. Next image show successfully XML validation.
  
You can upload those XML files to Fedora repository from http://<URL of application>.  
+
[[File:XmlValidator.jpg|800px]]
 +
 
 +
You can upload those XML files to Fedora repository from <nowiki>http://<URL of application></nowiki>.  
  
 
A form is presented to you (see next image), where you must supply some information:
 
A form is presented to you (see next image), where you must supply some information:
  
 +
[[File:FormUploadXML.jpg]]
  
http://www.species-id.net/o/media/f/f1/FormUploadXML.jpg
+
* fedora Host: host name of Fedora application server (localhost if Fedora is installed on same server of XML upload application);
 
+
* fedora Port: port number of Fedora application server;
 
+
* fedora Path: application path of Fedora application server (default fedora);
*fedora Host: host name of Fedora application server (localhost if Fedora is installed on same server of XML upload application);
+
* fedora Login and Fedora Password: credential to submit file to Fedora repository (admin credentials);
*fedora Port: port number of Fedora application server;
+
* PID: unique identifier to assign to content to be published;
*fedora Path: application path of Fedora application server (default fedora);
+
* XML File: XML file to publish to repository.
*fedora Login and Fedora Password: credential to submit file to Fedora repository (admin credentials);
+
*PID: unique identifier to assign to content to be published;
+
*XML File: XML file to publish to repository.
+
 
+
  
 
After clicking on 'Upload File' button, a page shows server messages indicating the success or failure of operation.
 
After clicking on 'Upload File' button, a page shows server messages indicating the success or failure of operation.
  
http://www.species-id.net/o/media/5/5e/SuccessFedoraIngest.jpg
+
[[File:SuccessFedoraIngest.jpg]]

Latest revision as of 10:25, 16 November 2009

Let us suppose we have a database having these data:

Type Title Caption Service_Attribution_URI Resource_ID Collection By Resource ID Copyright Statement Creators Language Metadata Language Best_Quality_URI Best_Quality_Availability
InteractiveResource Ustilago tragopogi-pratensis Ustilago tragopogi-pratensis (Pers.) Roussel; http://ServiceProvider/MyDB d1e4 872783096 © XXX Mr Smith fr fr URI of InteractiveResource online (free)
Collection Puccinia coronata Puccinia coronata Cda.; sur Alopecurus agrestis L. http://ServiceProvider/MyDB d1e5 872783097 © ABC Mr Fritz de de    
StillImage Uromyces arenariae-leptoclados Uromyces arenariae-leptoclados Vienn.-Bourg.; sur Arenaria leptoclados Guss. http://ServiceProvider/MyDB d1e6 872783098 © ZZZ Mr Fritz it it URI of StillImage online (free)
Provider My Provider                    

You have to create XML file with this content:

File 1: (demoData.xml)

<?xml version="1.0" encoding="UTF-8"?>
<K2NMetadata xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.species-id.net/o/media/3/32/K2N.xsd" timestamp="2009-11-04T13:05:01.667+02:00">
	<InteractiveResource>
		<!-- Mandatory -->
		<Resource_ID>d1e4</Resource_ID>
		<Service_Attribution_URI>http://ServiceProvider/MyDB</Service_Attribution_URI>
		<Collection_By_Resource_ID>872783096</Collection_By_Resource_ID>
		<!-- End Mandatory -->		
		<Title>Ustilago tragopogi-pratensis</Title>
                <Caption>Ustilago tragopogi-pratensis (Pers.) Roussel;</Caption>		
                <Best_Quality_URI>URI of InteractiveResource</Best_Quality_URI>
		<Best_Quality_Availability>online (free)</Best_Quality_Availability>
                <Copyright_Statement>@ XXX</Copyright_Statement>
		<Creators>Mr Smith</Creators>
		<Language><li>fr</li></Language>
		<Metadata_Language>fr</Metadata_Language>
	</InteractiveResource>
	<Collection>
		<!-- Mandatory -->
		<Resource_ID>d1e5</Resource_ID>
		<Service_Attribution_URI>http://ServiceProvider/MyDB</Service_Attribution_URI>
		<Collection_By_Resource_ID>872783097</Collection_By_Resource_ID>
		<!-- End Mandatory -->		
		<Title>Puccinia coronata</Title>
                <Caption>Puccinia coronata Cda.; sur Alopecurus agrestis L.</Caption>		
                <Copyright_Statement>@ ABC</Copyright_Statement>
		<Creators>Mr Fritz</Creators>
		<Language><li>de</li></Language>
		<Metadata_Language>de</Metadata_Language>
	</Collection>
	<StillImage>
		<!-- Mandatory -->
		<Resource_ID>d1e6</Resource_ID>
		<Service_Attribution_URI>http://ServiceProvider/MyDB</Service_Attribution_URI>
		<Collection_By_Resource_ID>872783098</Collection_By_Resource_ID>
		<!-- End Mandatory -->		
		<Title>Uromyces arenariae-leptoclados</Title>
                <Caption>Uromyces arenariae-leptoclados Vienn.-Bourg.; sur Arenaria leptoclados Guss.</Caption>	
                <Best_Quality_URI>URI of StillImage</Best_Quality_URI>
		<Best_Quality_Availability>online (free)</Best_Quality_Availability>
                <Copyright_Statement>@ ZZZ</Copyright_Statement>
		<Creators>Mr Fritz</Creators>
		<Language><li>it</li></Language>
		<Metadata_Language>it</Metadata_Language>
	</StillImage>
        <Provider>
		<Resource_ID>String</Resource_ID>
		<Title>My Provider</Title>
	</Provider>
</K2NMetadata>


NOTE (Gregor): PRESENTLY, THIS EXAMPLE SEEMS INVALID LOGICALLY (ALTHOUGH TECHNICALLY SCHEMA VALID) BECAUSE THE COLLECTION ARE MISSING.


The XML file must be valid according to the scheme K2N.xsd and K2NDictionary.xsd. You can check the validity of your XML file by using online validation tool at http://www.xmlvalidation.com/. The tool allows you to upload the XML file as well as the required XSD files for validation. If your XML file is valid, the tool replies "No errors were found". If your XML file is not valid, a report is generated showing your errors and allowing you to edit the XML file for any corrections. Next image show successfully XML validation.

XmlValidator.jpg

You can upload those XML files to Fedora repository from http://<URL of application>.

A form is presented to you (see next image), where you must supply some information:

FormUploadXML.jpg

  • fedora Host: host name of Fedora application server (localhost if Fedora is installed on same server of XML upload application);
  • fedora Port: port number of Fedora application server;
  • fedora Path: application path of Fedora application server (default fedora);
  • fedora Login and Fedora Password: credential to submit file to Fedora repository (admin credentials);
  • PID: unique identifier to assign to content to be published;
  • XML File: XML file to publish to repository.

After clicking on 'Upload File' button, a page shows server messages indicating the success or failure of operation.

SuccessFedoraIngest.jpg