GithubHelp home page GithubHelp logo

dilcisboard / e-ark-csip Goto Github PK

View Code? Open in Web Editor NEW
11.0 9.0 5.0 13.29 MB

E-ARK Common Specification for Information Packages

Home Page: http://earkcsip.dilcis.eu

License: Creative Commons Attribution 4.0 International

Ruby 4.86% Shell 95.14%
archiving specification standard oais

e-ark-csip's Introduction

E-ARK Common Specification for Information Packages

Quick Start

Layout

E-ARK-CSIP/
Project root
  |
  |- README.md
  |  This documentation file.
  |
  |- index.md
  |  The Markdown source for the site home page.
  |
  |- archive/
  |  Archive of old versions of the specification (possibly schema, see TODOs).
  |
  |- examples/
  |  Sample information packages showing the Common Specification in use.
  |
  |- profile/
  |  The CSIP METS Profile and supporting documentation.
  |
  |- schema/
  |  DILCIS METS extensions and defined vocabularies for the CSIP.
  |
  |- specification/
  |  The Markdown source for the common specification.
  |
  |- utils/
     Tools and utilities used to create and QA the specification documents.

Publication Workflow

Requirement tables from Profile

Prepare final copy Markdown

Create and test web site

Git

Master branch

The last public release of the specification.

Integration branch

The in progress working branch for an up coming version.

/rel/... branches

Snapshots of current and old releases,

Maintenance

Create new git branch

  1. From the repo home page ensure that the branch you wish to copy, in this case master, is selected.
  2. Hit the pull down button and type the new branch name. In the image below we're creating the rel/2.0-draft branch.
  3. Click the "Create branch: rel/2.0-draft" panel. The name will be that of the branch you're creating. Check the "from 'master'" tag to ensure you're cloning the branch you intend, in this case master.

Release branch from master

TODO ?

  • Decide if we want to retain old schema in the archive. Perhaps the archive should store previous versions of the specification site?
  • Travis build and test
  • build and test requirement table generator
  • test generation of requirements and site
  • broken links test for site
  • spell check for text, if feasible and useful
  • Navigation for specification documents
    • Possibly via GH pages YAML metadata

e-ark-csip's People

Contributors

andersbonielsen avatar carlwilson avatar drjaime avatar hsilva-keep avatar karinbredenberg avatar koit avatar kuldaraas avatar philliptommerholt avatar shsdev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

e-ark-csip's Issues

dmdSec/mdRef/@xlink:type

Rewording of the text and splitting to two elements.

One must saying its mandatory and that comes from xlink
One must saying the type is simple

dmdSec/mdWrap

We don't recommend the use so we should not have it described here. Its up to the local implementation to specify it. We can leave this first element saying its an option that needs to be evaluated in the implementation and remove all the rest of the elements regarding mdWrap.

metsHdr/agent/note

In the new version released this week you can add an extra attribute to it so it will be possible to create a type of note stating it is the mandatory version attribute.

Add the typing attribute and a vocabulary for it.

dmdSec/mdRef/@LOCTYPE

Split to two requirements. One saying the element must be used. One saying it its recommended to use the url.

mets/@PROFILE

Description needs to be rewritten so its say the URL of the used profile.

Use of colon in METS identifiers makes XML schema validation fail

Requirement from section 5.2 of the document that makes XML schema validation fail

The ID data type in XML does by default not allow for identifiers which start with a number. To
overcome this limitation and in order to allow for interoperable package identification all
identifiers within Common Specification metadata MUST start with an identifier prefix, followed by
a colon, and the actual value of the identifier.

Example: OBJID="UUID:5d378f86-28a1-41d8-a2b9-264b10fbd511"

Evidence

Using java:

org.xml.sax.SAXParseException; systemId: file:/tmp/temp3503566096366743320/METS.xml; lineNumber: 11; columnNumber: 60; cvc-datatype-valid.1.2.1: 'UUID:B5B90536-D4C6-4A72-81E2-F4568BBF2370' is not a valid value for 'NCName'.

Using bash:

$> xmllint --noout METS.xml --schema schemas/mets.xsd 
METS.xml:13: element dmdSec: Schemas validity error : Element '{http://www.loc.gov/METS/}dmdSec', attribute 'ID': 'UUID:B41AA4B3-17D1-4D89-83B2-17420F43D85B' is not a valid value of the atomic type 'xs:ID'.
METS.xml:14: element mdRef: Schemas validity error : Element '{http://www.loc.gov/METS/}mdRef', attribute 'ID': 'UUID:CD838CE3-F467-4828-88EE-6A499EE6C160' is not a valid value of the atomic type 'xs:ID'.
METS.xml:16: element dmdSec: Schemas validity error : Element '{http://www.loc.gov/METS/}dmdSec', attribute 'ID': 'UUID:4847F90C-AC60-4D55-A579-2ECF736C33C6' is not a valid value of the atomic type 'xs:ID'.
...

Reference documentation

fileSec and structMap update

Current fileSec and structMap require the use of "Common Specification" labels. As semantically "Common Specification" is not to be used any more then do we need to change the use of labels?

Splitting

the splitting part needs to be updated!

dmdSec/mdRef/@xlink:href

Splitting of requirement needed.

First one saying the it gives the file

Second one moved to the overall demands and word changes so its mandatory to have a way of knowing where your resources are.

mets/@ID

Remove element? Its optional and no extra requirements are added.

mets/metsHdr

The OAISPACKAGETYPE is mandatory which should give that this element is a MUST

metsHdr/agent

Rewrite this part so we get the demands for the mandatory agent and then leave it open of other uses of the agent in other implementations?

metsHdr/@ID

Remove? No additional demands and its optional.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.