Print

Print


Hi Brian,
Hi everybody,

Brian Tingle wrote:

>What about some sort of XPATH / XPOINTER based inclusion mechanism? 
>
Great ;-)
Xpointer and Xpath is a very good mechanism to link sementical related 
elements; but anyhow we need to know where to store the inital metadata 
and where to store the link. It should be one of  the aims that 
people/programs who are just interpreting the METS or just interpreting 
the PREMIS should get as much information as possible without storing 
information redundant.

- structural information:
I would like - as probably many others as well - want to store 
structural information in METS. Premis provides an own 
relationship-element, which might also describe other relationships than 
just structural ones.
Therefore I would not suggest to remove this element - but I would like 
to suggest using METS to describe an object with it's relations, if METS 
offers possibilites for it (as it does for structural relationships). 
Other relationships, which cannot be handled by METS I would prefer 
using the relationship element from Premis.
It might be difficult here at all to avoid redundancies; therefore I 
would not provide links between METS and PREMIS for redundant information.

- linking from Premis (e.g. checksum information):

METS provides already a possibility to store checksums for files. In 
this case I would like to link the <fixity> information from Premis with 
the CHECKSUM attribute in METS. Theoretically you could link both ways - 
from METS to PREMIS or from PREMIS to METS.
As the checksum is attached to the file very closely, I would like to 
keep in the file section of METS and point from PREMIS to METS.

In this case we need to have a field, in which we might store an 
xpointer. There would be several possibilities to store an xpointer: To 
distinguish if the content of the element is a value or a reference to a 
value, the PREMIS schema should contain an attribute.

As the messageDigestOriginator is not stored in METS, it should be 
amended in the <premis:fixity> element, as it is mandatory according to

In the end it might look somehow like the following example.
<fixity>
    <messageDigestAlgorithm reftovalue="true"> xpointer to CHECKSUMTYPE 
element in mets:file element</messageDigestAlgorithm>
    <messageDigest reftovalue="true"> xpointer to CHECKSUM element in 
mets:file element </messageDigest>
    <messageDigestOriginator>...</messageDigestOriginator>
</fixity>

- linking to Premis:
Linking to Premis might be more complicate almost none of the premis 
elements provide a possibiliy to attach xml identifiers to this element. 
Linking can be done using xpath, but as METS/PREMIS files might become 
very big and complex, chances are high that after modifying a file (e.g. 
by adding new data, new metadata sections), that the path to the 
appropriate PREMIS element would not stay the same.
Are there any objections not to have optional ID attributes for every 
premis element. These ID attributes would be xml-ids.

As we are currently discussing the METS 1.5 schema - see Brians mail on 
METS mailing list from end of july:
<file>

    <Flocat />            <!-- location of *tar.gz file -->
    <transformFile /> <!-- Instructions on reversing gzip -->
    <transformFile /> <! Instructions on reversing tar -->
    <file />                 <!-- first embedded file -->
    <file >                  <!-- second embedded file -->
         <stream />      <!-- first embedded stream -->
         <stream />      <!-- second embedded stream -->
</file>

For the instruction how to transform a file (the <transformFile> element) it would be great to point into a PREMIS enviroment information; i would prefer doing this using IDs as well.


As there are some possibilities linking from and to premis, I don't want to suggest, how we should link things, but for me it seems that we need mechanisms to make linking easier. 


Ciao
Markus