site: add clusters and modules

Re-organize content and navigation around the concept of clusters
and modules. Elements that have suggested field names are displayed
prominently near the top of each cluster.

I am still exploring how to present the clusters and modules better.
Perhaps as a badge on each element?
This commit is contained in:
Alan Orth 2021-11-26 12:00:51 +02:00
parent 4827b2b0d4
commit 10f24ad093
Signed by: alanorth
GPG Key ID: 0FB860CC9C45B1B9
2 changed files with 74 additions and 11 deletions

View File

@ -11,11 +11,14 @@
<nav id="navbar-navigation" class="navbar navbar-light bg-light flex-column align-items-start p-3"> <nav id="navbar-navigation" class="navbar navbar-light bg-light flex-column align-items-start p-3">
<a class="navbar-brand" href="#">Navigation</a> <a class="navbar-brand" href="#">Navigation</a>
<nav class="nav nav-pills flex-column"> <nav class="nav nav-pills flex-column">
<a class="nav-link" href="#metadata">Metadata</a> <a class="nav-link" href="#clusters-and-modules">Clusters and Modules</a>
<a class="nav-link" href="#metadata-elements">Metadata Elements</a>
<nav class="nav nav-pills flex-column"> <nav class="nav nav-pills flex-column">
<a class="nav-link ms-3 my-1" href="#required-metadata">Required Metadata</a> <a class="nav-link ms-3 my-1" href="#cluster-global">Global</a>
<a class="nav-link ms-3 my-1" href="#optional-metadata">Optional Metadata</a> <a class="nav-link ms-3 my-1" href="#cluster-certification">Certification</a>
<a class="nav-link ms-3 my-1" href="#cluster-impact">Impact</a>
</nav> </nav>
<a class="nav-link" href="#schema-extensions">Schema Extensions</a>
<a class="nav-link" href="#feedback">Feedback</a> <a class="nav-link" href="#feedback">Feedback</a>
</nav> </nav>
</nav> </nav>
@ -26,8 +29,31 @@
<h1>ISEAL Core Metadata Set Specification</h1> <h1>ISEAL Core Metadata Set Specification</h1>
<p class="lead">This page provides a reference specification for the ISEAL Core Metadata set (ISEAL Core).</p> <p class="lead">This page provides a reference specification for the ISEAL Core Metadata set (ISEAL Core).</p>
<p>ISEAL Core is a set of structured terms and vocabularies that can be used as metadata to describe, share, and reuse different digital resources across the ISEAL Community and broader set of stakeholders. The resources described using the ISEAL are those that sustainability systems typically collect, curate, manage, use, publish and archive. They may be datasets, published research, certificates, videos, images, maps, or other organizational documentation.</p> <p>ISEAL Core is a set of structured terms and vocabularies that can be used as metadata to describe, share, and reuse different digital resources across the ISEAL Community and broader set of stakeholders. The resources described using the ISEAL are those that sustainability systems typically collect, curate, manage, use, publish and archive. They may be datasets, published research, certificates, videos, images, maps, or other organizational documentation.</p>
<h2 id="metadata">Metadata</h2> <h2 id="clusters-and-modules">Clusters and Modules</h2>
<p>ISEAL Core currently uses elements from the following standard metadata schemas:</p> <p>Metadata elements in ISEAL Core are organized around three <em>clusters</em> and ten <em>modules</em>.</p>
<ul>
<li>Global</li>
<ul>
<li>Coverage</li>
<li>Form</li>
<li>Provenance</li>
<li>Scope</li>
<li>Status</li>
</ul>
<li>Certification</li>
<ul>
<li>Certificate</li>
<li>Certificate Holder, Owner or Certified organization</li>
<li>Certified Resource or Site</li>
<li>Certifying Body</li>
</ul>
<li>Impact</li>
<ul>
<li>Impact</li>
</ul>
</ul>
<h2 id="metadata-elements">Metadata Elements</h2>
<p>ISEAL Core uses elements from the following standard metadata schemas:</p>
<ul> <ul>
<li><a href="https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-3">Dublin Core Elements</a> with the <code>dc</code> namespace prefix. These were <a href="http://www.dlib.org/dlib/July95/07weibel.html">originally designated in 1995</a> and are considered deprecated and superseded by Dublin Core Terms. Due to legacy code in the DSpace software we must still use some of these.</li> <li><a href="https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-3">Dublin Core Elements</a> with the <code>dc</code> namespace prefix. These were <a href="http://www.dlib.org/dlib/July95/07weibel.html">originally designated in 1995</a> and are considered deprecated and superseded by Dublin Core Terms. Due to legacy code in the DSpace software we must still use some of these.</li>
<li><a href="https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-2">Dublin Core Terms</a> with the <code>dcterms</code> namespace prefix. These contain the original Dublin Core Terms and add others. As of 2008 these supercede the original Dublin Core Elements.</li> <li><a href="https://www.dublincore.org/specifications/dublin-core/dcmi-terms/#section-2">Dublin Core Terms</a> with the <code>dcterms</code> namespace prefix. These contain the original Dublin Core Terms and add others. As of 2008 these supercede the original Dublin Core Elements.</li>
@ -37,18 +63,51 @@
<li><strong>Encoding</strong>: metadata should be encoded in UTF-8 to ensure correct representation of international characters.</li> <li><strong>Encoding</strong>: metadata should be encoded in UTF-8 to ensure correct representation of international characters.</li>
<li><strong>Applicability</strong>: metadata should describe what the item is, <em>not what it isn't</em>. If a metadata element is not applicable you should not use it. Do not enter "N/A"!</li> <li><strong>Applicability</strong>: metadata should describe what the item is, <em>not what it isn't</em>. If a metadata element is not applicable you should not use it. Do not enter "N/A"!</li>
</ul> </ul>
<h3 id="required-metadata">Required Metadata</h3> <h3 id="cluster-global">Global Cluster</h3>
<p>
{{/* Note: we need to use two ranges for each cluster because it is */}}
{{/* not possible to re-use Hugo's paginate object unless you use */}}
{{/* the same exact arguments each time. */}}
{{ range where (where site.RegularPages "Type" "terms") "Params.required" "==" true }} <!-- TODO: note that not all terms have field names so this list is not exclusive! -->
{{ range where (where site.RegularPages "Type" "terms") "Params.cluster" "==" "Global" }}
{{- if .Params.field -}}
<a class="btn btn-sm btn-outline-primary m-1" href="#{{ .Params.slug }}">{{ .Params.field }}</a>
{{- end -}}
{{ end }}
</p>
{{ range where (where site.RegularPages "Type" "terms") "Params.cluster" "==" "Global" }}
<div class="col"> <div class="col">
{{ .Render "term" }} {{ .Render "term" }}
</div> </div>
{{ end }} {{ end }}
<h3 id="optional-metadata">Optional Metadata</h3> <h3 id="cluster-certification">Certification Cluster</h3>
<p>These elements are optional, but we strongly suggest that you include as many as you can.</p> <p>
{{ range where (where site.RegularPages "Type" "terms") "Params.cluster" "==" "Certification" }}
{{- if .Params.field -}}
<a class="btn btn-sm btn-outline-primary m-1" href="#{{ .Params.slug }}">{{ .Params.field }}</a>
{{- end -}}
{{ end }}
</p>
{{ range where (where site.RegularPages "Type" "terms") "Params.required" "==" false }} {{ range where (where site.RegularPages "Type" "terms") "Params.cluster" "==" "Certification" }}
<div class="col">
{{ .Render "term" }}
</div>
{{ end }}
<h3 id="cluster-impact">Impact Cluster</h3>
<p>
{{ range where (where site.RegularPages "Type" "terms") "Params.cluster" "==" "Impact" }}
{{- if .Params.field -}}
<a class="btn btn-sm btn-outline-primary m-1" href="#{{ .Params.slug }}">{{ .Params.field }}</a>
{{- end -}}
{{ end }}
</p>
{{ range where (where site.RegularPages "Type" "terms") "Params.cluster" "==" "Impact" }}
<div class="col"> <div class="col">
{{ .Render "term" }} {{ .Render "term" }}
</div> </div>

View File

@ -3,7 +3,7 @@
<thead> <thead>
<tr class="table-secondary"> <tr class="table-secondary">
<th colspan="2"> <th colspan="2">
{{- .Params.title | markdownify -}} <span class="">{{ .Params.title | markdownify }}</span>
{{- with .Params.required -}} {{- with .Params.required -}}
<div class="badge-required"> <div class="badge-required">
<span class="badge bg-primary align-middle">Required</span> <span class="badge bg-primary align-middle">Required</span>
@ -17,6 +17,10 @@
<td class="col-2 field-name">Label</td> <td class="col-2 field-name">Label</td>
<td>{{ .Name | markdownify }}</td> <td>{{ .Name | markdownify }}</td>
</tr> </tr>
<tr>
<td class="col-2 field-name">Module</td>
<td>{{ .Params.module | markdownify }}</td>
</tr>
{{ with .Params.description }} {{ with .Params.description }}
<tr> <tr>
<td class="col-2 field-name">Definition</td> <td class="col-2 field-name">Definition</td>