[Bitrepository-devel] versionering af xsd'ere

Eld Zierau elzi at kb.dk
Wed May 4 13:42:25 CEST 2011


Hej Kåre

Så får du lige lidt på mail alligevel, så må vi se om telefonen skal yil hjælp også

Der er følgende udfordringer

1.     Da xsd'erne ligger i forskellige filer, og der ikke er omsluttende tag, så er skema versions begrænset mening i selve xsd'en

2.     Betydningen af schema versionen er tvetydig.

3.     Værdi af minVersion kan ikke specificeres i xsd'erne, så den skal ind på anden vis da den hører med

Ad 1:
Vi kan samle til en XSD med følgende f.eks. BitRepository.xsd
<xs:schema
  targetNamespace="http://bitrepository.org/BitRepository.xsd"
  attributeFormDefault="unqualified"
  elementFormDefault="qualified"

  xmlns="http://bitrepository.org/BitRepositoryData.xsd"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>

  <xs:import schemaLocation="xsd/BitRepositoryElements.xsd" namespace="http://bitrepository.org/BitRepositoryElements.xsd" />
  <xs:import schemaLocation="xsd/BitRepositoryData.xsd" namespace="http://bitrepository.org/BitRepositoryData.xsd" />
  <xs:import schemaLocation="xsd/BitRepositoryMessages.xsd" namespace="http://bitrepository.org/BitRepositoryMessages.xsd" />

  <xs:element name="Version">
    <xs:annotation><xs:documentation xml:lang="en">
    Schema version (1)
    </xs:documentation></xs:annotation>
  </xs:element>
</xs:schema>

Og så kan det diskuteres om det er et bitRep tag med version attribut, om vi definere værdi via konvention i schema eller om det ligges i xml ved siden af. Bemærk at denne ekstra xsd gør det nemmere for xmllint da denne kan køres med kommando
   xmllint --noout --schema ../../BitRepository.xsd *.xml
og behovet for at have eksempler I forskellige undermapper forsvinder.

Hvis man ser på METS, så har de under mapper for forskellige versioner og så er sidste nye version under hovedkataloget også, - jeg ved ikke om det kan bruges til noget.
  http://www.loc.gov/standards/mets/version19/mets.xsd = http://www.loc.gov/standards/mets/mets.xsd
  http://www.loc.gov/standards/mets/version18/mets.xsd
  http://www.loc.gov/standards/mets/version17/mets.xsd
  ...

Ad 2.
Vores udgangspunkt var at schema version ikke skulle ændre sig, hvis det ikke var nødvendigt med ny kode for at bruge den. Dette er ikke tilfældet i det der er beskrevet ovenfor - her vil schema version ændre sig for alle ændringer. Spørgsmålet er så om der er tale om to forskellige former for skema versioner.

Ad 3.
Vi skal have en måde at definere minVersion sammen med skemaerne, evt. i separat xml som ligger sammen med skemaerne?

I det hele taget skal der tænkes meget nøje over hvordan kataloger med de forskellige xsd'er (og evt. xml'er) laves.

Mvh. Eld

[http://support.kb.dk/images/kb_logo.jpg]

Det Kongelige Bibliotek
Nationalbibliotek og Københavns Universitetsbibliotek

Eld Zierau
IT-konsulent | Digital Preservation Specialist

Det Kongelige Bibliotek | The Royal Library
Afdelingen for Digital Bevaring | Digital Preservation
P.O. Box 2149 | DK-1016 København K
tel +45 3347 4690 | Fax +45 3393 2218 | elzi at kb.dk<mailto:elzi at kb.dk> | www.kb.dk<http://www.kb.dk>

Besøgsadresse | Visiting address | Søren Kierkegaards Plads 1
Leveringsadresse | Delivery address | Christians Brygge 8 | 1219 København K

EAN 5798 000 79 52 97 | Bank 0216 4069032583 | CVR 28 98 88 42
IBAN DK2002164069032583 | Swiftcode DABADKKK


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ml.sbforge.org/pipermail/bitrepository-devel/attachments/20110504/10bd02dd/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 14433 bytes
Desc: image001.jpg
URL: <http://ml.sbforge.org/pipermail/bitrepository-devel/attachments/20110504/10bd02dd/attachment-0001.jpg>


More information about the Bitrepository-devel mailing list