This commit is contained in:
Fabio Sinibaldi 2017-01-10 14:08:56 +00:00
parent b977d20fc4
commit 0ce9a599f8
26 changed files with 45711 additions and 487 deletions

View File

@ -6,11 +6,6 @@
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
<attributes>
<attribute name="optional" value="true"/>
@ -32,5 +27,15 @@
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/xmlTemplates">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
</classpath>

View File

@ -3,4 +3,5 @@ encoding//src/main/java=UTF-8
encoding//src/main/resources=UTF-8
encoding//src/test/java=UTF-8
encoding//src/test/resources=UTF-8
encoding//src/xmlTemplates=UTF-8
encoding/<project>=UTF-8

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Resource version="0.4.x">
<ID>060088db-2045-45e5-be70-2709b0d9d0de</ID>
<ID>4bf0d02a-0b66-47af-9fed-480249e74a9c</ID>
<Type>RuntimeResource</Type>
<Profile>
<Category>Gis</Category>
@ -30,11 +30,11 @@
</Property>
<Property>
<Name>default1</Name>
<Value encrypted="false">858</Value>
<Value encrypted="false">1646</Value>
</Property>
<Property>
<Name>scopePwd1</Name>
<Value encrypted="true">IttLsIsLWcjT0VFks4o89Q==</Value>
<Value encrypted="true">r0w8yhRoTbtEpijz6UDX6A==</Value>
</Property>
<Property>
<Name>priority</Name>
@ -46,19 +46,19 @@
</Property>
<Property>
<Name>ckanUser1</Name>
<Value encrypted="false">FjbBwWw</Value>
<Value encrypted="false">L7xE1Vn</Value>
</Property>
<Property>
<Name>ckanPwd1</Name>
<Value encrypted="true">6zQtKXloLczK2amphRXXmw==</Value>
<Value encrypted="true">rL0ko4qaViHna/FnKEQjdQ==</Value>
</Property>
<Property>
<Name>private1</Name>
<Value encrypted="false">857</Value>
<Value encrypted="false">1645</Value>
</Property>
<Property>
<Name>public1</Name>
<Value encrypted="false">858</Value>
<Value encrypted="false">1646</Value>
</Property>
<Property>
<Name>scope1</Name>
@ -66,7 +66,79 @@
</Property>
<Property>
<Name>scopeUser1</Name>
<Value encrypted="false">mUAKFMh</Value>
<Value encrypted="false">zbJKZCL</Value>
</Property>
<Property>
<Name>suffixes</Name>
<Value encrypted="false">1,2</Value>
</Property>
<Property>
<Name>ckanUser1</Name>
<Value encrypted="false">L7xE1Vn</Value>
</Property>
<Property>
<Name>ckanUser2</Name>
<Value encrypted="false">KHFKFUd</Value>
</Property>
<Property>
<Name>public2</Name>
<Value encrypted="false">1734</Value>
</Property>
<Property>
<Name>private1</Name>
<Value encrypted="false">1645</Value>
</Property>
<Property>
<Name>private2</Name>
<Value encrypted="false">1733</Value>
</Property>
<Property>
<Name>public1</Name>
<Value encrypted="false">1646</Value>
</Property>
<Property>
<Name>scopeUser1</Name>
<Value encrypted="false">zbJKZCL</Value>
</Property>
<Property>
<Name>scopeUser2</Name>
<Value encrypted="false">yr7T7i7</Value>
</Property>
<Property>
<Name>default1</Name>
<Value encrypted="false">1646</Value>
</Property>
<Property>
<Name>scopePwd2</Name>
<Value encrypted="true">E35j+f9fPbTDm9pJpoEyYg==</Value>
</Property>
<Property>
<Name>scopePwd1</Name>
<Value encrypted="true">r0w8yhRoTbtEpijz6UDX6A==</Value>
</Property>
<Property>
<Name>default2</Name>
<Value encrypted="false">1734</Value>
</Property>
<Property>
<Name>priority</Name>
<Value encrypted="false">1</Value>
</Property>
<Property>
<Name>ckanPwd1</Name>
<Value encrypted="true">rL0ko4qaViHna/FnKEQjdQ==</Value>
</Property>
<Property>
<Name>ckanPwd2</Name>
<Value encrypted="true">+zzxd3NyHUXF2VPFgRXN0w==</Value>
</Property>
<Property>
<Name>scope2</Name>
<Value encrypted="false">devsec</Value>
</Property>
<Property>
<Name>scope1</Name>
<Value encrypted="false">gcube</Value>
</Property>
</Properties>
</AccessPoint>

View File

@ -1,312 +1,391 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<gmd:MD_Metadata xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:fra="http://www.cnig.gouv.fr/2005/fra" xmlns:gmx="http://www.isotc211.org/2005/gmx" xmlns:gmi="http://www.isotc211.org/2005/gmi" xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<gmd:fileIdentifier>
<gco:CharacterString>b18b3a7f-5f4c-4b98-aa1a-2171e574e691</gco:CharacterString>
</gmd:fileIdentifier>
<gmd:language>
<gmd:LanguageCode codeListValue="eng" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/ML_gmxCodelists.xml#LanguageCode">English</gmd:LanguageCode>
</gmd:language>
<gmd:characterSet>
<gmd:MD_CharacterSetCode codeListValue="utf8" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_CharacterSetCode">UTF-8</gmd:MD_CharacterSetCode>
</gmd:characterSet>
<gmd:hierarchyLevel>
<gmd:MD_ScopeCode codeSpace="eng" codeListValue="dataset" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_ScopeCode">Dataset</gmd:MD_ScopeCode>
</gmd:hierarchyLevel>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>fabio.sinibaldi</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:organisationName>
<gmd:role>
<gmd:CI_RoleCode codeListValue="author" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Author</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>iMarine.eu</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:organisationName>
<gmd:contactInfo>
<gmd:CI_Contact>
<gmd:address>
<gmd:CI_Address>
<gmd:electronicMailAddress>
<gco:CharacterString>info@i-marine.eu</gco:CharacterString>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
<gmd:onlineResource>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://www.i-marine.eu</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link</gco:CharacterString>
</gmd:protocol>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
<gmd:role>
<gmd:CI_RoleCode codeListValue="distributor" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Distributor</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>iMarine Consortium Technical Support</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:organisationName>
<gmd:contactInfo>
<gmd:CI_Contact>
<gmd:address>
<gmd:CI_Address>
<gmd:electronicMailAddress>
<gco:CharacterString>support@i-marine.eu</gco:CharacterString>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
<gmd:onlineResource>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://www.i-marine.eu</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link</gco:CharacterString>
</gmd:protocol>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
<gmd:role>
<gmd:CI_RoleCode codeListValue="resourceProvider" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Resource provider</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:dateStamp>
<gco:DateTime>2016-06-20T15:32:15.034+02:00</gco:DateTime>
</gmd:dateStamp>
<gmd:spatialRepresentationInfo>
<gmd:MD_VectorSpatialRepresentation>
<gmd:topologyLevel>
<gmd:MD_TopologyLevelCode codeListValue="geometryOnly" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_TopologyLevelCode">Geometry only</gmd:MD_TopologyLevelCode>
</gmd:topologyLevel>
<gmd:geometricObjects>
<gmd:MD_GeometricObjects>
<gmd:geometricObjectType>
<gmd:MD_GeometricObjectTypeCode codeListValue="surface" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_GeometricObjectTypeCode">Surface</gmd:MD_GeometricObjectTypeCode>
</gmd:geometricObjectType>
<gmd:geometricObjectCount>
<gco:Integer>0</gco:Integer>
</gmd:geometricObjectCount>
</gmd:MD_GeometricObjects>
</gmd:geometricObjects>
</gmd:MD_VectorSpatialRepresentation>
</gmd:spatialRepresentationInfo>
<gmd:identificationInfo>
<gmd:MD_DataIdentification>
<gmd:citation>
<gmd:CI_Citation>
<gmd:title>
<gco:CharacterString>TrueMarble_/gcube/devsec/devVRE_test</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
<gmd:date>
<gco:DateTime>2016-06-20T15:32:15.008+02:00</gco:DateTime>
</gmd:date>
<gmd:dateType>
<gmd:CI_DateTypeCode codeSpace="eng" codeListValue="creation" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode">Creation</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
<gmd:presentationForm>
<gmd:CI_PresentationFormCode codeListValue="imageDigital" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_PresentationFormCode">Image digital</gmd:CI_PresentationFormCode>
</gmd:presentationForm>
</gmd:CI_Citation>
</gmd:citation>
<gmd:abstract>
<gco:CharacterString>This layer is used as a base layer for GIS VIewer widget</gco:CharacterString>
</gmd:abstract>
<gmd:purpose>
<gco:CharacterString>This layer is used as a base layer for GIS VIewer widget</gco:CharacterString>
</gmd:purpose>
<gmd:credit>
<gco:CharacterString>This layer has been produced by iMarine (www.i-marine.eu). iMarine (283644) is funded by the European Commission under Framework Programme 7</gco:CharacterString>
</gmd:credit>
<gmd:resourceMaintenance>
<gmd:MD_MaintenanceInformation>
<gmd:maintenanceAndUpdateFrequency>
<gmd:MD_MaintenanceFrequencyCode codeListValue="asNeeded" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode">As needed</gmd:MD_MaintenanceFrequencyCode>
</gmd:maintenanceAndUpdateFrequency>
</gmd:MD_MaintenanceInformation>
</gmd:resourceMaintenance>
<gmd:descriptiveKeywords>
<gmd:MD_Keywords>
<gmd:keyword>
<gco:CharacterString>True Marble</gco:CharacterString>
</gmd:keyword>
<gmd:keyword>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:keyword>
<gmd:type>
<gmd:MD_KeywordTypeCode codeListValue="theme" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_KeywordTypeCode">Theme</gmd:MD_KeywordTypeCode>
</gmd:type>
<gmd:thesaurusName>
<gmd:CI_Citation>
<gmd:title>
<gco:CharacterString>General</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
<gmd:date>
<gco:DateTime>2013-07-04T14:09:55.783+02:00</gco:DateTime>
</gmd:date>
<gmd:dateType>
<gmd:CI_DateTypeCode codeSpace="eng" codeListValue="creation" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode">Creation</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
<gmd:spatialResolution>
<gmd:MD_Resolution>
<gmd:distance>
<gco:Distance uom="http://schemas.opengis.net/iso/19139/20070417/resources/uom/gmxUom.xml#xpointer(//*[@gml:id='m'])">0.5</gco:Distance>
</gmd:distance>
</gmd:MD_Resolution>
</gmd:spatialResolution>
<gmd:language>
<gmd:LanguageCode codeListValue="eng" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/ML_gmxCodelists.xml#LanguageCode">English</gmd:LanguageCode>
</gmd:language>
<gmd:topicCategory>
<gmd:MD_TopicCategoryCode>environment</gmd:MD_TopicCategoryCode>
</gmd:topicCategory>
<gmd:extent>
<gmd:EX_Extent>
<gmd:geographicElement>
<gmd:EX_GeographicBoundingBox>
<gmd:extentTypeCode>
<gco:Boolean>true</gco:Boolean>
</gmd:extentTypeCode>
<gmd:westBoundLongitude>
<gco:Decimal>-180.0</gco:Decimal>
</gmd:westBoundLongitude>
<gmd:eastBoundLongitude>
<gco:Decimal>180.0</gco:Decimal>
</gmd:eastBoundLongitude>
<gmd:southBoundLatitude>
<gco:Decimal>-90.0</gco:Decimal>
</gmd:southBoundLatitude>
<gmd:northBoundLatitude>
<gco:Decimal>90.0</gco:Decimal>
</gmd:northBoundLatitude>
</gmd:EX_GeographicBoundingBox>
</gmd:geographicElement>
</gmd:EX_Extent>
</gmd:extent>
</gmd:MD_DataIdentification>
</gmd:identificationInfo>
<gmd:distributionInfo>
<gmd:MD_Distribution>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>WMS</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.1.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>WFS</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.1.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>WCS</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.0.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:transferOptions>
<gmd:MD_DigitalTransferOptions>
<gmd:onLine>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://geoserver-dev.d4science.org/geoserver/wms?service=wms&amp;version=1.1.0&amp;request=GetMap&amp;layers=TrueMarble.16km.2700x1350&amp;styles=raster&amp;bbox=-180.0,-90.0,180.0,90.0&amp;width=676&amp;height=330&amp;srs=EPSG:4326&amp;crs=EPSG:4326&amp;format=application/openlayers</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>OGC:WMS-1.3.0-http-get-map</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>TrueMarble.16km.2700x1350</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onLine>
<gmd:onLine>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://geoserver-dev.d4science.org/geoserver/ows?service=wfs&amp;version=1.0.0&amp;request=GetFeature&amp;typeName=TrueMarble.16km.2700x1350&amp;format=json</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>OGC:WFS-1.0.0-http-get-feature</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>TrueMarble.16km.2700x1350</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onLine>
<gmd:onLine>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://geoserver-dev.d4science.org/geoserver/wcs?service=wcs&amp;version=1.0.0&amp;request=GetCoverage&amp;coverage=TrueMarble.16km.2700x1350&amp;CRS=EPSG:4326&amp;bbox=-180.0,-90.0,180.0,90.0&amp;width=676&amp;height=330&amp;format=geotiff</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>TrueMarble.16km.2700x1350</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onLine>
</gmd:MD_DigitalTransferOptions>
</gmd:transferOptions>
</gmd:MD_Distribution>
</gmd:distributionInfo>
<gmd:metadataConstraints>
<gmd:MD_LegalConstraints>
<gmd:useLimitation>
<gco:CharacterString>CC-BY-SA</gco:CharacterString>
</gmd:useLimitation>
<gmd:accessConstraints>
<gmd:MD_RestrictionCode codeListValue="license" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode">License</gmd:MD_RestrictionCode>
</gmd:accessConstraints>
<gmd:useConstraints>
<gmd:MD_RestrictionCode codeListValue="license" codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode">License</gmd:MD_RestrictionCode>
</gmd:useConstraints>
</gmd:MD_LegalConstraints>
</gmd:metadataConstraints>
<gmd:MD_Metadata xmlns:gco="http://www.isotc211.org/2005/gco"
xmlns:fra="http://www.cnig.gouv.fr/2005/fra" xmlns:gmx="http://www.isotc211.org/2005/gmx"
xmlns:gmi="http://www.isotc211.org/2005/gmi" xmlns:gmd="http://www.isotc211.org/2005/gmd"
xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink">
<gmd:fileIdentifier>
<gco:CharacterString>b973ab8b-fc26-4c9a-b96b-0f42db7c3daf</gco:CharacterString>
</gmd:fileIdentifier>
<gmd:language>
<gmd:LanguageCode codeListValue="eng"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/ML_gmxCodelists.xml#LanguageCode">English</gmd:LanguageCode>
</gmd:language>
<gmd:characterSet>
<gmd:MD_CharacterSetCode codeListValue="utf8"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_CharacterSetCode">UTF-8</gmd:MD_CharacterSetCode>
</gmd:characterSet>
<gmd:hierarchyLevel>
<gmd:MD_ScopeCode codeSpace="eng" codeListValue="dataset"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_ScopeCode">Dataset</gmd:MD_ScopeCode>
</gmd:hierarchyLevel>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>fabio.sinibaldi</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:organisationName>
<gmd:role>
<gmd:CI_RoleCode codeListValue="author"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Author</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>iMarine.eu</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:organisationName>
<gmd:contactInfo>
<gmd:CI_Contact>
<gmd:address>
<gmd:CI_Address>
<gmd:electronicMailAddress>
<gco:CharacterString>info@i-marine.eu</gco:CharacterString>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
<gmd:onlineResource>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://www.i-marine.eu</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>iMarine Consortium site.
</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
<gmd:role>
<gmd:CI_RoleCode codeListValue="distributor"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Distributor</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>iMarine Consortium Technical Support
</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:organisationName>
<gmd:contactInfo>
<gmd:CI_Contact>
<gmd:address>
<gmd:CI_Address>
<gmd:electronicMailAddress>
<gco:CharacterString>support@i-marine.eu</gco:CharacterString>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
<gmd:onlineResource>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://www.i-marine.eu</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>iMarine Consortium site.
</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
<gmd:role>
<gmd:CI_RoleCode codeListValue="resourceProvider"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Resource provider</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:dateStamp>
<gco:DateTime>2017-01-09T15:15:16.685+01:00</gco:DateTime>
</gmd:dateStamp>
<gmd:spatialRepresentationInfo>
<gmd:MD_VectorSpatialRepresentation>
<gmd:topologyLevel>
<gmd:MD_TopologyLevelCode codeListValue="geometryOnly"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_TopologyLevelCode">Geometry only</gmd:MD_TopologyLevelCode>
</gmd:topologyLevel>
<gmd:geometricObjects>
<gmd:MD_GeometricObjects>
<gmd:geometricObjectType>
<gmd:MD_GeometricObjectTypeCode
codeListValue="surface"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_GeometricObjectTypeCode">Surface</gmd:MD_GeometricObjectTypeCode>
</gmd:geometricObjectType>
<gmd:geometricObjectCount>
<gco:Integer>0</gco:Integer>
</gmd:geometricObjectCount>
</gmd:MD_GeometricObjects>
</gmd:geometricObjects>
</gmd:MD_VectorSpatialRepresentation>
</gmd:spatialRepresentationInfo>
<gmd:identificationInfo>
<gmd:MD_DataIdentification>
<gmd:citation>
<gmd:CI_Citation>
<gmd:title>
<gco:CharacterString>TrueMarble_/gcube/devsec_test
</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
<gmd:date>
<gco:DateTime>2017-01-09T15:15:16.655+01:00</gco:DateTime>
</gmd:date>
<gmd:dateType>
<gmd:CI_DateTypeCode codeSpace="eng"
codeListValue="creation"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode">Creation</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
<gmd:identifier>
<gmd:MD_Identifier>
<gmd:code>
<gco:CharacterString>b973ab8b-fc26-4c9a-b96b-0f42db7c3daf
</gco:CharacterString>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
<gmd:presentationForm>
<gmd:CI_PresentationFormCode
codeListValue="imageDigital"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_PresentationFormCode">Image digital</gmd:CI_PresentationFormCode>
</gmd:presentationForm>
</gmd:CI_Citation>
</gmd:citation>
<gmd:abstract>
<gco:CharacterString>This layer is used as a base layer for GIS
VIewer widget</gco:CharacterString>
</gmd:abstract>
<gmd:purpose>
<gco:CharacterString>This layer is used as a base layer for GIS
VIewer widget</gco:CharacterString>
</gmd:purpose>
<gmd:credit>
<gco:CharacterString>This layer has been produced by iMarine
(www.i-marine.eu). iMarine (283644) is funded by the European
Commission under Framework Programme 7</gco:CharacterString>
</gmd:credit>
<gmd:resourceMaintenance>
<gmd:MD_MaintenanceInformation>
<gmd:maintenanceAndUpdateFrequency>
<gmd:MD_MaintenanceFrequencyCode
codeListValue="asNeeded"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode">As needed</gmd:MD_MaintenanceFrequencyCode>
</gmd:maintenanceAndUpdateFrequency>
</gmd:MD_MaintenanceInformation>
</gmd:resourceMaintenance>
<gmd:descriptiveKeywords>
<gmd:MD_Keywords>
<gmd:keyword>
<gco:CharacterString>True Marble</gco:CharacterString>
</gmd:keyword>
<gmd:keyword>
<gco:CharacterString>iMarine Consortium</gco:CharacterString>
</gmd:keyword>
<gmd:type>
<gmd:MD_KeywordTypeCode codeListValue="theme"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_KeywordTypeCode">Theme</gmd:MD_KeywordTypeCode>
</gmd:type>
<gmd:thesaurusName>
<gmd:CI_Citation>
<gmd:title>
<gco:CharacterString>General</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
<gmd:date>
<gco:DateTime>2013-07-04T14:09:55.783+02:00</gco:DateTime>
</gmd:date>
<gmd:dateType>
<gmd:CI_DateTypeCode codeSpace="eng"
codeListValue="creation"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode">Creation</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</gmd:descriptiveKeywords>
<gmd:spatialResolution>
<gmd:MD_Resolution>
<gmd:distance>
<gco:Distance
uom="http://schemas.opengis.net/iso/19139/20070417/resources/uom/gmxUom.xml#xpointer(//*[@gml:id='m'])">0.5</gco:Distance>
</gmd:distance>
</gmd:MD_Resolution>
</gmd:spatialResolution>
<gmd:language>
<gmd:LanguageCode codeListValue="eng"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/ML_gmxCodelists.xml#LanguageCode">English</gmd:LanguageCode>
</gmd:language>
<gmd:topicCategory>
<gmd:MD_TopicCategoryCode>environment</gmd:MD_TopicCategoryCode>
</gmd:topicCategory>
<gmd:extent>
<gmd:EX_Extent>
<gmd:geographicElement>
<gmd:EX_GeographicBoundingBox>
<gmd:extentTypeCode>
<gco:Boolean>true</gco:Boolean>
</gmd:extentTypeCode>
<gmd:westBoundLongitude>
<gco:Decimal>-180.0</gco:Decimal>
</gmd:westBoundLongitude>
<gmd:eastBoundLongitude>
<gco:Decimal>180.0</gco:Decimal>
</gmd:eastBoundLongitude>
<gmd:southBoundLatitude>
<gco:Decimal>-90.0</gco:Decimal>
</gmd:southBoundLatitude>
<gmd:northBoundLatitude>
<gco:Decimal>90.0</gco:Decimal>
</gmd:northBoundLatitude>
</gmd:EX_GeographicBoundingBox>
</gmd:geographicElement>
</gmd:EX_Extent>
</gmd:extent>
</gmd:MD_DataIdentification>
</gmd:identificationInfo>
<gmd:distributionInfo>
<gmd:MD_Distribution>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>WMS</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.3.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>WFS</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.0.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>WCS</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.0.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:distributionFormat>
<gmd:MD_Format>
<gmd:name>
<gco:CharacterString>HTTP</gco:CharacterString>
</gmd:name>
<gmd:version>
<gco:CharacterString>1.0.0</gco:CharacterString>
</gmd:version>
</gmd:MD_Format>
</gmd:distributionFormat>
<gmd:transferOptions>
<gmd:MD_DigitalTransferOptions>
<gmd:onLine>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://geoserver-dev.d4science.org/geoserver/wms?service=wms&amp;amp;version=1.1.0&amp;amp;request=GetMap&amp;amp;layers=TrueMarble.16km.2700x1350&amp;amp;styles=raster&amp;amp;bbox=-180.0,-90.0,180.0,90.0&amp;amp;width=676&amp;amp;height=330&amp;amp;srs=EPSG:4326&amp;amp;crs=EPSG:4326&amp;amp;format=application/openlayers
</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>OGC:WMS-1.3.0-http-get-map
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>WMS link to layer.</gco:CharacterString>
</gmd:name>
<gmd:description>
<gco:CharacterString>WMS link to resource.</gco:CharacterString>
</gmd:description>
</gmd:CI_OnlineResource>
</gmd:onLine>
<gmd:onLine>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://geoserver-dev.d4science.org/geoserver/ows?service=wfs&amp;amp;version=1.0.0&amp;amp;request=GetFeature&amp;amp;typeName=TrueMarble.16km.2700x1350&amp;amp;format=json
</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>OGC:WFS-1.0.0-http-get-feature
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>WFS link to layer.</gco:CharacterString>
</gmd:name>
<gmd:description>
<gco:CharacterString>WFS link to resource.</gco:CharacterString>
</gmd:description>
</gmd:CI_OnlineResource>
</gmd:onLine>
<gmd:onLine>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>http://geoserver-dev.d4science.org/geoserver/wcs?service=wcs&amp;amp;version=1.0.0&amp;amp;request=GetCoverage&amp;amp;coverage=TrueMarble.16km.2700x1350&amp;amp;CRS=EPSG:4326&amp;amp;bbox=-180.0,-90.0,180.0,90.0&amp;amp;width=676&amp;amp;height=330&amp;amp;format=geotiff
</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>WCS link to layer.</gco:CharacterString>
</gmd:name>
<gmd:description>
<gco:CharacterString>WCS link to resource.</gco:CharacterString>
</gmd:description>
</gmd:CI_OnlineResource>
</gmd:onLine>
</gmd:MD_DigitalTransferOptions>
</gmd:transferOptions>
</gmd:MD_Distribution>
</gmd:distributionInfo>
<gmd:metadataConstraints>
<gmd:MD_LegalConstraints>
<gmd:useLimitation>
<gco:CharacterString>CC-BY-SA</gco:CharacterString>
</gmd:useLimitation>
<gmd:accessConstraints>
<gmd:MD_RestrictionCode codeListValue="license"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode">License</gmd:MD_RestrictionCode>
</gmd:accessConstraints>
<gmd:useConstraints>
<gmd:MD_RestrictionCode codeListValue="license"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode">License</gmd:MD_RestrictionCode>
</gmd:useConstraints>
<gmd:otherConstraints>
<gco:CharacterString>other restrictions</gco:CharacterString>
</gmd:otherConstraints>
</gmd:MD_LegalConstraints>
</gmd:metadataConstraints>
</gmd:MD_Metadata>

View File

@ -17,4 +17,7 @@
<Change>Multiple GN version handling by integrating geonetwork-manager 1.4-SNAPSHOT</Change>
<Change>Introduced 'Publish and promote' API</Change>
</Changeset>
<Changeset component="geonetwork.3-2-0" date="2016-11-01">
<Change>GeoNetwork 3.x compatibility</Change>
</Changeset>
</ReleaseNotes>

43959
log.txt

File diff suppressed because one or more lines are too long

23
pom.xml
View File

@ -8,7 +8,7 @@
</parent>
<groupId>org.gcube.spatial.data</groupId>
<artifactId>geonetwork</artifactId>
<version>3.1.0-SNAPSHOT</version>
<version>3.2.0-SNAPSHOT</version>
<name>geonetwork</name>
<properties>
@ -61,7 +61,7 @@
<groupId>org.gcube.resources</groupId>
<artifactId>common-gcore-resources</artifactId>
</dependency>
<dependency>
<groupId>org.gcube.portlets.user</groupId>
<artifactId>uri-resolver-manager</artifactId>
@ -104,6 +104,13 @@
<version>1.14.8</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.25-incubating</version>
</dependency>
<!-- JSON PARSER -->
<dependency>
<groupId>org.json</groupId>
@ -120,7 +127,7 @@
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
@ -171,6 +178,16 @@
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/xmlTemplates</directory>
<includes>
<include>*.xml</include>
</includes>
<targetPath>xml_templates</targetPath>
</resource>
<resource><directory>src/main/resources</directory></resource>
</resources>
</build>
<description>Java library used to communicate with GeoNetwork instances.</description>

View File

@ -1,64 +1,26 @@
package org.gcube.spatial.data.geonetwork.iso;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class BoundingBox {
public static final BoundingBox WORLD_EXTENT=new BoundingBox(90, -90, 180, -180);
public static final BoundingBox WORLD_EXTENT=new BoundingBox(90d, -90d, 180d, -180d);
private double N=90;
private double S=-90;
private double W=180;
private double E=-180;
private Double north=90d;
private Double south=-90d;
private Double west=180d;
private Double east=-180d;
public BoundingBox(double n, double s, double w, double e) {
super();
N = n;
S = s;
W = w;
E = e;
}
// public BoundingBox(double n, double s, double w, double e) {
// North = n;
// South = s;
// West = w;
// East = e;
// }
/**
* Assumed order is E, S, W, N
*
* @param bbox
*/
public BoundingBox(double[] bbox) {
// TODO Auto-generated constructor stub
}
public double getN() {
return N;
}
public void setN(double n) {
N = n;
}
public double getS() {
return S;
}
public void setS(double s) {
S = s;
}
public double getW() {
return W;
}
public void setW(double w) {
W = w;
}
public double getE() {
return E;
}
public void setE(double e) {
E = e;
}
/**
*
@ -66,7 +28,7 @@ public class BoundingBox {
*/
public double[] toArray(){
return new double[]{
E,S,W,N
east,south,west,north
};
}
@ -76,7 +38,7 @@ public class BoundingBox {
*/
@Override
public String toString() {
return E+","+S+","+W+","+N;
return east+","+south+","+west+","+north;
}

View File

@ -4,6 +4,7 @@ import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
@ -16,6 +17,7 @@ import org.gcube.portlets.user.uriresolvermanager.UriResolverManager;
import org.gcube.portlets.user.uriresolvermanager.exception.IllegalArgumentException;
import org.gcube.portlets.user.uriresolvermanager.exception.UriResolverMapException;
import org.gcube.spatial.data.geonetwork.utils.ScopeUtils;
import org.geotoolkit.metadata.iso.DefaultIdentifier;
import org.geotoolkit.metadata.iso.DefaultMetadata;
import org.geotoolkit.metadata.iso.citation.DefaultAddress;
import org.geotoolkit.metadata.iso.citation.DefaultCitation;
@ -46,69 +48,75 @@ import org.opengis.metadata.maintenance.ScopeCode;
public class ISOMetadataFactory {
public static Metadata generateMeta(GcubeISOMetadata params) throws URISyntaxException{
public static Metadata generateMeta(GcubeISOMetadata gcubeMeta) throws URISyntaxException{
String metadataIdentifier=UUID.randomUUID().toString();
//*************** Responsible Party : author
DefaultResponsibleParty author=new DefaultResponsibleParty();
author.setIndividualName(params.getUser());
author.setOrganisationName(new DefaultInternationalString(params.getConfig().getProjectName()));
author.setIndividualName(gcubeMeta.getUser());
author.setOrganisationName(new DefaultInternationalString(gcubeMeta.getConfig().getProjectName()));
author.setRole(Role.AUTHOR);
//*************** Responsible Party : provider -> iMarine
DefaultResponsibleParty distributor=new DefaultResponsibleParty();
distributor.setIndividualName(params.getConfig().getDistributorIndividualName());
distributor.setOrganisationName(new DefaultInternationalString(params.getConfig().getProjectName()));
distributor.setIndividualName(gcubeMeta.getConfig().getDistributorIndividualName());
distributor.setOrganisationName(new DefaultInternationalString(gcubeMeta.getConfig().getProjectName()));
distributor.setRole(Role.DISTRIBUTOR);
DefaultContact distributorContact=new DefaultContact();
DefaultAddress distributorAddress=new DefaultAddress();
distributorAddress.getElectronicMailAddresses().add(params.getConfig().getDistributorEMail());
distributorAddress.getElectronicMailAddresses().add(gcubeMeta.getConfig().getDistributorEMail());
distributorContact.setAddress(distributorAddress);
DefaultOnlineResource distributorOnline=new DefaultOnlineResource (new URI(params.getConfig().getDistributorSite()));
distributorOnline.setName(params.getConfig().getProjectName()+" site.");
distributorOnline.setProtocol(params.getConfig().getHttpProtocolDeclaration());
DefaultOnlineResource distributorOnline=new DefaultOnlineResource (new URI(gcubeMeta.getConfig().getDistributorSite()));
distributorOnline.setName(gcubeMeta.getConfig().getProjectName()+" site.");
distributorOnline.setProtocol(gcubeMeta.getConfig().getHttpProtocolDeclaration());
distributorContact.setOnlineResource(distributorOnline);
distributor.setContactInfo(distributorContact);
DefaultResponsibleParty provider=new DefaultResponsibleParty();
provider.setIndividualName(params.getConfig().getProviderIndividualName());
provider.setOrganisationName(new DefaultInternationalString(params.getConfig().getProjectName()));
provider.setIndividualName(gcubeMeta.getConfig().getProviderIndividualName());
provider.setOrganisationName(new DefaultInternationalString(gcubeMeta.getConfig().getProjectName()));
provider.setRole(Role.RESOURCE_PROVIDER);
DefaultContact providerContact=new DefaultContact();
DefaultAddress providerAddress=new DefaultAddress();
providerAddress.getElectronicMailAddresses().add(params.getConfig().getProviderEMail());
providerAddress.getElectronicMailAddresses().add(gcubeMeta.getConfig().getProviderEMail());
providerContact.setAddress(providerAddress);
DefaultOnlineResource providerOnline=new DefaultOnlineResource (new URI(params.getConfig().getProviderSite()));
providerOnline.setName(params.getConfig().getProjectName()+" site.");
providerOnline.setProtocol(params.getConfig().getHttpProtocolDeclaration());
DefaultOnlineResource providerOnline=new DefaultOnlineResource (new URI(gcubeMeta.getConfig().getProviderSite()));
providerOnline.setName(gcubeMeta.getConfig().getProjectName()+" site.");
providerOnline.setProtocol(gcubeMeta.getConfig().getHttpProtocolDeclaration());
providerContact.setOnlineResource(providerOnline);
provider.setContactInfo(providerContact);
//*************** Identification
DefaultDataIdentification ident=new DefaultDataIdentification();
ident.getLanguages().add(Locale.ENGLISH);
ident.getLanguages().add(Locale.ENGLISH);
DefaultCitation citation=new DefaultCitation();
citation.setTitle(new DefaultInternationalString(params.getTitle()));
citation.setTitle(new DefaultInternationalString(gcubeMeta.getTitle()));
citation.getDates().add(new DefaultCitationDate(params.getCreationDate(), DateType.CREATION));
citation.getDates().add(new DefaultCitationDate(gcubeMeta.getCreationDate(), DateType.CREATION));
citation.getPresentationForms().add(params.getPresentationForm());
citation.getPresentationForms().add(gcubeMeta.getPresentationForm());
citation.setIdentifiers(Collections.singleton(new DefaultIdentifier(metadataIdentifier)));
ident.setCitation(citation);
ident.setAbstract(new DefaultInternationalString(params.getAbstractField()));
ident.setPurpose(new DefaultInternationalString(params.getPurpose()));
ident.getCredits().addAll(params.getCredits());
ident.setAbstract(new DefaultInternationalString(gcubeMeta.getAbstractField()));
ident.setPurpose(new DefaultInternationalString(gcubeMeta.getPurpose()));
ident.getCredits().addAll(gcubeMeta.getCredits());
ident.getResourceMaintenances().add(new DefaultMaintenanceInformation(MaintenanceFrequency.AS_NEEDED));
for(Entry<Thesaurus,HashSet<String>> entry:params.getDescriptiveKeywords().entrySet()){
for(Entry<Thesaurus,HashSet<String>> entry:gcubeMeta.getDescriptiveKeywords().entrySet()){
DefaultKeywords keywords=new DefaultKeywords();
for(String key:entry.getValue())keywords.getKeywords().add(new DefaultInternationalString(key));
keywords.setType(entry.getKey().getType());
@ -133,23 +141,27 @@ public class ISOMetadataFactory {
ident.getTopicCategories().addAll(params.getTopicCategories());
ident.getTopicCategories().addAll(gcubeMeta.getTopicCategories());
ident.getExtents().add(params.getExtent());
ident.getExtents().add(gcubeMeta.getExtent());
//Spatial Rapresentation Info
DefaultGeometricObjects geoObjs=new DefaultGeometricObjects();
geoObjs.setGeometricObjectType(params.getGeometricObjectType());
geoObjs.setGeometricObjectCount(params.getGeometryCount());
geoObjs.setGeometricObjectType(gcubeMeta.getGeometricObjectType());
geoObjs.setGeometricObjectCount(gcubeMeta.getGeometryCount());
DefaultVectorSpatialRepresentation spatial=new DefaultVectorSpatialRepresentation();
spatial.setTopologyLevel(params.getTopologyLevel());
spatial.setTopologyLevel(gcubeMeta.getTopologyLevel());
spatial.getGeometricObjects().add(geoObjs);
DefaultResolution layerResolution=new DefaultResolution();
layerResolution.setDistance(params.getResolution());
layerResolution.setDistance(gcubeMeta.getResolution());
ident.getSpatialResolutions().add(layerResolution);
@ -160,16 +172,17 @@ public class ISOMetadataFactory {
for(String uri:params.getGraphicOverviewsURI()){
for(String uri:gcubeMeta.getGraphicOverviewsURI()){
DefaultBrowseGraphic graph=new DefaultBrowseGraphic(new URI(uri));
ident.getGraphicOverviews().add(graph);
}
//MetadataConstraints
DefaultLegalConstraints constraints=new DefaultLegalConstraints();
constraints.getUseLimitations().add(new DefaultInternationalString(params.getConfig().getLicense()));
constraints.getUseLimitations().add(new DefaultInternationalString(gcubeMeta.getConfig().getLicense()));
constraints.getAccessConstraints().add(Restriction.LICENSE);
constraints.getUseConstraints().add(Restriction.LICENSE);
constraints.getUseConstraints().add(Restriction.LICENSE);
constraints.getOtherConstraints().add(new DefaultInternationalString("other restrictions"));
@ -185,7 +198,8 @@ public class ISOMetadataFactory {
// meta.getDataQualityInfo().add(processQuality);
meta.setLanguage(Locale.ENGLISH);
meta.getHierarchyLevels().add(ScopeCode.DATASET);
meta.setFileIdentifier(UUID.randomUUID().toString());
meta.setFileIdentifier(metadataIdentifier);
return meta;
}
@ -218,9 +232,13 @@ public class ISOMetadataFactory {
public static DefaultDigitalTransferOptions getTransferOptionsByLayer(String layerName, String geoserverUrl, String style, String bbox, EnvironmentConfiguration config ) throws URISyntaxException{
DefaultDigitalTransferOptions transferOptions=new DefaultDigitalTransferOptions();
transferOptions.getOnLines().add(getOnline(Protocol.WMS.getName()+" link to layer.",config.getWmsProtocolDeclaration(),getWmsUrl(geoserverUrl, layerName, style, bbox, config.getDefaultCRS())));
transferOptions.getOnLines().add(getOnline(Protocol.WFS.getName()+" link to layer.",config.getWfsProtocolDeclaration(),getWfsUrl(geoserverUrl,layerName)));
transferOptions.getOnLines().add(getOnline(Protocol.WCS.getName()+" link to layer.",config.getWcsProtocolDeclaration(),getWcsUrl(geoserverUrl,layerName,bbox)));
// transferOptions.getOnLines().add(getOnline(Protocol.WMS.getName()+" link to layer.",config.getWmsProtocolDeclaration(),StringEscapeUtils.escapeXml10(getWmsUrl(geoserverUrl, layerName, style, bbox, config.getDefaultCRS()))));
// transferOptions.getOnLines().add(getOnline(Protocol.WFS.getName()+" link to layer.",config.getWfsProtocolDeclaration(),StringEscapeUtils.escapeXml10(getWfsUrl(geoserverUrl,layerName))));
// transferOptions.getOnLines().add(getOnline(Protocol.WCS.getName()+" link to layer.",config.getWcsProtocolDeclaration(),StringEscapeUtils.escapeXml10(getWcsUrl(geoserverUrl,layerName,bbox))));
return transferOptions;
}

View File

@ -0,0 +1,184 @@
package org.gcube.spatial.data.geonetwork.iso;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.Map.Entry;
import java.util.UUID;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import org.gcube.common.resources.gcore.utils.XPathHelper;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class ISOMetadataFactoryLight {
private static Transformer transformer =null;
private static DocumentBuilder docBuilder =null;
private static HashMap<String,String> namespaces=new HashMap<String,String>();
private static final String BASE_TEMPLATE="xmlTemplates/BaseTemplates";
private static final String resourceIdentifier="<identifier xmlns=\"http://www.isotc211.org/2005/gmd\" xmlns:gco=\"http://www.isotc211.org/2005/gco\"> <MD_Identifier>"
+ " <code><gco:CharacterString>%s</gco:CharacterString></code>"
+ " </MD_Identifier>"
+ "</identifier>";
private static final String fileIdentifier="<fileIdentifier xmlns=\"http://www.isotc211.org/2005/gmd\" xmlns:gco=\"http://www.isotc211.org/2005/gco\">"
+ " <gco:CharacterString>%s</gco:CharacterString> </fileIdentifier>";
static{
try{
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
docBuilder = factory.newDocumentBuilder();
TransformerFactory transformerFactory = TransformerFactory.newInstance();
transformer = transformerFactory.newTransformer();
namespaces.put("gmd", "http://www.isotc211.org/2005/gmd");
namespaces.put("gco", "http://www.isotc211.org/2005/gco");
namespaces.put("fra", "http://www.cnig.gouv.fr/2005/fra");
namespaces.put("xlink", "http://www.w3.org/1999/xlink");
namespaces.put("gml", "http://www.opengis.net/gml");
namespaces.put("xsi", "http://www.w3.org/2001/XMLSchema-instance");
namespaces.put("gmi", "http://www.isotc211.org/2005/gmi");
namespaces.put("gmx", "http://www.isotc211.org/2005/gmx");
}catch(Exception e){
throw new RuntimeException("Unable to init Fixer ",e);
}
}
public static String generateMetadata()throws Exception{
//Get document owner
Document document=null;
Element documentNode=null;
try{
documentNode = docBuilder.parse(BASE_TEMPLATE).getDocumentElement();
document=documentNode.getOwnerDocument();
// document = (Document)xpath.evaluate("/", inputSource, XPathConstants.NODE);
}catch(Exception e){
// throw e;
throw new RuntimeException("Unable to fix : unable to get Document",e);
}
//Set | get meta UUID
XPathHelper helper=getHelper(document);
String metaUUID=null;
// set File identifier and resource identifier
metaUUID=UUID.randomUUID().toString();
addContent("gmd:MD_Metadata",document,String.format(fileIdentifier, metaUUID),helper,Position.first_child);
addContent("//gmd:identificationInfo//gmd:edition",document,String.format(resourceIdentifier, metaUUID),helper,Position.sibling_after);
// set contact
// set Publication Date
//Add Keyword
addContent("//gmd:descriptiveKeywords",document,readFile("/home/fabio/workspaces/trunk_workspace/MetadataUseCases/XML_Pieces/keyword.xml"),helper,Position.sibling_before);
//Add AccessContraints
addContent("//gmd:resourceConstraints[last()]",document,readFile("/home/fabio/workspaces/trunk_workspace/MetadataUseCases/XML_Pieces/accessContraint.xml"),helper,Position.replace);
// //Add Distribution Info
// String layerName="geo_fea_"+new File(sourceFile).getName().toLowerCase();
// String gisLink=StringEscapeUtils.escapeXml10(getGisLinkByUUID(metaUUID));
// String distributionInfoContent=String.format(readFile("/home/fabio/workspaces/trunk_workspace/MetadataUseCases/XML_Pieces/distributionInfoTemplate.xml"), layerName,gisLink);
// addContent("//gmd:distributionInfo",document,distributionInfoContent,helper,Position.replace);
//Add Reference system
addContent("//gmd:spatialRepresentationInfo",document,readFile("/home/fabio/workspaces/trunk_workspace/MetadataUseCases/XML_Pieces/referenceSystem.xml"),helper,Position.sibling_after);
//Add Data Quality
addContent("//gmd:distributionInfo",document,readFile("/home/fabio/workspaces/trunk_workspace/MetadataUseCases/XML_Pieces/DataQuality.xml"),helper,Position.sibling_after);
return null;
}
private static XPathHelper getHelper(Node root){
XPathHelper toReturn =new XPathHelper(root);
for(Entry<String,String> entry:namespaces.entrySet())
toReturn.addNamespace(entry.getKey(), entry.getValue());
return toReturn;
}
private static String readFile(String path) throws IOException{
byte[] encoded = Files.readAllBytes(Paths.get(path));
return new String(encoded);
}
private static enum Position{
sibling_after,sibling_before,first_child,last_child,replace
}
public static void addContent(String path, Document doc, String toAddContent, XPathHelper documentHelper,Position position) throws SAXException, IOException{
NodeList nodelist=documentHelper.evaluateForNodes(path);
if(nodelist==null||nodelist.getLength()==0) throw new RuntimeException("Path "+path+" not found in document");
// if(nodelist.getLength()>1) throw new RuntimeException("Invalid Path "+path+"."+nodelist.getLength()+" entries found");
Node targetNode=nodelist.item(0);
Document online=docBuilder.parse(new ByteArrayInputStream(toAddContent.getBytes()));
Node toAdd=doc.importNode(online.getDocumentElement(), true);
switch(position){
case first_child: {
targetNode.insertBefore(toAdd, targetNode.getFirstChild());
break;
}
case last_child:{targetNode.appendChild(toAdd);
break;}
case replace : {
Node parent=targetNode.getParentNode();
parent.replaceChild(toAdd, targetNode);
break;
}
case sibling_after :{
Node currentlyNext=targetNode.getNextSibling();
Node parent=targetNode.getParentNode();
if(currentlyNext!=null)parent.insertBefore(toAdd, currentlyNext);
else parent.appendChild(toAdd);
break;
}
case sibling_before :{
Node parent=targetNode.getParentNode();
parent.insertBefore(toAdd, targetNode);
break;
}
}
}
}

View File

@ -0,0 +1,17 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.ToString;
@Data
@AllArgsConstructor
@ToString
public class Company {
private String name;
private String organization;
private String email;
private String site;
}

View File

@ -0,0 +1,25 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import java.util.Collection;
import org.gcube.spatial.data.geonetwork.iso.Protocol;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class DistributionInfo {
public static enum DistributionInfoType{
GeoServer,Thredds
}
private String type;
private Collection<Protocol> protocols;
private Collection<OnlineResource> onlines;
}

View File

@ -0,0 +1,81 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.Arrays;
import org.apache.commons.io.IOUtils;
import freemarker.core.ParseException;
import freemarker.template.Configuration;
import freemarker.template.MalformedTemplateNameException;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import freemarker.template.TemplateExceptionHandler;
import freemarker.template.TemplateNotFoundException;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class ISOMetadataByTemplate {
private static Configuration cfg;
static {
try{
// Create your Configuration instance, and specify if up to what FreeMarker
// version (here 2.3.25) do you want to apply the fixes that are not 100%
// backward-compatible. See the Configuration JavaDoc for details.
cfg = new Configuration(Configuration.VERSION_2_3_25);
// Specify the source where the template files come from. Here I set a
// plain directory for it, but non-file-system sources are possible too:
File localDir=new File("./");
System.out.println("Current folder info ");
System.out.println(localDir.getAbsolutePath());
System.out.println(Arrays.toString(localDir.list()));
cfg.setDirectoryForTemplateLoading(new File("src/xmlTemplates"));
// Set the preferred charset template files are stored in. UTF-8 is
// a good choice in most applications:
cfg.setDefaultEncoding("UTF-8");
// Sets how errors will appear.
// During web page *development* TemplateExceptionHandler.HTML_DEBUG_HANDLER is better.
cfg.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
// Don't log exceptions inside FreeMarker that it will thrown at you anyway:
cfg.setLogTemplateExceptions(false);
}catch(Exception e){
throw new RuntimeException(e);
}
}
public static final String createXML(MetadataDescriptor desc) throws TemplateNotFoundException, MalformedTemplateNameException, ParseException, IOException, TemplateException{
Writer out=null;
try{
Template temp = cfg.getTemplate("BaseTemplate.xml");
File output=File.createTempFile("ISO_", ".xml");
out=new OutputStreamWriter(new FileOutputStream(output));
temp.process(desc, out);
return output.getAbsolutePath();
}finally{
if(out!=null)
IOUtils.closeQuietly(out);
}
}
}

View File

@ -0,0 +1,19 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import java.util.Collection;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.ToString;
@Data
@AllArgsConstructor
@ToString
public class Keyword {
private Collection<String> values;
private Date creationDate;
private String type;
private String thesaurus;
}

View File

@ -0,0 +1,52 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import org.gcube.spatial.data.geonetwork.iso.BoundingBox;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@Data
@AllArgsConstructor
@ToString
@NoArgsConstructor
public class MetadataDescriptor {
private String UUIDIdentifier;
private Person author;
private Company distributor;
private Company provider;
private Date creationTime;
private Long geometricObjectCount;
private Date publicationTime;
private String title;
private String abstractField;
private String purpose;
private String credit;
private Collection<Keyword> keywords;
private DistributionInfo distributionInfo;
private BoundingBox boundingBox;
private Double spatialResolution;
private String topicCategory;
public void setGeoServerDistributionInfo(){
List<OnlineResource> resources=new ArrayList<OnlineResource>();
resources.add(new OnlineResource(protocol, uri, description, title))
}
}

View File

@ -0,0 +1,21 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import org.gcube.spatial.data.geonetwork.iso.Protocol;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class OnlineResource {
private Protocol protocol;
private String uri;
private String description;
private String title;
public OnlineResource(String uri,String description){
protocol=
}
}

View File

@ -0,0 +1,15 @@
package org.gcube.spatial.data.geonetwork.iso.tpl;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.ToString;
@Data
@AllArgsConstructor
@ToString
public class Person {
private String name;
private String organization;
}

View File

@ -2,27 +2,18 @@ package org.gcube.spatial.data.geonetwork.test;
import java.util.ArrayList;
import org.gcube.spatial.data.geonetwork.GeoNetwork;
import org.gcube.spatial.data.geonetwork.GeoNetworkAdministration;
import org.gcube.spatial.data.geonetwork.GeoNetworkReader;
import org.gcube.spatial.data.geonetwork.LoginLevel;
import org.gcube.spatial.data.geonetwork.configuration.Configuration;
import org.gcube.spatial.data.geonetwork.configuration.DefaultConfiguration;
import org.gcube.spatial.data.geonetwork.configuration.LocalResourceConfiguration;
import org.gcube.spatial.data.geonetwork.configuration.LocalResourceConfiguration.ResourceConfiguration;
import org.gcube.spatial.data.geonetwork.model.Account;
import org.gcube.spatial.data.geonetwork.model.Account.Type;
import org.gcube.spatial.data.geonetwork.model.faults.AuthorizationException;
import org.gcube.spatial.data.geonetwork.model.faults.EncryptionException;
import org.gcube.spatial.data.geonetwork.model.faults.MissingConfigurationException;
import org.gcube.spatial.data.geonetwork.model.faults.MissingServiceEndpointException;
import org.gcube.spatial.data.geonetwork.utils.ScopeUtils;
import org.junit.Test;
import it.geosolutions.geonetwork.exception.GNLibException;
import it.geosolutions.geonetwork.exception.GNServerException;
import it.geosolutions.geonetwork.util.GNSearchRequest;
import lombok.Synchronized;
public class ScopeTests {
@ -43,6 +34,8 @@ public class ScopeTests {
scopes.add("/gcube/preprod");
scopes.add("/gcube/preprod/preVRE");
// scopes.add("/d4science.research-infrastructures.eu/gCubeApps/SIASPA");
// scopes.add("/d4science.research-infrastructures.eu/gCubeApps/InfraScience");
// scopes.add("/d4science.research-infrastructures.eu/gCubeApps/ICES_TCRE");
// scopes.add("/d4science.research-infrastructures.eu/gCubeApps/TabularDataLab");
@ -93,27 +86,7 @@ public class ScopeTests {
}
static Configuration toUseConfiguration=null;
@Synchronized
public GeoNetworkAdministration getClient() throws MissingConfigurationException, EncryptionException, MissingServiceEndpointException, GNLibException, GNServerException, AuthorizationException{
if(toUseConfiguration==null){
ResourceConfiguration resConfig=new ResourceConfiguration();
resConfig.setAdminPassword("admin");
resConfig.setVersion((short)3);
resConfig.setMinor((short)2);
resConfig.setRevision((short)1);
resConfig.setBuild((short)5);
resConfig.setHost("node3-d-d4s.d4science.org");
resConfig.setEndpoint("http://node3-d-d4s.d4science.org/geonetwork");
toUseConfiguration=new LocalResourceConfiguration(resConfig);
// toUseConfiguration=new DefaultConfiguration();
}
return GeoNetwork.get(toUseConfiguration);
}
@Test
@ -132,21 +105,21 @@ public class ScopeTests {
for(String scope:scopes){
System.out.println("SCOPE : "+scope);
TokenSetter.set(scope);
Configuration config=getClient().getConfiguration();
Configuration config=TestConfiguration.getClient().getConfiguration();
System.out.println(config.getScopeConfiguration());
Account account=config.getScopeConfiguration().getAccounts().get(Type.CKAN);
System.out.println("CKAN : "+account.getUser()+" "+account.getPassword());;
}
Configuration config=getClient().getConfiguration();
Configuration config=TestConfiguration.getClient().getConfiguration();
System.out.println(config.getAdminAccount().getUser()+" "+config.getAdminAccount().getPassword());
}
@Test
public void testGNUsersAndGroups() throws Exception{
TokenSetter.set(scopes.get(0));
GeoNetworkAdministration admin=getClient();
GeoNetworkAdministration admin=TestConfiguration.getClient();
admin.login(LoginLevel.ADMIN);
System.out.println(admin.getGroups());
System.out.println(admin.getUsers());
@ -156,7 +129,7 @@ public class ScopeTests {
public void getCount() throws Exception{
for(String scope:scopes){
TokenSetter.set(scope);
GeoNetworkReader reader=getClient();
GeoNetworkReader reader=TestConfiguration.getClient();
final GNSearchRequest req=new GNSearchRequest();
req.addParam(GNSearchRequest.Param.any,"");
int publicCount=reader.query(req).getCount();

View File

@ -0,0 +1,41 @@
package org.gcube.spatial.data.geonetwork.test;
import org.gcube.spatial.data.geonetwork.GeoNetwork;
import org.gcube.spatial.data.geonetwork.GeoNetworkAdministration;
import org.gcube.spatial.data.geonetwork.configuration.Configuration;
import org.gcube.spatial.data.geonetwork.configuration.LocalResourceConfiguration;
import org.gcube.spatial.data.geonetwork.configuration.LocalResourceConfiguration.ResourceConfiguration;
import org.gcube.spatial.data.geonetwork.model.faults.AuthorizationException;
import org.gcube.spatial.data.geonetwork.model.faults.EncryptionException;
import org.gcube.spatial.data.geonetwork.model.faults.MissingConfigurationException;
import org.gcube.spatial.data.geonetwork.model.faults.MissingServiceEndpointException;
import it.geosolutions.geonetwork.exception.GNLibException;
import it.geosolutions.geonetwork.exception.GNServerException;
import lombok.Synchronized;
public class TestConfiguration {
private static Configuration toUseConfiguration=null;
@Synchronized
public static GeoNetworkAdministration getClient() throws MissingConfigurationException, EncryptionException, MissingServiceEndpointException, GNLibException, GNServerException, AuthorizationException{
if(toUseConfiguration==null){
ResourceConfiguration resConfig=new ResourceConfiguration();
resConfig.setAdminPassword("admin");
resConfig.setVersion((short)3);
resConfig.setMinor((short)2);
resConfig.setRevision((short)1);
resConfig.setBuild((short)5);
resConfig.setHost("node3-d-d4s.d4science.org");
resConfig.setEndpoint("http://node3-d-d4s.d4science.org/geonetwork");
toUseConfiguration=new LocalResourceConfiguration(resConfig);
// toUseConfiguration=new DefaultConfiguration();
}
return GeoNetwork.get(toUseConfiguration);
}
}

View File

@ -1,24 +1,23 @@
package org.gcube.spatial.data.geonetwork.test;
import java.io.File;
import java.util.Date;
import java.util.Arrays;
import java.util.Collections;
import java.util.GregorianCalendar;
import java.util.UUID;
import org.gcube.spatial.data.geonetwork.GeoNetwork;
import org.gcube.spatial.data.geonetwork.GeoNetworkPublisher;
import org.gcube.spatial.data.geonetwork.LoginLevel;
import org.gcube.spatial.data.geonetwork.iso.GcubeISOMetadata;
import org.gcube.spatial.data.geonetwork.iso.BoundingBox;
import org.gcube.spatial.data.geonetwork.iso.ISOMetadataFactory;
import org.gcube.spatial.data.geonetwork.iso.Thesaurus;
import org.gcube.spatial.data.geonetwork.iso.tpl.Company;
import org.gcube.spatial.data.geonetwork.iso.tpl.DistributionInfo;
import org.gcube.spatial.data.geonetwork.iso.tpl.ISOMetadataByTemplate;
import org.gcube.spatial.data.geonetwork.iso.tpl.Keyword;
import org.gcube.spatial.data.geonetwork.iso.tpl.MetadataDescriptor;
import org.gcube.spatial.data.geonetwork.iso.tpl.Person;
import org.gcube.spatial.data.geonetwork.utils.ScopeUtils;
import org.geotoolkit.metadata.iso.DefaultMetadata;
import org.geotoolkit.metadata.iso.extent.DefaultExtent;
import org.geotoolkit.xml.XML;
import org.opengis.metadata.Metadata;
import org.opengis.metadata.citation.PresentationForm;
import org.opengis.metadata.identification.TopicCategory;
import org.opengis.metadata.spatial.GeometricObjectType;
import it.geosolutions.geonetwork.util.GNInsertConfiguration;
public class TrueMarbleMeta {
@ -27,31 +26,62 @@ public class TrueMarbleMeta {
* @throws Exception
*/
public static void main(String[] args) throws Exception {
TokenSetter.set("/gcube/devNext/NextNext");
TokenSetter.set("/gcube/devsec");
// TokenSetter.set("/d4science.research-infrastructures.eu");
GcubeISOMetadata gMeta=new GcubeISOMetadata();
gMeta.setAbstractField("This layer is used as a base layer for GIS VIewer widget");
gMeta.setCreationDate(new Date(System.currentTimeMillis()));
gMeta.setExtent((DefaultExtent) DefaultExtent.WORLD);
gMeta.setGeometricObjectType(GeometricObjectType.SURFACE);
gMeta.setPresentationForm(PresentationForm.IMAGE_DIGITAL);
gMeta.setPurpose(gMeta.getAbstractField());
gMeta.setTitle("TrueMarble_"+ScopeUtils.getCurrentScope()+"_test");
gMeta.setUser("fabio.sinibaldi");
Thesaurus general=gMeta.getConfig().getThesauri().get("General");
gMeta.addKeyword("True Marble", general);
gMeta.addTopicCategory(TopicCategory.ENVIRONMENT);
Metadata meta=gMeta.getMetadata();
((DefaultMetadata)meta).setDistributionInfo(ISOMetadataFactory.getDistributionByLayer("TrueMarble.16km.2700x1350", "http://geoserver-dev.d4science.org/geoserver", "raster", "-180.0,-90.0,180.0,90.0", gMeta.getConfig()));
XML.marshal(meta, new File("TrueMarble.xml"));
// GcubeISOMetadata gMeta=new GcubeISOMetadata();
// gMeta.setAbstractField("This layer is used as a base layer for GIS VIewer widget");
// gMeta.setCreationDate(new Date(System.currentTimeMillis()));
// gMeta.setExtent((DefaultExtent) DefaultExtent.WORLD);
// gMeta.setGeometricObjectType(GeometricObjectType.SURFACE);
// gMeta.setPresentationForm(PresentationForm.IMAGE_DIGITAL);
// gMeta.setPurpose(gMeta.getAbstractField());
// gMeta.setTitle("TrueMarble_"+ScopeUtils.getCurrentScope()+"_test");
// gMeta.setUser("fabio.sinibaldi");
// Thesaurus general=gMeta.getConfig().getThesauri().get("General");
// gMeta.addKeyword("True Marble", general);
// gMeta.addTopicCategory(TopicCategory.ENVIRONMENT);
GeoNetworkPublisher publisher=GeoNetwork.get();
publisher.login(LoginLevel.PRIVATE);
GNInsertConfiguration config=publisher.getCurrentUserConfiguration("dataset", "_none_");
Long id=publisher.insertAndPromoteMetadata(config,meta);
System.out.println("Inserted meta with id : "+id);
MetadataDescriptor desc=new MetadataDescriptor();
desc.setAbstractField("My Abstract Field");
desc.setAuthor(new Person("Idiota","Idiocracy"));
desc.setCredit("Fatto io");
desc.setDistributor(new Company(ScopeUtils.getCurrentScope(), "D4Nothing", "ti.piacerebbe@ciao.ne", "lemonparty.com"));
desc.setCreationTime(new GregorianCalendar().getTime());
desc.setGeometricObjectCount(1000l);
desc.setKeywords(Collections.singleton(new Keyword(Arrays.asList(new String[]{"bla, blabla", "eh beh"}),desc.getCreationTime(),"Theme","GENERAL")));
desc.setProvider(desc.getDistributor());
desc.setPublicationTime(desc.getCreationTime());
desc.setPurpose("Just for fun");
desc.setTitle("Il mio bel titolone");
desc.setUUIDIdentifier(UUID.randomUUID().toString());
desc.setBoundingBox(BoundingBox.WORLD_EXTENT);
desc.setDistributionInfo(new DistributionInfo("GeoServer"));
System.out.println(desc.getBoundingBox());
System.out.println(ISOMetadataByTemplate.createXML(desc));
// Metadata meta=gMeta.getMetadata();
//
// ((DefaultMetadata)meta).setDistributionInfo(ISOMetadataFactory.getDistributionByLayer("TrueMarble.16km.2700x1350", "http://geoserver-dev.d4science.org/geoserver", "raster", "-180.0,-90.0,180.0,90.0", gMeta.getConfig()));
// XML.marshal(meta, new File("TrueMarble.xml"));
// GeoNetworkPublisher publisher=TestConfiguration.getClient();
// publisher.login(LoginLevel.SCOPE);
// GNInsertConfiguration config=publisher.getCurrentUserConfiguration("dataset", "_none_");
//
// //Long id=publisher.insertMetadata(config,new File("/tmp/GEO_1069334659927122420.xml"));
// Long id=publisher.insertMetadata(config,meta);
// System.out.println("Inserted meta with id : "+id);
}

View File

@ -0,0 +1,313 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<gmd:MD_Metadata xmlns:gco="http://www.isotc211.org/2005/gco"
xmlns:fra="http://www.cnig.gouv.fr/2005/fra" xmlns:gmx="http://www.isotc211.org/2005/gmx"
xmlns:gmi="http://www.isotc211.org/2005/gmi" xmlns:gmd="http://www.isotc211.org/2005/gmd"
xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink">
<gmd:fileIdentifier>
<gco:CharacterString>${UUIDIdentifier}</gco:CharacterString>
</gmd:fileIdentifier>
<gmd:language>
<gmd:LanguageCode codeListValue="eng"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/ML_gmxCodelists.xml#LanguageCode">English</gmd:LanguageCode>
</gmd:language>
<gmd:characterSet>
<gmd:MD_CharacterSetCode codeListValue="utf8"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_CharacterSetCode">UTF-8</gmd:MD_CharacterSetCode>
</gmd:characterSet>
<gmd:hierarchyLevel>
<gmd:MD_ScopeCode codeSpace="eng" codeListValue="dataset"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_ScopeCode">Dataset</gmd:MD_ScopeCode>
</gmd:hierarchyLevel>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>${author.name}</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>${author.organization}</gco:CharacterString>
</gmd:organisationName>
<gmd:role>
<gmd:CI_RoleCode codeListValue="author"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Author</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>${distributor.name}</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>${distributor.organization}
</gco:CharacterString>
</gmd:organisationName>
<gmd:contactInfo>
<gmd:CI_Contact>
<gmd:address>
<gmd:CI_Address>
<gmd:electronicMailAddress>
<gco:CharacterString>${distributor.email}</gco:CharacterString>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
<gmd:onlineResource>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>${distributor.site}</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>${distributor.organization} site.
</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
<gmd:role>
<gmd:CI_RoleCode codeListValue="distributor"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Distributor</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:contact>
<gmd:CI_ResponsibleParty>
<gmd:individualName>
<gco:CharacterString>${provider.name}
</gco:CharacterString>
</gmd:individualName>
<gmd:organisationName>
<gco:CharacterString>${provider.organization}</gco:CharacterString>
</gmd:organisationName>
<gmd:contactInfo>
<gmd:CI_Contact>
<gmd:address>
<gmd:CI_Address>
<gmd:electronicMailAddress>
<gco:CharacterString>${provider.email}</gco:CharacterString>
</gmd:electronicMailAddress>
</gmd:CI_Address>
</gmd:address>
<gmd:onlineResource>
<gmd:CI_OnlineResource>
<gmd:linkage>
<gmd:URL>${provider.site}</gmd:URL>
</gmd:linkage>
<gmd:protocol>
<gco:CharacterString>WWW:LINK-1.0-http--link
</gco:CharacterString>
</gmd:protocol>
<gmd:name>
<gco:CharacterString>${provider.organization} site.
</gco:CharacterString>
</gmd:name>
</gmd:CI_OnlineResource>
</gmd:onlineResource>
</gmd:CI_Contact>
</gmd:contactInfo>
<gmd:role>
<gmd:CI_RoleCode codeListValue="resourceProvider"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode">Resource provider</gmd:CI_RoleCode>
</gmd:role>
</gmd:CI_ResponsibleParty>
</gmd:contact>
<gmd:dateStamp>
<gco:DateTime>${publicationTime?datetime}</gco:DateTime>
</gmd:dateStamp>
<gmd:spatialRepresentationInfo>
<gmd:MD_VectorSpatialRepresentation>
<gmd:topologyLevel>
<gmd:MD_TopologyLevelCode codeListValue="geometryOnly"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_TopologyLevelCode">Geometry only</gmd:MD_TopologyLevelCode>
</gmd:topologyLevel>
<gmd:geometricObjects>
<gmd:MD_GeometricObjects>
<gmd:geometricObjectType>
<gmd:MD_GeometricObjectTypeCode
codeListValue="surface"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_GeometricObjectTypeCode">Surface</gmd:MD_GeometricObjectTypeCode>
</gmd:geometricObjectType>
<gmd:geometricObjectCount>
<gco:Integer>${geometricObjectCount}</gco:Integer>
</gmd:geometricObjectCount>
</gmd:MD_GeometricObjects>
</gmd:geometricObjects>
</gmd:MD_VectorSpatialRepresentation>
</gmd:spatialRepresentationInfo>
<gmd:referenceSystemInfo>
<gmd:MD_ReferenceSystem>
<gmd:referenceSystemIdentifier>
<gmd:RS_Identifier>
<gmd:code>
<gco:CharacterString>http://www.opengis.net/def/crs/EPSG/0/4326
</gco:CharacterString>
</gmd:code>
</gmd:RS_Identifier>
</gmd:referenceSystemIdentifier>
</gmd:MD_ReferenceSystem>
</gmd:referenceSystemInfo>
<gmd:identificationInfo>
<gmd:MD_DataIdentification>
<gmd:citation>
<gmd:CI_Citation>
<gmd:title>
<gco:CharacterString>${title}</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
<gmd:date>
<gco:DateTime>${creationTime?datetime}</gco:DateTime>
</gmd:date>
<gmd:dateType>
<gmd:CI_DateTypeCode codeSpace="eng"
codeListValue="creation"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode">Creation</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
<gmd:identifier>
<gmd:MD_Identifier>
<gmd:code>
<gco:CharacterString>${UUIDIdentifier}</gco:CharacterString>
</gmd:code>
</gmd:MD_Identifier>
</gmd:identifier>
<gmd:presentationForm>
<gmd:CI_PresentationFormCode
codeListValue="imageDigital"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_PresentationFormCode">Image digital</gmd:CI_PresentationFormCode>
</gmd:presentationForm>
</gmd:CI_Citation>
</gmd:citation>
<gmd:abstract>
<gco:CharacterString>${abstractField}</gco:CharacterString>
</gmd:abstract>
<gmd:purpose>
<gco:CharacterString>${purpose}</gco:CharacterString>
</gmd:purpose>
<gmd:credit>
<gco:CharacterString>${credit}</gco:CharacterString>
</gmd:credit>
<gmd:resourceMaintenance>
<gmd:MD_MaintenanceInformation>
<gmd:maintenanceAndUpdateFrequency>
<gmd:MD_MaintenanceFrequencyCode
codeListValue="asNeeded"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode">As needed</gmd:MD_MaintenanceFrequencyCode>
</gmd:maintenanceAndUpdateFrequency>
</gmd:MD_MaintenanceInformation>
</gmd:resourceMaintenance>
<gmd:descriptiveKeywords>
<#list keywords as keyword>
<gmd:MD_Keywords>
<#list keyword.values as value>
<gmd:keyword>
<gco:CharacterString>${value}</gco:CharacterString>
</gmd:keyword>
</#list>
<gmd:type>
<gmd:MD_KeywordTypeCode codeListValue="theme"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_KeywordTypeCode">${keyword.type}</gmd:MD_KeywordTypeCode>
</gmd:type>
<gmd:thesaurusName>
<gmd:CI_Citation>
<gmd:title>
<gco:CharacterString>${keyword.thesaurus}</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
<gmd:date>
<gco:DateTime>${keyword.creationDate?datetime}</gco:DateTime>
</gmd:date>
<gmd:dateType>
<gmd:CI_DateTypeCode codeSpace="eng"
codeListValue="creation"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode">Creation</gmd:CI_DateTypeCode>
</gmd:dateType>
</gmd:CI_Date>
</gmd:date>
</gmd:CI_Citation>
</gmd:thesaurusName>
</gmd:MD_Keywords>
</#list>
</gmd:descriptiveKeywords>
<gmd:spatialResolution>
<gmd:MD_Resolution>
<gmd:distance>
<gco:Distance
uom="http://schemas.opengis.net/iso/19139/20070417/resources/uom/gmxUom.xml#xpointer(//*[@gml:id='m'])">${spatialResolution}</gco:Distance>
</gmd:distance>
</gmd:MD_Resolution>
</gmd:spatialResolution>
<gmd:language>
<gmd:LanguageCode codeListValue="eng"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/ML_gmxCodelists.xml#LanguageCode">English</gmd:LanguageCode>
</gmd:language>
<gmd:topicCategory>
<gmd:MD_TopicCategoryCode>${topicCategory}</gmd:MD_TopicCategoryCode>
</gmd:topicCategory>
<gmd:extent>
<gmd:EX_Extent>
<gmd:geographicElement>
<gmd:EX_GeographicBoundingBox>
<gmd:extentTypeCode>
<gco:Boolean>true</gco:Boolean>
</gmd:extentTypeCode>
<gmd:westBoundLongitude>
<gco:Decimal>${boundingBox.west}</gco:Decimal>
</gmd:westBoundLongitude>
<gmd:eastBoundLongitude>
<gco:Decimal>${boundingBox.east}</gco:Decimal>
</gmd:eastBoundLongitude>
<gmd:southBoundLatitude>
<gco:Decimal>${boundingBox.south}</gco:Decimal>
</gmd:southBoundLatitude>
<gmd:northBoundLatitude>
<gco:Decimal>${boundingBox.north}</gco:Decimal>
</gmd:northBoundLatitude>
</gmd:EX_GeographicBoundingBox>
</gmd:geographicElement>
</gmd:EX_Extent>
</gmd:extent>
</gmd:MD_DataIdentification>
</gmd:identificationInfo>
<#if distributionInfo.type == "GeoServer">
<#include "/GS_DistributionInfo.xml">
<#else>
<#include "/TH_DistributionInfo.xml">
</#if>
<gmd:metadataConstraints>
<gmd:MD_LegalConstraints>
<gmd:useLimitation>
<gco:CharacterString>CC-BY-SA</gco:CharacterString>
</gmd:useLimitation>
<gmd:accessConstraints>
<gmd:MD_RestrictionCode codeListValue="license"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode">License</gmd:MD_RestrictionCode>
</gmd:accessConstraints>
<gmd:useConstraints>
<gmd:MD_RestrictionCode codeListValue="license"
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode">License</gmd:MD_RestrictionCode>
</gmd:useConstraints>
<gmd:otherConstraints>
<gco:CharacterString>other restrictions</gco:CharacterString>
</gmd:otherConstraints>
</gmd:MD_LegalConstraints>
</gmd:metadataConstraints>
</gmd:MD_Metadata>

View File

@ -0,0 +1,24 @@
<contact>
<CI_ResponsibleParty>
<individualName>
<gco:CharacterString>Miles Macmillan-Lawler</gco:CharacterString>
</individualName>
<organisationName>
<gco:CharacterString>GRID-Arendal</gco:CharacterString>
</organisationName>
<contactInfo>
<CI_Contact>
<address>
<CI_Address>
<electronicMailAddress>
<gco:CharacterString>Miles.Macmillan-Lawler@grida.no</gco:CharacterString>
</electronicMailAddress>
</CI_Address>
</address>
</CI_Contact>
</contactInfo>
<role>
<CI_RoleCode codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_RoleCode" codeListValue="custodian" codeSpace="ISOTC211/19115">custodian</CI_RoleCode>
</role>
</CI_ResponsibleParty>
</contact>

View File

@ -0,0 +1 @@
<suca>Ciao cipollino</suca>

View File

@ -0,0 +1,301 @@
<identificationInfo>
<MD_DataIdentification>
<citation>
<CI_Citation>
<title>
<gco:CharacterString>Trough geomorphic feature layer</gco:CharacterString>
</title>
<date>
<CI_Date>
<date>
<gco:Date>2013-06-05</gco:Date>
</date>
<dateType>
<CI_DateTypeCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
codeListValue="creation" codeSpace="ISOTC211/19115">creation</CI_DateTypeCode>
</dateType>
</CI_Date>
</date>
<date>
<CI_Date>
<date>
<gco:Date>2014-02-14</gco:Date>
</date>
<dateType>
<CI_DateTypeCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_DateTypeCode"
codeListValue="publication" codeSpace="ISOTC211/19115">publication
</CI_DateTypeCode>
</dateType>
</CI_Date>
</date>
<edition>
<gco:CharacterString>Version 1</gco:CharacterString>
</edition>
<identifier>
<MD_Identifier>
<code>
<gco:CharacterString>0d40e056-b491-4459-a691-1bb4924ef521</gco:CharacterString>
</code>
</MD_Identifier>
</identifier>
<citedResponsibleParty>
<CI_ResponsibleParty>
<individualName>
<gco:CharacterString>Miles Macmillan-Lawler
</gco:CharacterString>
</individualName>
<organisationName>
<gco:CharacterString>GRID-Arendal</gco:CharacterString>
</organisationName>
<contactInfo>
<CI_Contact>
<address>
<CI_Address>
<electronicMailAddress>
<gco:CharacterString>Miles.Macmillan-Lawler@grida.no
</gco:CharacterString>
</electronicMailAddress>
</CI_Address>
</address>
</CI_Contact>
</contactInfo>
<role>
<CI_RoleCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_RoleCode"
codeListValue="custodian" codeSpace="ISOTC211/19115">custodian</CI_RoleCode>
</role>
</CI_ResponsibleParty>
</citedResponsibleParty>
<presentationForm>
<CI_PresentationFormCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_PresentationFormCode"
codeListValue="mapDigital" codeSpace="ISOTC211/19115">mapDigital
</CI_PresentationFormCode>
</presentationForm>
</CI_Citation>
</citation>
<abstract>
<gco:CharacterString>The trough geomorphic feature layer represents
the spatial extent of the troughs of the worlds oceans based on
interpretation of the SRTM30 plus v7 global bathymetry model. The
layer is one of the 25 layers that make up the global seafloor
geomorphic features map (Harris et.al. 2014). The IHO (IHO, 2008)
definition of a trough is “a long depression of the sea floor
characteristically flat bottomed and steep sided and normally
shallower than a trench”. In this study we found that troughs are
also commonly open at one end (i.e. not defined by closed
bathymetric contours) and their broad, flat floors may exhibit a
continuous gradient along a thalweg. Troughs may originate from
glacial erosion processes or have formed through tectonic
processes. In this study, glacial troughs incised into the shelf
are a separate category; here we include all troughs not of a
glacial origin, typically superimposed on the slope and/or abyssal
base layers. Trenches that have been infilled with sediment may
evolve into troughs, as appears to have occurred in troughs
adjacent to North and South America, for example. Slumping on the
sides of some troughs has formed a bridge across the trough,
thereby dividing it into two separate sections (see “bridges”
below). In this study all troughs were digitised by hand based on
the interpretation of 100 m bathymetric contours.
</gco:CharacterString>
</abstract>
<purpose>
<gco:CharacterString>The trough geomorphic feature layer represents
the spatial extent of the troughs of the worlds oceans based on
interpretation of the SRTM30 plus v7 global bathymetry model. The
layer is one of the 25 layers that make up the global seafloor
geomorphic features map (Harris et.al. 2014). The global seafloor
geomorphic features map is intended to support ocean management
including feature inventories, spatial planning and biodiversity
conservation.</gco:CharacterString>
</purpose>
<credit>
<gco:CharacterString>The global seafloor geomorphic features map has
been produced through a collaboration between Geoscience Australia,
GRID-Arendal and Conservation International.
Reference: Harris et. al. (2014) Geomorphology of the oceans.Marine Geology
(in Press)
</gco:CharacterString>
</credit>
<pointOfContact>
<CI_ResponsibleParty>
<individualName>
<gco:CharacterString>Miles Macmillan-Lawler</gco:CharacterString>
</individualName>
<organisationName>
<gco:CharacterString>GRID-Arendal</gco:CharacterString>
</organisationName>
<contactInfo>
<CI_Contact>
<address>
<CI_Address>
<electronicMailAddress>
<gco:CharacterString>Miles.Macmillan-Lawler@grida.no
</gco:CharacterString>
</electronicMailAddress>
</CI_Address>
</address>
</CI_Contact>
</contactInfo>
<role>
<CI_RoleCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#CI_RoleCode"
codeListValue="custodian" codeSpace="ISOTC211/19115">custodian</CI_RoleCode>
</role>
</CI_ResponsibleParty>
</pointOfContact>
<resourceMaintenance>
<MD_MaintenanceInformation>
<maintenanceAndUpdateFrequency>
<MD_MaintenanceFrequencyCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode"
codeListValue="irregular" codeSpace="ISOTC211/19115">irregular
</MD_MaintenanceFrequencyCode>
</maintenanceAndUpdateFrequency>
</MD_MaintenanceInformation>
</resourceMaintenance>
<descriptiveKeywords>
<MD_Keywords>
<keyword>
<gco:CharacterString>Geology</gco:CharacterString>
</keyword>
<type>
<MD_KeywordTypeCode
codeList="http://www.isotc211.org/2005/resources/codeList.xml#MD_KeywordTypeCode"
codeListValue="theme" codeSpace="eng" />
</type>
<thesaurusName>
<CI_Citation>
<title>
<gco:CharacterString>GEMET - INSPIRE themes, version 1.0
</gco:CharacterString>
</title>
<date>
<CI_Date>
<date>
<gco:Date>2008-06-01</gco:Date>
</date>
<dateType>
<CI_DateTypeCode
codeList="http://www.isotc211.org/2005/resources/codeList.xml#CI_DateTypeCode"
codeListValue="publication" codeSpace="eng" />
</dateType>
</CI_Date>
</date>
</CI_Citation>
</thesaurusName>
</MD_Keywords>
</descriptiveKeywords>
<descriptiveKeywords>
<MD_Keywords>
<keyword>
<gco:CharacterString>global</gco:CharacterString>
</keyword>
<type>
<MD_KeywordTypeCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_KeywordTypeCode"
codeListValue="place" codeSpace="ISOTC211/19115">place</MD_KeywordTypeCode>
</type>
</MD_Keywords>
</descriptiveKeywords>
<descriptiveKeywords>
<MD_Keywords>
<keyword>
<gco:CharacterString>seafloor, geomorphic features, habitats
</gco:CharacterString>
</keyword>
<type>
<MD_KeywordTypeCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_KeywordTypeCode"
codeListValue="theme" codeSpace="ISOTC211/19115">theme</MD_KeywordTypeCode>
</type>
</MD_Keywords>
</descriptiveKeywords>
<descriptiveKeywords>
<MD_Keywords>
<keyword>
<gco:CharacterString>Downloadable Data</gco:CharacterString>
</keyword>
<thesaurusName uuidref="723f6998-058e-11dc-8314-0800200c9a66" />
</MD_Keywords>
</descriptiveKeywords>
<resourceConstraints>
<MD_Constraints>
<useLimitation>
<gco:CharacterString>The global seafloor geomorphic feature map is
available for download from bluehabitats.org
</gco:CharacterString>
</useLimitation>
</MD_Constraints>
</resourceConstraints>
<resourceConstraints>
<MD_LegalConstraints>
<accessConstraints>
<MD_RestrictionCode
codeList="http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_19139_Schemas/resources/Codelist/gmxCodelists.xml#MD_RestrictionCode"
codeListValue="otherRestrictions">
otherRestrictions
</MD_RestrictionCode>
</accessConstraints>
<otherConstraints>
<gco:CharacterString>no limitations</gco:CharacterString>
</otherConstraints>
</MD_LegalConstraints>
</resourceConstraints>
<spatialRepresentationType>
<MD_SpatialRepresentationTypeCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_SpatialRepresentationTypeCode"
codeListValue="vector" codeSpace="ISOTC211/19115">vector
</MD_SpatialRepresentationTypeCode>
</spatialRepresentationType>
<language>
<LanguageCode
codeList="http://www.loc.gov/standards/iso639-2/php/code_list.php"
codeListValue="eng" codeSpace="ISO639-2">eng</LanguageCode>
</language>
<characterSet>
<MD_CharacterSetCode
codeList="http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_CharacterSetCode"
codeListValue="utf8" codeSpace="ISOTC211/19115">utf8</MD_CharacterSetCode>
</characterSet>
<topicCategory>
<MD_TopicCategoryCode>oceans</MD_TopicCategoryCode>
</topicCategory>
<environmentDescription>
<gco:CharacterString>Microsoft Windows 7 Version 6.1 (Build 7601)
Service Pack 1; ESRI ArcGIS 10.0.4.4000</gco:CharacterString>
</environmentDescription>
<extent>
<EX_Extent>
<description>
<gco:CharacterString>Global Coverage</gco:CharacterString>
</description>
</EX_Extent>
</extent>
<extent>
<EX_Extent>
<geographicElement>
<EX_GeographicBoundingBox>
<extentTypeCode>
<gco:Boolean>true</gco:Boolean>
</extentTypeCode>
<westBoundLongitude>
<gco:Decimal>-180</gco:Decimal>
</westBoundLongitude>
<eastBoundLongitude>
<gco:Decimal>180</gco:Decimal>
</eastBoundLongitude>
<southBoundLatitude>
<gco:Decimal>-71.905139</gco:Decimal>
</southBoundLatitude>
<northBoundLatitude>
<gco:Decimal>89.049382</gco:Decimal>
</northBoundLatitude>
</EX_GeographicBoundingBox>
</geographicElement>
</EX_Extent>
</extent>
</MD_DataIdentification>
</identificationInfo>

View File

@ -0,0 +1,11 @@
<referenceSystemInfo xmlns="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco">
<MD_ReferenceSystem>
<referenceSystemIdentifier>
<RS_Identifier>
<code>
<gco:CharacterString>http://www.opengis.net/def/crs/EPSG/0/4326</gco:CharacterString>
</code>
</RS_Identifier>
</referenceSystemIdentifier>
</MD_ReferenceSystem>
</referenceSystemInfo>