Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

comes from AdLib collection management software and is better structured

There are currently no attachments on this page.


  • see [^Rembrandt Database 2-23-09.pdf] for a description of this project
  • We got 2 sample XMLs (a record list and an individual record about a painting. Still don't have the schema
  • tags are in Dutch but often there are English comments following; and a dictionary will help understanding
  • many values are bilingual

AdLib Correspondence

20110917 Vlado to Bert Degenhart Drenth (AdLib CEO) cc BM, SSL, Mariana
Drenth replied the same day, with cc to
Bert Warmelink, Reinier van 't Zelfde, Wietske Donkersloot

We're starting work on the project for the British Museum. One of the tasks is to convert the Rembrandt project database to CIDOC CRM and import it to ResearchSpace. Dominic Oldman (IS Development Manager of BM) sent us some sample records from Rembrandt (attached), and I noticed they are exported from your system: the root is <adlibXML>.

  1. are you involved in the Rembrandt project, or they only use your system?
    • We are involved in the Rembrandt project. We made the UI for the web application and RKD have used our software to create the RKD technical database. The RKD technical database is a database that has been created by the RKD themselves and has been used as the basis for the Rembrandt database. It is currently hosted at the RKD. From our side a programmer has worked on this who has left in the meantime. His colleague
      Ilya Gorbylev has taken over his responsibilities in this project.
  2. could you send us the schema of the Rembrandt XML export?
    • The RKD can send you the data dictionary of the database. Then you can also see if all the tags have translations. Furthermore you can probably access the data through the Adlib API online. The RKD must open their system to allow you access. Using the API you can query the live system and get data out of it (rather than exporting). Technical information on the API can be found on
  3. would it be possible to export using English tags? (We don't speak Dutch). There are English XML comments in the file (very useful) but the conversion will be more robust if the tags are in English.
    • Sure, but that’s up to the RKD to decide.
  4. does AdLib have conversion/export to some standard format (e.g. LIDO) that can be used by Rembrandt? It would be higher value to BM if we develop an import from a standard format.
    • We do support LIDO for object information and have a standard output format for our Adlib Museum System. But as I already have explained the Rembrandt database has been created by the RKD itself. As such it does not map to LIDO using our Standard XSLT transformation. Again, this is up to the RKD to change this.

Thanks in advance for your cooperation and best regards!

  • No problem, please let me know if you need more help or information

RKD Correspondence

9/26/2011, Jan Teuben (Application and databasemanager) cc Wietske Donkersloot
I will shortly introduce myself: my name is Jan Teuben and I'm working as an application and database manager at RKD, especially for the Rembrandt Database project.
Last week I got an email reply from Adlib, about your questions for Adlib, forwarded and I'm curious if I could maybe help you if you still have questions regarding the Rembrandt Database project. Let me know if I could help.

Vlado: Hi Jan, thanks for your kind reply! I have the following questions:
0. Has the export changed (or will it change) significantly from the attached?
1. Can you send me a current export of the same record priref=2926 "De badende Suzanna" ?
2. Do you have a schema of the Rembrandt XML export and can you send it?
If not: we can figure out all tags by looking at a complete set of export files (which we don’t yet have), but if the schema is a bit complicated (e.g. xsd:choice) we can't figure it out
3. Is your extension inside <object_number_RKDtechnical>?
Does everything outside this element come from Adlib's standard system?
4. Can we assume that all text inside <object_number_RKDtechnical> is in EN,
except explicitly tagged values such as <value lang="nl-NL" invariant="false">paneel (eikenhout)
5. Can we assume that all text outside <object_number_RKDtechnical> is in NL?
The tag names there are in Dutch.
6. Austin Nevin said today that you've added EN translations to the NL part, is that true?
Have you done it with explicitly tagged values, e.g. <value lang="nl-NL">... and <value lang="en-US"> ...
7. What to do when the same piece of data is in both parts (inside and outside <object_number_RKDtechnical>) ?
If the data is always consistent, then we can combine (when multiple values are appropriate) or pick one (when a single value is needed).

8. Which thesauri do you use?
We assume RKD locations, people, concepts, artworks, IconClass
but would like you to confirm explicitly
9. Is it possible to make an export with the ID's (codes/URIs) of the controlled fields, in addition to the text label?
10. If not: can you list for each controlled field:
the thesaurus it came from, which branch (parent), whether it’s immediate child or descendant of any depth?
We need this info so we can lookup and store the ID.
99. I have some field-specific questions in the last excel column,
but we want to elaborate them before you set out to answer them

98. <>: Is this the <collectienaam> of the last effective <collectie>?
(since <collectie> can be multiple while <> looks to be single)
If so, how exactly we define "last effective"? Options:

  • last in XML order
  • empty <einddatum_in_collectie>
  • largest or empty <einddatum_in_collectie>

Sample Record Analysis

Full Sample Record

I've simplified the XML sample record to a table for easier comprehension, by using (all hail!) Emacs and these commands:

key command from to explanation
M-% query-replace </.*?>   remove closing tags
C-u C-x C-o my-delete-blank-lines     remove empty lines
M-% query-replace >< > < add a space here: <empty-tag/><!-- English comment>
M-= query-replace-regexp ^(TAB*) \,(format "%dTAB%s" (length \1) (make-string (length \1) ?-)) replace leading tabs with N (tag level) and leading dashes (to conserve space while still showing the hierarchy)
M-= query-replace-regexp >(.*)(<!-- (.*) -->) > \3TAB\1 move English comment right after the tag, put element content in new column
M-= query-replace-regexp >([^ ]) >TAB\1 put remaining element contents in new column


Reduced Sample Record

I've reduced the sample by leaving only 1 instance of each element. In many cases I merged elements so the remaining one has all possible sub-elements (which may lead to non-sensical data, eg begindatum_in_collectie>einddatum_in_collectie).
This can be used as the frame on which to discuss and later describe the CRM mapping

viewxls: The viewfile macro is unable to locate the attachment "rdb-sample-reduced.xls" on this page
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.