Skip to content

Commit 9a1a0d6

Browse files
committed
doc: packaging: add ELN implementation note in appendix
Add a note about the ELN file format and how it contains a valid RO-Crate inside a ZIP archive.
1 parent d617776 commit 9a1a0d6

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

docs/_includes/references.liquid

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ and is also rendered into the end of the PDF.
2626
[DataCite Schema]: https://schema.datacite.org/
2727
[DataCite Schema v4.0]: https://schema.datacite.org/meta/kernel-4.0/metadata.xsd
2828
[DCAT]: https://www.w3.org/TR/vocab-dcat/
29+
[ELN]: https://the.elnconsortium.org/
2930
[Exif]: https://en.wikipedia.org/wiki/Exif
3031
[Flattened Document Form]: https://json-ld.org/spec/latest/json-ld/#flattened-document-form
3132
[FRAPO]: http://www.sparontologies.net/ontologies/frapo

docs/_specification/1.2-DRAFT/appendix/implementation-notes.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,15 @@ When implementing tools to work with RO-Crate it is not necessary to use JSON-LD
4646

4747
## Combining with other packaging schemes
4848

49-
RO-Crates may co-exist with other packaging schemes, such as [BagIt] using two general approaches; either (a) _adding_ RO-Crate into a package as part of the payload or (b) _wrapping_ another kind of package. Examples using BagIt follow.
49+
RO-Crates may co-exist with other packaging schemes, such as [BagIt] or [ELN] using two general approaches; either (a) _adding_ RO-Crate into a package as part of the payload or (b) _wrapping_ another kind of package.
50+
51+
### ELN examples
52+
53+
An "ELN" archive (with file extension **.eln**, see [IANA assignment](https://www.iana.org/assignments/media-types/application/vnd.eln+zip) and [specification](https://github.com/TheELNConsortium/TheELNFileFormat/blob/master/SPECIFICATION.md)), is a valid RO-Crate packaged in a certain way. It is a ZIP file that contains a folder, and this folder _is_ the RO-Crate and contains the `ro-crate-metadata.json` file. See [Structure of the archive](https://github.com/TheELNConsortium/TheELNFileFormat/blob/master/SPECIFICATION.md#structure-of-the-archive) from the specification.
54+
55+
As such, when processing a **.eln** file, one needs to extract the ZIP archive, look for the only folder present at root directory of the ZIP archive, and process its content as a normal RO-Crate.
56+
57+
### BagIt examples
5058

5159
BagIt is described in [RFC 8493]:
5260

@@ -59,7 +67,7 @@ BagIt is described in [RFC 8493]:
5967
BagIt and RO-Crate have largely separate concerns - RO-Crate is focussed on rich
6068
metadata, the semantics of data, while BagIt is about reliable transfer.
6169

62-
### Adding RO-Crate to Bagit
70+
#### Adding RO-Crate to Bagit
6371

6472
RO-Crate can be combined with BagIt simply by placing the RO-Crate files
6573
within the BagIt payload (`data/`) directory.
@@ -136,14 +144,14 @@ measures, e.g.
136144
`gpg --detach-sign --armor --output tagmanifest-sha512.txt.asc tagmanifest-sha512.txt`
137145
in combination with a secure PGP key exchange or equivalent trust network.
138146

139-
#### Base URI in BagIt
147+
##### Base URI in BagIt
140148

141149
The arcp specification suggests how [BagIt UUID identifiers] can be used to calculate the base URI of a bag, see section [Establishing a base URI inside a ZIP file](relative-uris#establishing-a-base-uri-inside-a-zip-file). For this purpose it is RECOMMENDED that `bag-info.txt` includes a fresh UUID like:
142150

143151
External-Identifier: urn:uuid:24e51ca2-5067-4598-935a-dac4e327d05a
144152

145153

146-
#### Referencing external files
154+
##### Referencing external files
147155

148156
The [BagIt fetch file](https://www.rfc-editor.org/rfc/rfc8493.html#section-2.2.3) MAY
149157
be used to reference files to be downloaded into particular `data/` paths

0 commit comments

Comments
 (0)