Commit 94fce3fd authored by mrodzis's avatar mrodzis 🌿
Browse files

Merge branch '10-move-x-prefixed-info-to-metadata-object' into 'main'

Resolve "move x- prefixed info to Metadata Object"

Closes #10

See merge request !9
parents 4586542b 7fa3058d
......@@ -114,10 +114,7 @@ It is REQUIRED to be served at the corresponding [endpoint](#manifest).
| textapi | 1 | semver | version number satisfied by the implementation |
| id | 1 | URI | URI pointing to this manifest |
| label | 1 | string | human-readable name or title |
| x-editor | + | \[[Actor Object](#actor-object)\] | one or more personal entities responsible for the edition |
| x-date | 1 | string | age determination of the manuscript. Defaults to "unkown". |
| x-origin | 1 | string | place of the manuscript's origin. Defaults to "unkown". |
| x-location | 1 | string | place or institution where the manuscript is currently held. Defaults to "unkown". |
| metadata | 1 | \[[Metadata Object](#metadata-object)\] | contains the project specific info about editors, creation date/place and current location of a manuscript/book |
| sequence | 1 | \[[Sequence Object](#sequence-object)\] | a sequence of `items` |
| license | 1 | \[[License Object](#license-object)\] | license under which the resource MUST be used |
| annotationCollection | *1* | URI | URI pointing to an [Annotation Collection](https://www.w3.org/TR/annotation-model/#annotation-collection) for the complete manifest |
......@@ -153,6 +150,16 @@ The `type` MUST be `page`.
| id | ? | string | internal identifier |
| idref | * | [Idref Object](#idref-object) | authority files related to the person |
#### Metadata Object
A set of metadata describing the source or its context.
Mainly used for key-value pairs.
| Field Name | Cardinality | Type | Description |
|----|----|----|----|
| key | 1 | string | label |
| value | 1 | string | property |
### Idref Object
| Field Name | Cardinality | Type | Description |
......@@ -210,12 +217,13 @@ Within a manifest it SHOULD contain items exclusively.
| 1.0.0 | 2020-07-14 | initial version |
| 1.1.0 | 2020-08-25 | add more metadata for manifests/editions (`x-editor`, `x-date`, `x-origin`, `x-location`)|
| 1.1.1 | 2021-01-18 | update examples concerning Title Object |
| 1.2.0 | 2021-02-04 | move extensions to Metadata Object |
## Appendix
### Class Diagram
![UML class diagram](https://yuml.me/64bc7976.png)
![UML class diagram](http://yuml.me/c315bafe.png)
```yuml
// Ahiqar TextAPI
......@@ -224,7 +232,7 @@ Within a manifest it SHOULD contain items exclusively.
// classes
[Collection|entrypoint|- textapi 1; -description 1; -annotationCollection 1 {bg:yellow}]
[Manifest|entrypoint| -textapi 1; -id 1; -label 1; -x-editor 1; -x-date 1; -x-origin 1; -x-location 1; -license 1; -annotationCollection 1 {bg:yellow}]
[Manifest|entrypoint| -textapi 1; -id 1; -label 1; -metadata 1; -license 1; -annotationCollection 1 {bg:yellow}]
[Item| -textapi 1; -type 1; -n 1; -lang 1; -langAlt ?; -content 1; -content-type 1; -image ?; -annotationCollection 1]
......@@ -296,7 +304,7 @@ Within a manifest it SHOULD contain items exclusively.
"type": "collection"
},
{
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r132/3r9ps/manifest.json",
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r132/arabic-karshuni/manifest.json",
"type": "collection"
}
]
......@@ -305,35 +313,40 @@ Within a manifest it SHOULD contain items exclusively.
#### manifest.json
`https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r178/manifest.json`
`https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r178/manifest.json`
```json
{
"textapi": "1.8.0",
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r178/manifest.json",
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r178/manifest.json",
"label": "Cod. ARABE 3637",
"x-editor": [
"metadata": [
{
"key": "Editors",
"value": "Simon Birol, Aly Elrefaei"
},
{
"key": "Date of creation",
"value": "1772"
},
{
"role": "editor",
"name": "Simon Birol"
"key": "Place of origin",
"value": "Aleppo, Syria"
},
{
"role": "editor",
"name": "Aly Elrefaei"
"key": "Current location",
"value": "Bibliothèque Nationale de France, France"
}
],
"x-date": "1772",
"x-origin": "@ORIGIN_CITY@, ",
"x-location": "Bibliothèque Nationale de France, France",
"license": "CC0-1.0",
"annotationCollection": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r178/annotationCollection.json",
"annotationCollection": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r178/annotationCollection.json",
"sequence": [
{
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r178/140/latest/item.json",
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r178/140/latest/item.json",
"type": "item"
},
{
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r178/141/latest/item.json",
"id": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r178/141/latest/item.json",
"type": "item"
},
...
......@@ -343,7 +356,7 @@ Within a manifest it SHOULD contain items exclusively.
#### item.json
`https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r1gh/140/latest/item.json`
`https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r1gh/140/latest/item.json`
```json
{
......@@ -376,6 +389,6 @@ Within a manifest it SHOULD contain items exclusively.
"notes": "Provided by some other data source."
}
},
"annotationCollection": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/3r9ps/3r1gh/140/annotationCollection.json"
"annotationCollection": "https://ahikar.sub.uni-goettingen.de/api/textapi/ahikar/arabic-karshuni/3r1gh/140/annotationCollection.json"
}
```
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment