|
||
---|---|---|
classes | ||
functions | ||
inc | ||
l10n | ||
public | ||
scripts | ||
src | ||
tests | ||
.git.template | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
composer.json | ||
favicon.ico | ||
LICENSE | ||
phpcs.xml | ||
phpstan-baseline.neon | ||
phpstan.neon | ||
phpunit.xml | ||
README.md |
Validator for the standard CSV format for imports to museum-digital
The validation and transformation service for import CSV files to an instance of museum-digital is centrally hosted at https://csvxml.imports.museum-digital.org/. This repository contains
a) The statically generated progressive web app that is being served b) The simple static page generator for generating it
CSVXML as a "Format" / Purpose of This Tool
Many smaller museums still do not use a dedicated application for managing their collections. This often leads to the need to import Excel or CSV tables. The format described and validated by the present tool helps museums and administrators who want to import data from such sources to pre-prepare their import data. If the data is not yet recorded, this tool allows the generation of a CSV file with the expected table headings. If an existing CSV file is to be imported, users can rename their table headings to the ones listed in CSVXML and then validate their import data using this application.
Finally, this tool will return a ZIP file containing one XML file per object in the validated CSV file. The application works completely on the client side, meaning that no data is uploaded to the server as the import data is validated. This also allows for offline use.
To-Do
- Add missing translation files for explanations
- Translations and explanations for most fields exist in the musdb translation files. They now only need to be entered at the relevant positions in
CsvxmlAvailableFields.php
.
- Translations and explanations for most fields exist in the musdb translation files. They now only need to be entered at the relevant positions in
Deployment
- Clone this repository and set up git subrepositories
- Before doing this, ensure that an alias
gitea
is available in your SSH config (~/.ssh/config
)
- Before doing this, ensure that an alias
- Point a web server to serve the
/public
subdirectory
Development
To update, run scripts/compile.php
.
All relevant development files can be found in /src
. CsvxmlAvailableFields.php
is the central file used for generating one large array defining the allowed table headings / fields and their relevant accompanying data (e.g. explanations).
Dependencies
License
This project is licensed under the AGPL License. See the LICENSE file for the full license text.