Update HTML package output to interim metadata standard
[ckanext-datagovau.git] / ckanext / datagovau / templates / package / read.rdf
blob:a/ckanext/datagovau/templates/package/read.rdf -> blob:b/ckanext/datagovau/templates/package/read.rdf
--- a/ckanext/datagovau/templates/package/read.rdf
+++ b/ckanext/datagovau/templates/package/read.rdf
@@ -16,7 +16,8 @@
     <dcat:Dataset rdf:about="${ h.url_for(controller='package',action='read',id=c.pkg_dict['name'], qualified=True)}">
         <dct:identifier>${c.pkg_dict['name']}</dct:identifier>
         <dct:title>${c.pkg_dict['title']}</dct:title>
-        <dct:landingPage rdf:resource="${ h.url_for(controller='package',action='read',id=c.pkg_dict['name'], qualified=True) }"/>
+        <dct:landingPage
+                rdf:resource="${ h.url_for(controller='package',action='read',id=c.pkg_dict['name'], qualified=True) }"/>
         <owl:sameAs rdf:resource="urn:uuid:${c.pkg_dict['id']}"/>
         <dct:type>Dataset</dct:type>
         <dct:description>${c.pkg_dict['notes']}</dct:description>
@@ -28,13 +29,11 @@
             <dcat:keyword>${ tag_dict["name"] }</dcat:keyword>
         </py:for>
         <py:for each="group_dict in c.pkg_dict.get('groups',[])">
-            <dcat:theme>${ tag_dict["title"] }</dcat:theme>
+            <dcat:theme>${ group_dict["title"] }</dcat:theme>
         </py:for>
 
-            <lol>${h.get_action("user_show",{"id":c.author})["display_name"]}</lol>
-        <lol>${h.get_action("user_show",{"id":c.author})["email"]}</lol>
-
-        <foaf:homepage rdf:resource="${ h.url_for(controller='package',action='read',id=c.pkg_dict['name'], qualified=True)}"/>
+        <foaf:homepage
+                rdf:resource="${ h.url_for(controller='package',action='read',id=c.pkg_dict['name'], qualified=True)}"/>
         <rdfs:label>${c.pkg_dict['name']}</rdfs:label>
 
 
@@ -47,8 +46,8 @@
                     <dcat:accessURL rdf:resource="${ rsc_dict.get('url') }"/>
                     <dct:created>${rsc_dict.get('revision_timestamp')}</dct:created>
                     <dct:modified>${rsc_dict.get('revision_timestamp')}</dct:modified>
-                    <dcat:byteSize>${rsc_dict.get('size')}</dcat:byteSize>
-                    <dcat:mediaType>${rsc_dict.get('mimetype')}</dcat:mediaType>
+                    <dcat:byteSize py:if="rsc_dict.get('size')">${rsc_dict.get('size')}</dcat:byteSize>
+                    <dcat:mediaType py:if="rsc_dict.get('mimetype')">${rsc_dict.get('mimetype')}</dcat:mediaType>
                     <dct:extent py:if="rsc_dict.get('size')">${rsc_dict.get('size')} bytes</dct:extent>
                     <dct:format py:if="rsc_dict.get('format')">
                         <dct:IMT>
@@ -60,25 +59,83 @@
                 </dcat:Distribution>
             </dcat:distribution>
         </py:for>
-        <dct:publisher  py:if="c.pkg_dict.get('organization', None)">
+        <dct:publisher py:if="c.pkg_dict.get('organization', None)">
             <rdf:Description>
                 <foaf:name>${ c.pkg_dict['organization']['title'] }</foaf:name>
             </rdf:Description>
         </dct:publisher>
-        <dct:creator  py:if="c.pkg_dict.get('author', None)">
+        <dct:creator py:if="c.pkg_dict.get('organization', None)">
             <rdf:Description>
-                <foaf:name>${ c.pkg_dict['author'] }</foaf:name>
-                <foaf:mbox  py:if="c.pkg_dict.get('maintainer_email', None)" rdf:resource="mailto:${c.pkg_dict['author_email']}"/>
+                <foaf:name>${ c.pkg_dict['organization']['title'] }</foaf:name>
             </rdf:Description>
         </dct:creator>
-        <dct:contributor py:if="c.pkg_dict.get('maintainer', None)">
+        <dct:contributor
+                py:with="username = h.get_action('package_activity_list',{'id':c.pkg_dict['id']})[0]['user_id']">
             <rdf:Description>
-                <foaf:name>${ c.pkg_dict['maintainer'] }</foaf:name>
-                <foaf:mbox  py:if="c.pkg_dict.get('maintainer_email', None)" rdf:resource="mailto:${c.pkg_dict['maintainer_email']}"/>
+                <foaf:name>${h.get_action("user_show",{"id":username})["display_name"]}</foaf:name>
+                <foaf:mbox py:if="h.get_action('user_show',{'id':username}).get('email', None)"
+                           rdf:resource="mailto:${h.get_action('user_show',{'id':username})['email']}"/>
             </rdf:Description>
         </dct:contributor>
 
         <dct:rights py:if="c.pkg_dict.get('license_url', None)" rdf:resource="${c.pkg_dict['license_url']}"/>
+
+        <foaf:homepage py:if="c.pkg_dict.get('DCTERMS.Source.URI')">${c.pkg_dict.get('DCTERMS.Source.URI') }
+        </foaf:homepage>
+
+        <dcat:contactPoint py:if="c.pkg_dict.get('contact_point')">${c.pkg_dict.contact_point }</dcat:contactPoint>
+        <dct:spatial py:if="c.pkg_dict.get('spatial_coverage')">${ c.pkg_dict.spatial_coverage }</dct:spatial>
+        <dct:spatial py:if="c.pkg_dict.get('Geospatial Coverage')">${ c.pkg_dict.get('Geospatial Coverage') }</dct:spatial>
+        <aglsterms:AglsJuri py:if="c.pkg_dict.get('jurisdiction')">${ c.pkg_dict.jurisdiction }</aglsterms:AglsJuri>
+        <aglsterms:AglsJuri py:if="c.pkg_dict.get('AGLSTERMS.Jurisdiction')">${ c.pkg_dict.get('AGLSTERMS.Jurisdiction') }</aglsterms:AglsJuri>
+        <dct:temporal py:if="c.pkg_dict.temporal_coverage">${ c.pkg_dict.temporal_coverage }</dct:temporal>
+        <dct:temporal py:if="c.pkg_dict.get('Temporal Coverage')">${ c.pkg_dict.get('Temporal Coverage') }</dct:temporal>
+        <dct:relation py:if="c.pkg_dict.get('data_state')">
+            <rdf:Description>
+                <rdfs:label>Data State</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('data_state') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+
+        <dct:relation py:if="c.pkg_dict.get('update_freq')">
+            <rdf:Description>
+                <rdfs:label>Update Frequency</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('update_freq') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+        <dct:relation py:if="c.pkg_dict.get('Update Frequency')">
+            <rdf:Description>
+                <rdfs:label>Update Frequency</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('Update Frequency') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+
+        <dct:relation py:if="c.pkg_dict.get('Agency Program')">
+            <rdf:Description>
+                <rdfs:label>Agency Program</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('Agency Program') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+        <dct:relation py:if="c.pkg_dict.get('agency_program')">
+            <rdf:Description>
+                <rdfs:label>Agency Program</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('agency_program') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+
+        <dct:relation py:if="c.pkg_dict.get('Granularity')">
+            <rdf:Description>
+                <rdfs:label>Data Granularity</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('Granularity') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+        <dct:relation py:if="c.pkg_dict.get('granularity')">
+            <rdf:Description>
+                <rdfs:label>Data Granularity</rdfs:label>
+                <rdf:value>${ c.pkg_dict.get('granularity') }</rdf:value>
+            </rdf:Description>
+        </dct:relation>
+
         <py:for each="extra_dict in c.pkg_dict.get('extras',[])">
             <dct:relation>
                 <rdf:Description>