Don't hard code system user id
Don't hard code system user id

--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -5,27 +5,26 @@
   </component>
   <component name="ChangeListManager">
     <list default="true" id="89ace156-8d75-43de-ba53-6e829c197435" name="Default" comment="">
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_basic_fields.html" afterPath="$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_basic_fields.html" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_metadata_fields.html" afterPath="$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_metadata_fields.html" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/ckanext/datagovau/templates/package/read.html" afterPath="$PROJECT_DIR$/ckanext/datagovau/templates/package/read.html" />
+      <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/ckanext/datagovau/templates/package/resource_read.html" />
       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/ckanext/datagovau/templates/package/read.rdf" afterPath="$PROJECT_DIR$/ckanext/datagovau/templates/package/read.rdf" />
       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html" afterPath="$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html" />
       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
     </list>
     <ignored path="ckanext-datagovau.iws" />
     <ignored path=".idea/workspace.xml" />
-    <file path="/Dummy.txt" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378719531059" ignored="false" />
-    <file path="/plugin.py" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378709809996" ignored="false" />
+    <file path="/Dummy.txt" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378773145747" ignored="false" />
+    <file path="/plugin.py" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378731005672" ignored="false" />
     <file path="/setup.py" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378168657134" ignored="false" />
     <file path="/package_basic_fields.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378727992485" ignored="false" />
     <file path="/package_metadata_fields.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378729194397" ignored="false" />
-    <file path="/read_base.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378724512417" ignored="false" />
-    <file path="/read.rdf" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378729950602" ignored="false" />
+    <file path="/read_base.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378774943838" ignored="false" />
+    <file path="/read.rdf" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378775057466" ignored="false" />
     <file path="/README.rst" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378703724236" ignored="false" />
     <file path="/a.dummy" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378689054922" ignored="false" />
     <file path="/read.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378721657045" ignored="false" />
     <file path="/create.py" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378705719051" ignored="false" />
     <file path="/additional_info.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378717234941" ignored="false" />
+    <file path="/resource_read.html" changelist="89ace156-8d75-43de-ba53-6e829c197435" time="1378775248415" ignored="false" />
     <option name="TRACKING_ENABLED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -89,25 +88,34 @@
       <file leaf-file-name="package_metadata_fields.html" pinned="false" current="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_metadata_fields.html">
           <provider selected="true" editor-type-id="text-editor">
-            <state line="35" column="74" selection-start="1081" selection-end="1081" vertical-scroll-proportion="-9.875">
+            <state line="35" column="74" selection-start="1081" selection-end="1081" vertical-scroll-proportion="-20.875">
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="package_metadata_fields.html" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/snippets/package_metadata_fields.html">
+      <file leaf-file-name="read_base.html" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html">
           <provider selected="true" editor-type-id="text-editor">
-            <state line="21" column="0" selection-start="1147" selection-end="1147" vertical-scroll-proportion="-0.625">
+            <state line="11" column="0" selection-start="247" selection-end="1668" vertical-scroll-proportion="-6.875">
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="read.rdf" pinned="false" current="true" current-in-tab="true">
+      <file leaf-file-name="resource_read.html" pinned="false" current="true" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/resource_read.html">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="14" column="89" selection-start="580" selection-end="580" vertical-scroll-proportion="0.30837005">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="read.rdf" pinned="false" current="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read.rdf">
           <provider selected="true" editor-type-id="text-editor">
-            <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+            <state line="47" column="50" selection-start="2578" selection-end="2596" vertical-scroll-proportion="0.0">
               <folding />
             </state>
           </provider>
@@ -137,22 +145,22 @@
         <option value="$PROJECT_DIR$/README.rst" />
         <option value="$PROJECT_DIR$/ckanext/datagovau/theme/public/licenses.json" />
         <option value="$PROJECT_DIR$/../ckan/ckan/logic/action/create.py" />
-        <option value="$PROJECT_DIR$/ckanext/datagovau/plugin.py" />
         <option value="$PROJECT_DIR$/../ckan/ckan/templates/package/snippets/additional_info.html" />
         <option value="$PROJECT_DIR$/../ckan/ckan/templates/package/read_base.html" />
-        <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html" />
         <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/read.html" />
         <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_basic_fields.html" />
         <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_metadata_fields.html" />
+        <option value="$PROJECT_DIR$/ckanext/datagovau/plugin.py" />
+        <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html" />
         <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/read.rdf" />
+        <option value="$PROJECT_DIR$/ckanext/datagovau/templates/package/resource_read.html" />
       </list>
     </option>
   </component>
   <component name="ProjectFrameBounds">
-    <option name="x" value="-1" />
-    <option name="y" value="31" />
-    <option name="width" value="1282" />
-    <option name="height" value="773" />
+    <option name="x" value="1280" />
+    <option name="width" value="1920" />
+    <option name="height" value="1080" />
   </component>
   <component name="ProjectLevelVcsManager" settingsEditedManually="false">
     <OptionsSetting value="true" id="Add" />
@@ -180,7 +188,6 @@
       <sortByType />
     </navigator>
     <panes>
-      <pane id="PackagesPane" />
       <pane id="Scope" />
       <pane id="ProjectPane">
         <subPane>
@@ -332,6 +339,7 @@
           </PATH>
         </subPane>
       </pane>
+      <pane id="PackagesPane" />
     </panes>
   </component>
   <component name="PropertiesComponent">
@@ -339,10 +347,10 @@
     <property name="GoToClass.toSaveIncludeLibraries" value="false" />
     <property name="WebServerToolWindowFactoryState" value="false" />
     <property name="MemberChooser.sorted" value="false" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$/../ckan/ckan/templates/package/snippets/package_metadata_fields.html" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../ckan/ckan/templates/package/resource_read.html" />
     <property name="MemberChooser.showClasses" value="true" />
+    <property name="DefaultHtmlFileTemplate" value="Html5" />
     <property name="GoToClass.includeLibraries" value="false" />
-    <property name="DefaultHtmlFileTemplate" value="Html5" />
     <property name="MemberChooser.copyJavadoc" value="false" />
   </component>
   <component name="PyConsoleOptionsProvider">
@@ -353,7 +361,20 @@
       <PyConsoleSettings />
     </option>
   </component>
+  <component name="RecentsManager">
+    <key name="CopyFile.RECENT_KEYS">
+      <recent name="$PROJECT_DIR$/ckanext/datagovau/templates/package" />
+    </key>
+  </component>
   <component name="RunManager">
+    <configuration default="true" type="Remote" factoryName="Remote">
+      <option name="USE_SOCKET_TRANSPORT" value="true" />
+      <option name="SERVER_MODE" value="false" />
+      <option name="SHMEM_ADDRESS" value="javadebug" />
+      <option name="HOST" value="localhost" />
+      <option name="PORT" value="5005" />
+      <method />
+    </configuration>
     <configuration default="true" type="PythonConfigurationType" factoryName="Python">
       <option name="INTERPRETER_OPTIONS" value="" />
       <option name="PARENT_ENVS" value="true" />
@@ -367,14 +388,6 @@
       <EXTENSION ID="PythonCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" runner="coverage.py" />
       <option name="SCRIPT_NAME" value="" />
       <option name="PARAMETERS" value="" />
-      <method />
-    </configuration>
-    <configuration default="true" type="Remote" factoryName="Remote">
-      <option name="USE_SOCKET_TRANSPORT" value="true" />
-      <option name="SERVER_MODE" value="false" />
-      <option name="SHMEM_ADDRESS" value="javadebug" />
-      <option name="HOST" value="localhost" />
-      <option name="PORT" value="5005" />
       <method />
     </configuration>
     <configuration default="true" type="tests" factoryName="Unittests">
@@ -494,23 +507,24 @@
     </todo-panel>
   </component>
   <component name="ToolWindowManager">
-    <frame x="-1" y="31" width="1282" height="773" extended-state="6" />
-    <editor active="false" />
+    <frame x="1280" y="0" width="1920" height="1080" extended-state="6" />
+    <editor active="true" />
     <layout>
       <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3290735" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3290735" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
       <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2442323" sideWeight="0.67038214" order="0" side_tool="false" content_ui="combo" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.16183448" sideWeight="0.7795527" order="0" side_tool="false" content_ui="combo" />
       <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
-      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.32961783" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
+      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.22044729" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
       <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
       <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
       <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
       <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.22091782" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+      <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
       <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
       <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
@@ -558,7 +572,7 @@
     <option name="WRAP_WHEN_TYPING_REACHES_RIGHT_MARGIN" value="false" />
     <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
     <option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="false" />
-    <option name="LAST_COMMIT_MESSAGE" />
+    <option name="LAST_COMMIT_MESSAGE" value="Update HTML package output to interim metadata standard" />
     <option name="MAKE_NEW_CHANGELIST_ACTIVE" value="false" />
     <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
     <option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
@@ -572,113 +586,102 @@
     <option name="UPDATE_FILTER_BY_SCOPE" value="false" />
     <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
     <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
+    <MESSAGE value="Update HTML package output to interim metadata standard" />
   </component>
   <component name="XDebuggerManager">
     <breakpoint-manager />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/logic/action/get.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="1981" column="0" selection-start="66061" selection-end="66061" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/page.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="133" column="0" selection-start="4601" selection-end="4601" vertical-scroll-proportion="0.8440208" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/header.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="112" column="0" selection-start="4452" selection-end="4452" vertical-scroll-proportion="0.84042555" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/base.html">
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/base.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/macros/form.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="94" column="0" selection-start="4027" selection-end="4027" vertical-scroll-proportion="-21.333334" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read.html">
       <provider selected="true" editor-type-id="text-editor">
         <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/snippets/additional_info.html">
+    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_basic_fields.html">
       <provider selected="true" editor-type-id="text-editor">
         <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.0">
           <folding />
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/snippets/package_metadata_fields.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="21" column="0" selection-start="1147" selection-end="1147" vertical-scroll-proportion="-0.625" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/model/package.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="209" column="0" selection-start="7434" selection-end="7434" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/logic/action/get.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="758" column="37" selection-start="24462" selection-end="24462" vertical-scroll-proportion="-6.6" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/logic/schema.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="172" column="0" selection-start="7641" selection-end="7641" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/lib/navl/validators.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/logic/converters.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="33" column="0" selection-start="391" selection-end="1056" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/ckanext/datagovau/plugin.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state line="102" column="0" selection-start="4010" selection-end="4010" vertical-scroll-proportion="0.0">
+        <state line="106" column="0" selection-start="4140" selection-end="4271" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_metadata_fields.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="35" column="74" selection-start="1081" selection-end="1081" vertical-scroll-proportion="-20.875">
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/read.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="11" column="0" selection-start="247" selection-end="1668" vertical-scroll-proportion="-6.875">
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/read_base.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="54" column="27" selection-start="2225" selection-end="2225" vertical-scroll-proportion="-6.408163">
+    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/resource_read.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="24" column="105" selection-start="970" selection-end="970" vertical-scroll-proportion="0.48018292">
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/base.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read.rdf">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="47" column="50" selection-start="2578" selection-end="2596" vertical-scroll-proportion="0.0">
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read_base.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="13" column="48" selection-start="266" selection-end="266" vertical-scroll-proportion="-8.125">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/macros/form.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="94" column="0" selection-start="4027" selection-end="4027" vertical-scroll-proportion="-21.333334">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_basic_fields.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../ckan/ckan/templates/package/snippets/package_metadata_fields.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="21" column="0" selection-start="1147" selection-end="1147" vertical-scroll-proportion="-0.625">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/snippets/package_metadata_fields.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="35" column="74" selection-start="1081" selection-end="1081" vertical-scroll-proportion="-9.875">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/read.rdf">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+    <entry file="file://$PROJECT_DIR$/ckanext/datagovau/templates/package/resource_read.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="14" column="89" selection-start="580" selection-end="580" vertical-scroll-proportion="0.30837005">
           <folding />
         </state>
       </provider>

file:b/admin/data.gov.au (new)
--- /dev/null
+++ b/admin/data.gov.au
@@ -1,1 +1,96 @@
+<VirtualHost 127.0.0.1:8080>
+	ServerAdmin webmaster@localhost
 
+	ServerName data.gov.au
+	ServerAlias www.data.gov.au, opendata.linkdigital.com.au
+
+
+        #allow access to local static content eg. logos
+        Alias /index.html /var/www/index.html
+        Alias /logos      /var/www/logos
+        Alias /tools      /var/www/tools.shtml
+        Alias /opendata   /var/www/opendata.shtml
+        Alias /opengov    /var/www/opengov.shtml
+
+	DocumentRoot /var/www
+<IfModule mod_expires.c>
+          <FilesMatch "\.(jpe?g|png|gif|js|css)$">
+                      ExpiresActive On
+                      ExpiresDefault "access plus 1 week"
+          </FilesMatch>
+</IfModule>
+
+	<Directory />
+		Options FollowSymLinks
+		AllowOverride None
+	</Directory>
+
+	<Directory /var/www/>
+		Options -Indexes -FollowSymLinks -MultiViews +Includes
+		AllowOverride None
+
+		Order allow,deny
+		allow from all
+
+                AddType text/html .shtml
+                AddOutputFilter INCLUDES .shtml
+	</Directory>
+
+	ErrorLog ${APACHE_LOG_DIR}/error.log
+
+	# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
+	LogLevel warn
+
+	CustomLog ${APACHE_LOG_DIR}/access.log varnishcombined
+	RewriteEngine On
+
+	RewriteMap lc int:tolower
+
+#	RewriteRule ^/apps/antenna-mate/?$													http://antennamate.com/ 											[PT]
+#	RewriteRule ^/apps/postcode-finder/?$													http://www.aus-emaps.com/postcode_finder.php									[PT]
+#	RewriteRule ^/apps/the-australian-cost-of-living-heatmap/?$										http://www.creditcardcompare.com.au/tools/cost-of-living-heatmap/						[PT]
+	RewriteRule ^/catalogues/?$														/organization													[PT]
+	RewriteRule ^/dataset/“cycling-in-new-south-wales-what-the-data-tells-us”-and-related-data/?						/dataset/2809cycling-in-new-south-wales-what-the-data-tells-us2809-and-related-data				[PT]
+	RewriteRule ^/dataset/apvma-pubcris-dataset-for-registered-agricultural-and-veterinary-chemical-products-and-approved-actives/? 	/dataset/apvma-pubcris-dataset-for-registered-agricultural-and-veterinary-chemical-products-and-approved-acti	[PT]
+	RewriteRule ^/dataset_category/business/?$												/group/business 												[PT]
+	RewriteRule ^/dataset_category/community/?$												/group/community												[PT]
+	RewriteRule ^/dataset_category/geography/?$												/group/geography												[PT]
+	RewriteRule ^/dataset_category/government/?$												/group/government												[PT]
+	RewriteRule ^/dataset_category/health/?$												/group/health													[PT]
+	RewriteRule ^/dataset_category/?$													/group														[PT]
+	RewriteRule ^/feed/?$															/feeds/dataset.atom														[PT]
+	RewriteRule ^/jurisdiction/australian-capital-territory/?$										/dataset?q=act													[PT]
+	RewriteRule ^/jurisdiction/new-south-wales/?$												/dataset?q=new+south+wales											[PT]
+	RewriteRule ^/jurisdiction/queensland/?$ 												/dataset?q=queensland												[PT]
+	RewriteRule ^/jurisdiction/south-australia/?$												/dataset?q=south+australia											[PT]
+	RewriteRule ^/jurisdiction/victoria/?$													/dataset?q=victoria												[PT]
+	RewriteRule ^/jurisdiction/western-australia/?$ 											/dataset?q=western+australia											[PT]
+	RewriteRule ^/jurisdiction/?$														/dataset													[PT]
+
+#	RewriteCond %{QUERY_STRING}	^category=([a-z]+)
+#	RewriteRule ^/data/?$															/group/${lc:%1}?												[PT]
+
+#	RewriteCond %{QUERY_STRING}	^format=Shapefile
+#	RewriteRule ^/data/?$															/dataset?res_format=shp 											[PT]
+
+	RewriteRule ^/data/?$															/dataset?													[PT]
+
+	RewriteCond %{QUERY_STRING}	^s=(.*)
+	RewriteRule ^/			/dataset?q=%1																										[PT]
+
+
+        FilterDeclare OPENDATA
+        FilterProvider OPENDATA SUBSTITUTE resp=Content-Type $text/
+        FilterProvider OPENDATA SUBSTITUTE resp=Content-Type $/javascript
+        FilterProvider OPENDATA SUBSTITUTE resp=Content-Type $/json
+        FilterProvider OPENDATA SUBSTITUTE resp=Content-Type $/xml
+        FilterChain OPENDATA
+        Substitute "s#//opendata.linkdigital.com.au#//data.gov.au#"
+
+	WSGIScriptAlias / /var/lib/ckan/dga/pyenv/bin/dga.py
+	WSGIPassAuthorization On
+
+	ErrorLog /var/log/apache2/ckandga.error.log
+	CustomLog /var/log/apache2/ckandga.custom.log combined
+</VirtualHost>
+

file:b/admin/default.vcl (new)
--- /dev/null
+++ b/admin/default.vcl
@@ -1,1 +1,164 @@
+# This is a basic VCL configuration file for varnish.  See the vcl(7)
+# man page for details on VCL syntax and semantics.
+# 
+# Default backend definition.  Set this to point to your content
+# server.
+# 
+backend default {
+    .host = "127.0.0.1";
+    .port = "8080";
+}
 
+sub vcl_fetch {
+    set beresp.grace = 1h;
+ 
+    if (beresp.http.content-type ~ "(text|application)") {
+        set beresp.do_gzip = true;
+    }
+ if (req.url ~ "\.(png|gif|jpg|jpeg|swf|css|js|woff|eot)$") {
+   unset beresp.http.set-cookie;
+ }
+}
+sub vcl_recv {
+  if (req.url ~ "^/_tracking") {
+    return (pass);
+  }
+ if (req.url ~ "\.(png|gif|jpg|jpeg|swf|css|js|woff|eot)$") {
+    return(lookup);
+ }
+  if (req.http.Cookie) {
+    set req.http.Cookie = regsuball(req.http.Cookie, "(^|; ) *__utm.=[^;]+;? *", "\1"); # removes all cookies named __utm? (utma, utmb...) - tracking thing
+
+    if (req.http.Cookie == "") {
+        remove req.http.Cookie;
+    }
+  }
+} 
+sub vcl_deliver {
+    if (!resp.http.Vary) {
+        set resp.http.Vary = "Accept-Encoding";   
+    } else if (resp.http.Vary !~ "(?i)Accept-Encoding") {
+        set resp.http.Vary = resp.http.Vary + ",Accept-Encoding";
+    }    
+    if (obj.hits > 0) {
+        set resp.http.X-Cache = "HIT";
+    } else {
+        set resp.http.X-Cache = "MISS";
+    }
+}   
+
+# 
+# Below is a commented-out copy of the default VCL logic.  If you
+# redefine any of these subroutines, the built-in logic will be
+# appended to your code.
+# sub vcl_recv {
+#     if (req.restarts == 0) {
+# 	if (req.http.x-forwarded-for) {
+# 	    set req.http.X-Forwarded-For =
+# 		req.http.X-Forwarded-For + ", " + client.ip;
+# 	} else {
+# 	    set req.http.X-Forwarded-For = client.ip;
+# 	}
+#     }
+#     if (req.request != "GET" &&
+#       req.request != "HEAD" &&
+#       req.request != "PUT" &&
+#       req.request != "POST" &&
+#       req.request != "TRACE" &&
+#       req.request != "OPTIONS" &&
+#       req.request != "DELETE") {
+#         /* Non-RFC2616 or CONNECT which is weird. */
+#         return (pipe);
+#     }
+#     if (req.request != "GET" && req.request != "HEAD") {
+#         /* We only deal with GET and HEAD by default */
+#         return (pass);
+#     }
+#     if (req.http.Authorization || req.http.Cookie) {
+#         /* Not cacheable by default */
+#         return (pass);
+#     }
+#     return (lookup);
+# }
+# 
+# sub vcl_pipe {
+#     # Note that only the first request to the backend will have
+#     # X-Forwarded-For set.  If you use X-Forwarded-For and want to
+#     # have it set for all requests, make sure to have:
+#     # set bereq.http.connection = "close";
+#     # here.  It is not set by default as it might break some broken web
+#     # applications, like IIS with NTLM authentication.
+#     return (pipe);
+# }
+# 
+# sub vcl_pass {
+#     return (pass);
+# }
+# 
+# sub vcl_hash {
+#     hash_data(req.url);
+#     if (req.http.host) {
+#         hash_data(req.http.host);
+#     } else {
+#         hash_data(server.ip);
+#     }
+#     return (hash);
+# }
+# 
+# sub vcl_hit {
+#     return (deliver);
+# }
+# 
+# sub vcl_miss {
+#     return (fetch);
+# }
+# 
+# sub vcl_fetch {
+#     if (beresp.ttl <= 0s ||
+#         beresp.http.Set-Cookie ||
+#         beresp.http.Vary == "*") {
+# 		/*
+# 		 * Mark as "Hit-For-Pass" for the next 2 minutes
+# 		 */
+# 		set beresp.ttl = 120 s;
+# 		return (hit_for_pass);
+#     }
+#     return (deliver);
+# }
+# 
+# sub vcl_deliver {
+#     return (deliver);
+# }
+# 
+# sub vcl_error {
+#     set obj.http.Content-Type = "text/html; charset=utf-8";
+#     set obj.http.Retry-After = "5";
+#     synthetic {"
+# <?xml version="1.0" encoding="utf-8"?>
+# <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+#  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+# <html>
+#   <head>
+#     <title>"} + obj.status + " " + obj.response + {"</title>
+#   </head>
+#   <body>
+#     <h1>Error "} + obj.status + " " + obj.response + {"</h1>
+#     <p>"} + obj.response + {"</p>
+#     <h3>Guru Meditation:</h3>
+#     <p>XID: "} + req.xid + {"</p>
+#     <hr>
+#     <p>Varnish cache server</p>
+#   </body>
+# </html>
+# "};
+#     return (deliver);
+# }
+# 
+# sub vcl_init {
+# 	return (ok);
+# }
+# 
+# sub vcl_fini {
+# 	return (ok);
+# }
+

--- /dev/null
+++ b/admin/deflate.conf
@@ -1,1 +1,12 @@
+<IfModule mod_deflate.c>
+        AddOutputFilterByType DEFLATE text/html application/xhtml+xml text/plain text/xml text/css application/json text/javascript application/javascript application/x-javascript
+        BrowserMatch ^Mozilla/4 gzip-only-text/html
+        BrowserMatch ^Mozilla/4\.0[678] no-gzip
+        BrowserMatch \bMSIE !no-gzip !gzip-only-text/htm
 
+        # Don't compress images
+        SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
+
+        # DeflateCompressionLevel 9
+</IfModule>
+

--- a/ckanext/datagovau/plugin.py
+++ b/ckanext/datagovau/plugin.py
@@ -1,21 +1,30 @@
 import logging
 
 import ckan.plugins as plugins
+import ckan.lib as lib
+import ckan.lib.dictization.model_dictize as model_dictize
 import ckan.plugins.toolkit as tk
+import ckan.model as model
+from pylons import config
 
+#parse the activity feed for last active non-system user
+def get_last_active_user(id):
+    system_user = lib.helpers.get_action('user_show',{'id': config.get('ckan.site_id', 'ckan_site_user')})
+    user_list = [x for x in lib.helpers.get_action('package_activity_list',{'id':id}) if x['user_id'] != system_user['id']]
+    user = None
+    if len(user_list) > 0:
+    	user = user_list[0].get('user_id', None)
+    if user is None:
+	return system_user
+    else:
+	return lib.helpers.get_action('user_show',{'id':user})
 
-# get_action will be deprecated soon, this is the replacement
-def get_user(user):
-    user_name = unicode(user)
-    if user_name:
-        user_obj = model.User.get(id)
-        context['user_obj'] = user_obj
-        if user_obj is None:
-            raise NotFound
-    else:
-        raise NotFound
-
-    return model_dictize.user_dictize(user_obj,context)
+# get user created datasets and those they have edited
+def get_user_datasets(user_dict):
+    created_datasets_list = user_dict['datasets']
+    active_datasets_list = [x['data']['package'] for x in 
+				lib.helpers.get_action('user_activity_list',{'id':user_dict['id']}) if x['data'].get('package')]
+    return created_datasets_list + active_datasets_list
 
 
 class ExampleIDatasetFormPlugin(plugins.SingletonPlugin,
@@ -53,7 +62,7 @@
         # config['licenses_group_url'] = 'http://%(ckan.site_url)/licenses.json'
 
     def get_helpers(self):
-        return {'getuser': get_user}
+        return {'get_last_active_user': get_last_active_user, 'get_user_datasets': get_user_datasets}
 
     def is_fallback(self):
         # Return True to register this plugin as the default handler for

--- a/ckanext/datagovau/templates/package/read.html
+++ b/ckanext/datagovau/templates/package/read.html
@@ -44,11 +44,11 @@
             <td class="dataset-details"> {{ pkg.get('Agency Program') }}</td>
         </tr>
         {% endif %}
-        {% if pkg.get('DCTERMS.Source.URI') %}
+        {% if h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI') %}
         <tr>
             <th scope="row" class="dataset-label">{{ _('Source') }}</th>
-            <td class="dataset-details" property="dct:source">{{ h.link_to(pkg.get('DCTERMS.Source.URI'),
-                pkg.get('DCTERMS.Source.URI'), rel='dct:source', target='_blank') }}
+            <td class="dataset-details" property="dct:source">{{ h.link_to(h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI'),
+                h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI'), rel='dct:source', target='_blank') }}
             </td>
         </tr>
         {% endif %}
@@ -67,11 +67,11 @@
             <td class="dataset-details" property="dct:spatial"> {{ pkg.spatial_coverage }}</td>
         </tr>
         {% endif %}
-        {% if pkg.get('Geospatial Coverage') %}
+        {% if h.get_pkg_dict_extra(pkg,'Geospatial Coverage') %}
 
         <tr>
             <th scope="row" class="dataset-label">Geospatial Coverage</th>
-            <td class="dataset-details" property="dct:spatial"> {{ pkg.get('Geospatial Coverage') }}</td>
+            <td class="dataset-details" property="dct:spatial"> {{ h.get_pkg_dict_extra(pkg,'Geospatial Coverage') }}</td>
         </tr>
         {% endif %}
         {% if pkg.get('granularity') %}
@@ -81,11 +81,11 @@
             <td class="dataset-details"> {{ pkg.granularity }}</td>
         </tr>
         {% endif %}
-        {% if pkg.get('Granularity') %}
+        {% if h.get_pkg_dict_extra(pkg,'Granularity') %}
 
         <tr>
             <th scope="row" class="dataset-label">Data Granularity</th>
-            <td class="dataset-details"> {{ pkg.get('Granularity') }}</td>
+            <td class="dataset-details"> {{ h.get_pkg_dict_extra(pkg,'Granularity') }}</td>
         </tr>
         {% endif %}
         {% if pkg.get('jurisdiction') %}
@@ -95,11 +95,11 @@
             <td class="dataset-details" property="aglsterms:AglsJuri"> {{ pkg.jurisdiction }}</td>
         </tr>
         {% endif %}
-        {% if pkg.get('AGLSTERMS.Jurisdiction') %}
+        {% if h.get_pkg_dict_extra(pkg,'AGLSTERMS.Jurisdiction') %}
 
         <tr>
             <th scope="row" class="dataset-label">Government Jurisdiction</th>
-            <td class="dataset-details" property="aglsterms:AglsJuri"> {{ pkg.get('AGLSTERMS.Jurisdiction') }}</td>
+            <td class="dataset-details" property="aglsterms:AglsJuri"> {{ h.get_pkg_dict_extra(pkg,'AGLSTERMS.Jurisdiction') }}</td>
         </tr>
         {% endif %}
         {% if pkg.get('temporal_coverage') %}
@@ -109,11 +109,11 @@
             <td class="dataset-details" property="dct:temporal"> {{ pkg.temporal_coverage }}</td>
         </tr>
         {% endif %}
-        {% if pkg.get('Temporal Coverage') %}
+        {% if h.get_pkg_dict_extra(pkg,'Temporal Coverage') %}
 
         <tr>
             <th scope="row" class="dataset-label">Temporal Coverage</th>
-            <td class="dataset-details" property="dct:temporal"> {{ pkg.get('Temporal Coverage') }}</td>
+            <td class="dataset-details" property="dct:temporal"> {{ h.get_pkg_dict_extra(pkg,'Temporal Coverage') }}</td>
         </tr>
         {% endif %}
         {% if pkg.get('data_state') %}
@@ -130,26 +130,33 @@
             <td class="dataset-details"> {{ pkg.update_freq }}</td>
         </tr>
         {% endif %}
-        {% if pkg.get('Update Frequency') %}
+        {% if h.get_pkg_dict_extra(pkg,'Update Frequency') %}
         <tr>
             <th scope="row" class="dataset-label">Update Frequency</th>
-            <td class="dataset-details"> {{ pkg.get('Update Frequency') }}</td>
+            <td class="dataset-details"> {{ h.get_pkg_dict_extra(pkg,'Update Frequency') }}</td>
         </tr>
         {% endif %}
 
-        {% if pkg.maintainer_email %}
+{% set email =h.get_last_active_user(c.pkg_dict['id']).get('email','') %}
         <tr>
             <th scope="row" class="dataset-label">{{ _('Maintainer') }}</th>
             <td class="dataset-details" property="dc:contributor">{{
-                h.mail_to(email_address=pkg.maintainer_email, name=pkg.maintainer) }}
+		  h.mail_to(email_address=(email or ' '), name=h.get_last_active_user(c.pkg_dict['id']).get("display_name",'')) }}
             </td>
         </tr>
-        {% elif pkg.maintainer %}
         <tr>
-            <th scope="row" class="dataset-label">{{ _('Maintainer') }}</th>
-            <td class="dataset-details" property="dc:contributor">{{ pkg.maintainer }}</td>
+            <th scope="row" class="dataset-label">Publisher/Agency</th>
+            <td class="dataset-details" property="dc:publisher">{{ c.pkg_dict['organization']['title']}}
+            </td>
         </tr>
-        {% endif %}
+        <tr>
+            <th scope="row" class="dataset-label">Type</th>
+            <td class="dataset-details" property="dc:type">Dataset</td>
+        </tr>
+        <tr>
+            <th scope="row" class="dataset-label">Language</th>
+            <td class="dataset-details" property="dc:language">English</td>
+        </tr>
 
         </tbody>
     </table>

--- a/ckanext/datagovau/templates/package/read.rdf
+++ b/ckanext/datagovau/templates/package/read.rdf
@@ -24,7 +24,17 @@
         <dct:issued>${c.pkg_dict['metadata_created']}</dct:issued>
         <dct:modified>${c.pkg_dict['metadata_modified']}</dct:modified>
         <dct:language>en</dct:language>
+
+<py:choose>
+  <py:when test="c.pkg_dict.get('license_url',None)">
         <dct:license>${c.pkg_dict['license_url']}</dct:license>
+        <dct:rights rdf:resource="${c.pkg_dict['license_url']}"/>
+  </py:when>
+  <py:otherwise>
+        <dct:license>${c.pkg_dict['license_id']}</dct:license>
+        <dct:rights rdf:resource="${c.pkg_dict['license_id']}"/>
+  </py:otherwise>
+</py:choose>
         <py:for each="tag_dict in c.pkg_dict.get('tags',[])">
             <dcat:keyword>${ tag_dict["name"] }</dcat:keyword>
         </py:for>
@@ -44,7 +54,7 @@
                     <owl:sameAs rdf:resource="urn:uuid:${rsc_dict.get('id')}"/>
                     <dct:description>${rsc_dict.get('description')}</dct:description>
                     <dcat:accessURL rdf:resource="${ rsc_dict.get('url') }"/>
-                    <dct:created>${rsc_dict.get('revision_timestamp')}</dct:created>
+                    <dct:created>${rsc_dict.get('created')}</dct:created>
                     <dct:modified>${rsc_dict.get('revision_timestamp')}</dct:modified>
                     <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>
@@ -69,27 +79,25 @@
                 <foaf:name>${ c.pkg_dict['organization']['title'] }</foaf:name>
             </rdf:Description>
         </dct:creator>
-        <dct:contributor
-                py:with="username = h.get_action('package_activity_list',{'id':c.pkg_dict['id']})[0]['user_id']">
+        <dct:contributor>
             <rdf:Description>
-                <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']}"/>
+                <foaf:name>${h.get_last_active_user(c.pkg_dict['id'])["display_name"]}</foaf:name>
+                <foaf:mbox py:if="h.get_last_active_user(c.pkg_dict['id']).get('email', None)"
+                           rdf:resource="mailto:${h.get_last_active_user(c.pkg_dict['id'])['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 py:if="h.get_pkg_dict_extra(c.pkg_dict,'DCTERMS.Source.URI')">${h.get_pkg_dict_extra(c.pkg_dict,'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>
+        <dct:spatial py:if="h.get_pkg_dict_extra(c.pkg_dict,'Geospatial Coverage')">${ h.get_pkg_dict_extra(c.pkg_dict,'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>
+        <aglsterms:AglsJuri py:if="h.get_pkg_dict_extra(c.pkg_dict,'AGLSTERMS.Jurisdiction')">${ h.get_pkg_dict_extra(c.pkg_dict,'AGLSTERMS.Jurisdiction') }</aglsterms:AglsJuri>
+        <dct:temporal py:if="c.pkg_dict.get('temporal_coverage')">${ c.pkg_dict.get('temporal_coverage') }</dct:temporal>
+        <dct:temporal py:if="h.get_pkg_dict_extra(c.pkg_dict,'Temporal Coverage')">${ h.get_pkg_dict_extra(c.pkg_dict,'Temporal Coverage') }</dct:temporal>
         <dct:relation py:if="c.pkg_dict.get('data_state')">
             <rdf:Description>
                 <rdfs:label>Data State</rdfs:label>
@@ -103,17 +111,17 @@
                 <rdf:value>${ c.pkg_dict.get('update_freq') }</rdf:value>
             </rdf:Description>
         </dct:relation>
-        <dct:relation py:if="c.pkg_dict.get('Update Frequency')">
+        <dct:relation py:if="h.get_pkg_dict_extra(c.pkg_dict,'Update Frequency')">
             <rdf:Description>
                 <rdfs:label>Update Frequency</rdfs:label>
-                <rdf:value>${ c.pkg_dict.get('Update Frequency') }</rdf:value>
+                <rdf:value>${ h.get_pkg_dict_extra(c.pkg_dict,'Update Frequency') }</rdf:value>
             </rdf:Description>
         </dct:relation>
 
-        <dct:relation py:if="c.pkg_dict.get('Agency Program')">
+        <dct:relation py:if="h.get_pkg_dict_extra(c.pkg_dict,'Agency Program')">
             <rdf:Description>
                 <rdfs:label>Agency Program</rdfs:label>
-                <rdf:value>${ c.pkg_dict.get('Agency Program') }</rdf:value>
+                <rdf:value>${ h.get_pkg_dict_extra(c.pkg_dict,'Agency Program') }</rdf:value>
             </rdf:Description>
         </dct:relation>
         <dct:relation py:if="c.pkg_dict.get('agency_program')">
@@ -123,10 +131,10 @@
             </rdf:Description>
         </dct:relation>
 
-        <dct:relation py:if="c.pkg_dict.get('Granularity')">
+        <dct:relation py:if="h.get_pkg_dict_extra(c.pkg_dict,'Granularity')">
             <rdf:Description>
                 <rdfs:label>Data Granularity</rdfs:label>
-                <rdf:value>${ c.pkg_dict.get('Granularity') }</rdf:value>
+                <rdf:value>${ h.get_pkg_dict_extra(c.pkg_dict,'Granularity') }</rdf:value>
             </rdf:Description>
         </dct:relation>
         <dct:relation py:if="c.pkg_dict.get('granularity')">

--- a/ckanext/datagovau/templates/package/read_base.html
+++ b/ckanext/datagovau/templates/package/read_base.html
@@ -2,10 +2,29 @@
 
 {% block links -%}
 {{ super() }}
+<link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" />
+<link rel="schema.AGLSTERMS" href="http://www.agls.gov.au/agls/terms/" />
+
 {% endblock -%}
 
 {% block head_extras -%}
 {{ super() }}
+<meta name="DCTERMS.Language" scheme="RFC3066" content="en" />
+<meta name="DCTERMS.Type" scheme="AGLSTERMS.Document" content="dataset" />
+<meta name="DCTERMS.Creator" scheme="AGLSTERMS.AglsAgent" content="{{ pkg['organization']['title'] }}" />
+<meta name="DCTERMS.Modified" scheme="DCTERMS.ISO8601" content="{{pkg['metadata_modified']}}" />
+<meta name="DCTERMS.Published" scheme="DCTERMS.ISO8601" content="{{pkg['metadata_created']}}" />
+{% if  h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI') %}<meta name="DCTERMS.Source.URI" content="{{h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI')}}" />{% endif %}
+<meta name="DCTERMS.License" content="{{pkg['license_url']}}" />
+<meta name="DCTERMS.Coverage.Temporal" content="{{pkg.temporal_coverage or h.get_pkg_dict_extra(pkg,'Temporal Coverage')}}" />
+<meta name="DCTERMS.Coverage.Spatial" content="{{pkg.spatial_coverage or h.get_pkg_dict_extra(pkg,'Geospatial Coverage')}}" />
+<meta name="AGLSTERMS.Jurisdiction" scheme="AGLSTERMS.AglsJuri" content="{{pkg.jurisdiction or h.get_pkg_dict_extra(pkg,'AGLSTERMS.Jurisdiction')}}" />
+<meta name="DCAT.Theme" scheme="VO" content="{% for x in pkg.groups %}{{x['title']}},{% endfor %}" />
+<meta name="DCTERMS.Identifier" content="{{h.url_for(controller='package',action='read',id=c.pkg_dict['name'], qualified=True)}}" />
+<meta name="DCTERMS.Title" content="{{pkg['title']}}" />
+<meta name="DCTERMS.Description" scheme="" content="{{pkg['notes']}}" />
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+
 {% endblock -%}
 
 {% block package_info %}

--- /dev/null
+++ b/ckanext/datagovau/templates/package/resource_read.html
@@ -1,1 +1,36 @@
+{% ckan_extends %}
 
+{% block links -%}
+{{ super() }}
+<link rel="schema.DCTERMS" href="http://purl.org/dc/terms/" />
+<link rel="schema.AGLSTERMS" href="http://www.agls.gov.au/agls/terms/" />
+
+{% endblock -%}
+
+{% block head_extras -%}
+{{ super() }}
+<meta name="DCTERMS.Language" scheme="RFC3066" content="en" />
+<meta name="DCTERMS.Type" scheme="AGLSTERMS.Document" content="dataset" />
+<meta name="DCTERMS.Creator" scheme="AGLSTERMS.AglsAgent" content="{{ pkg['organization']['title'] }}" />
+<meta name="DCTERMS.Modified" scheme="DCTERMS.ISO8601" content="{{res['revision_timestamp']}}" />
+<meta name="DCTERMS.Published" scheme="DCTERMS.ISO8601" content="{{res['created']}}" />
+{% if  h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI') %}<meta name="DCTERMS.Source.URI" content="{{h.get_pkg_dict_extra(pkg,'DCTERMS.Source.URI')}}" />{% endif %}
+<meta name="DCTERMS.License" content="{{pkg['license_url']}}" />
+<meta name="DCTERMS.Coverage.Temporal" content="{{pkg.temporal_coverage or h.get_pkg_dict_extra(pkg,'Temporal Coverage')}}" />
+<meta name="DCTERMS.Coverage.Spatial" content="{{pkg.spatial_coverage or h.get_pkg_dict_extra(pkg,'Geospatial Coverage')}}" />
+<meta name="AGLSTERMS.Jurisdiction" scheme="AGLSTERMS.AglsJuri" content="{{pkg.jurisdiction or h.get_pkg_dict_extra(pkg,'AGLSTERMS.Jurisdiction')}}" />
+<meta name="DCAT.Theme" scheme="VO" content="{% for x in pkg.groups %}{{x['title']}},{% endfor %}" />
+<meta name="DCAT.byteSize" content="{{res.get('size')}}" />
+<meta name="DCAT.mediaType" content="{{res.get('mimetype')}}" />
+<meta name="DCTERMS.Identifier" content="{{res.get('url')}}" />
+<meta name="DCTERMS.Title" content="{{res['name']}}" />
+<meta name="DCTERMS.Description" scheme="" content="{{res['description']}}" />
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+
+<meta name="DCTERMS.Format" content="{{res.format}}" />
+<meta name="DCTERMS.File.Size" content="{{res.size}}" />
+
+{% endblock -%}
+
+
+

--- /dev/null
+++ b/ckanext/datagovau/templates/user/dashboard_datasets.html
@@ -1,1 +1,16 @@
+{% ckan_extends %}
 
+{% block primary_content_inner %}
+  <h2 class="page-heading">{{ _('My Datasets') }}</h2>
+  {% if h.get_user_datasets(c.user_dict) %}
+    {% snippet 'snippets/package_list.html', packages=h.get_user_datasets(c.user_dict) %}
+  {% else %}
+    <p class="empty">
+      You haven\'t created/edited any datasets.
+      {% if h.check_access('package_create') %}
+        {% link_for _('Create one now?'), controller='package', action='new' %}
+      {% endif %}
+    </p>
+  {% endif %}
+{% endblock %}
+

--- /dev/null
+++ b/ckanext/datagovau/templates/user/read.html
@@ -1,1 +1,29 @@
+{% ckan_extends %}
 
+
+{% block primary_content_inner %}
+  <h2 class="hide-heading">
+    {% block page_heading %}{{ _('Datasets') }}{% endblock %}
+  </h2>
+  {% block package_list %}
+  {% if h.get_user_datasets(c.user_dict) %}
+    {% snippet 'snippets/package_list.html', packages=h.get_user_datasets(c.user_dict) %}
+  {% else %}
+
+    {% if c.is_myself %}
+      <p class="empty">
+        {{ _('You haven\'t created any datasets.') }}
+        {% if h.check_access('package_create') %}
+          {% link_for _('Create one now?'), controller='package', action='new' %}
+        {% endif %}
+      </p>
+    {% else %}
+      <p class="empty">
+        {{ _('User hasn\'t created any datasets.') }}
+      </p>
+    {% endif %}
+  {% endif %}
+  {% endblock %}
+{% endblock %}
+
+