Hi all,
also here at CILEA we have implemented local customizations to allow DSpace to use the University staff database as authority file for "contributors" metadata.
To easy accomplish the requirements of the national research database we store in dc.contributor.* only people of the specific university.
Our approach is more close to the Larry proposal, we have made not modification to the main code: only store in the text_value also an ID key using a fixed pattern, ie TEXT VALUE (KEY ID)
see http://surplus-unibic.cilea.it/oa/handle/10281/2160?mode=full
This allow the browse system to work also with homonym, see the first two entries here
http://surplus-unibic.cilea.it/oa/browse?type=author&order=ASC&rpp=20&starts_with=CAMPIONE%2C+MARCELLO
the number within the parenthesis is the internal key of the authority.

At the moment, the only modification need was related to the submission UI where we have added a new "input type" in the input-forms that is render in the UI as an autocomplete box (we have used the ajaxtag library). Edit metadata by administrator needs care.
Our code is very related to our local needs, but we are interested to work on this topic too and we can use our local requirements as testbed for the coming approach (we work on JSPUI).
About the Christophe proposals I want highlight the following things:
1) IMHO is danger resolve at runtime any controlled key - if the authority is a remote service is can go offline or became a bottleneck; Perhaps we could have options to enable/disable runtime resolution on "authority" basis
2) use of DSpace community/collection to store some authorities is close to the new Entity approach in DSpace 2.0 (as far I know) - so could be useful provide an out-of-box implementation for the plugin that allow the use of dspace object with possibility to limit the scope within a specific community/collection and to a specific type of object (communities, collections and items)
Andrea


Christophe Dupriez ha scritto:
Hi Larry!

www.WindMusic.org is not an "example": it is a real life implementation 
due for official launch in september.

Some supplementary explanation about the architecture and answers to 
your requests.

The authority coding conventions are chosen to allow:
     a) multiple coding schemas per field: a prefix is always stored 
with the key to specify the encoding schema: conceptScheme_conceptKey
     b) mix of coded and non coded (textual) information: my goal is to 
join different applications through the codes. My next target is JSPWiki 
and will allow inclusion of conceptScheme_conceptKey within Wiki pages 
to link that page to a DSpace (or other) applications (and generate a 
reverse link from DSpace and other applications toward the Wiki page). 
The "closed" attribute is for just that: indicate that the field may 
contain (not closed) or not "free" text apart from conceptScheme_conceptKey
     c) a reference (conceptScheme_conceptKey) is always ONE word for 
Lucene: the tokenizer is modified to allow "_" within words and to not 
lemmatize words containing a "_".
     d) notations can exist to have multiple coding systems for a same 
concept

Our generic principle is to left "text_value" untouched and to 
dynamically create equivalences at indexing time: you can change any 
definition, reindexing will always fix everything.

 > It appears your version of authority control computes the actual text 
of a metadata value at the time it is used, so it can apply the current 
locale?
Yes.

Your requests 1a+1b are already implemented for display,indexing and 
counting:
- display: the codes are translated (taking into account user language) 
where they are: surrounding text is left untouched.
- indexing: the field is indexed as usual. Codes are expanded (at 
indexing time) to all their synonyms and translations.
- counting: usage counts of concepts are kept for each DSpace search 
Index: those counts are added in displays to give users a clue of what 
is behind a concept.

Answering your question 2:
* Precise search can then be done using the code (not typing it: an 
autocomplete assist choosing the right concept)
* Word searches are perfectly operational and include all translations 
and synonyms

To do:
* "Unclosed" field updates would still need an editor (JavaScript+Ajax) 
to support the user when inserting codes within a free text (something I 
will need for JSPWiki).
  Today "autocomplete" at update time perfectly fits the needs of 
"closed fields".
* Browse is not used by my users (big databases rely mostly on "Search" 
and less on browse) and I preferred to wait 1.5 (or 1.6) to adapt the 
new browsing system instead of the old one.

Your requests 3:
I need to go even further: I need to do this in other applications than 
DSpace. I need to extract the indexing/search (pluggable 
indexer/searcher) process. This cannot be done without the support of 
DSpace community and committers to make it in a "common/standard" way.

Remote indexes are even trickier. Let consider when you switch from MeSH 
2007 to MeSH 2008. You need to:
1) Know which concepts appeared, disappeared, merged, splitted
2) Decide how your current metadata will follow those changes.
For now, I decided to implement a fast local repository for the "in use" 
version of external authorities. It will be necessary afterward to have 
a static or dynamic conciliation process between new versions and older. 
For Authors (Person names authority) which are mostly "additive", I 
agree that this conciliation should be fast and behind the curtains. 
What would you think of a local cache with an SKOS API with dynamic 
processes for backoffice upgrades ?

Global aims remain as stated in Roma: 
http://eprints.cilea.it/conf/viewpaper.php?id=197&print=1&cf=11

I will therefore:
1) identify the impact of the different functionalities implemented onto 
DSpace 1.4 architecture: please allow me two weeks to realize this.
2) make proposals to make pluggable what should be pluggable from my 
point of view;
3) identify what should change in the trunk, following the DSpace 2 
philosophy (autonomous parts);
4) be fully opened to constructive criticism to make this a common and 
shared work.

I am happy of the thrust you bring to this very important project for my 
users.
Wishing you a very nice day,

Christophe Dupriez

Larry Stone a écrit :
  
Yeah, sorry, I've been busy on other work.. just getting back to this.

I agree that we should collaborate so the authority control prototype 
for 1.6 works well for you too.  I'm planning on including the XMLUI 
prototype so I'd very much appreciate having you support the JSPUI.

Looking at your example implementation, I think there are some 
differences in the way we envision the architecture:

1. You just store the authority key in the text_value of the 
MetadataValue object -- this only works when all values of that field 
are authority-controlled, and it requires translating that key to a 
text value whenever that MetadataValue is read.  There are two reasons 
I can't do this:
  1a. We have a requirement for "partial" authority control, i.e. some 
values which do not have an authority key.
  1b. We also allow the text value to differ from the canonical text 
value that comes from the authority.  The submitter or admin can edit 
the metadata value later, e.g. to alter a person's name.

It appears your version of authority control computes the actual text 
of a metadata value at the time it is used, so it can apply the 
current locale?
Perhaps one way to work around this difference is to let the 
text_value be null, and when it is, the metadata system creates a text 
value on the fly as yours does now.  If a text value is already set, 
it gets used.

2. I would like to see more details about what you do for search and 
browse.  I'm just relying on using the existing text_value to build 
the search and browse indexes.  I didn't consider putting synonyms of  
authority keys in the index, but it sounds like your implemetation  
does htat.

3. All of the code to manage an authority -- e.g. making the lists of 
keys to populate menus, matching partial values typed by the user, 
etc, has to be in the plugin interface.  I want to be able to 
customize the whole implementation, not just read values from a 
different kind of file.  In some cases the authority will be 
implemented as a search of a remote index (e.g. WorldCat's authority 
names, or a local LDAP).

We can add methods to the authority plugin to account for synonyms, 
and to help with search, browse, and i18n.  I think the plugin's 
interface is not completely designed yet, anyway.

It would be great to include a ready-made plugin that reads SKOS 
vocabularies and other kinds of sources, though, that is very valuable.
So I think all your existing vocabulary-management code would just go 
into a plugin.

So it looks like the "role prefix" and "importance suffix" on the 
authority keys in your system are really just contained within the 
authority implementation.  They affect the way it sorts and matches 
keys, but the rest of the system doesn't need to know about them.

Please go ahead and add your design to the wiki page:
http://wiki.dspace.org/index.php/Authority_Control_of_Metadata_Values

  -- Larry

On May 25, 2009, at 11:26 PM, Christophe Dupriez wrote:

    
Hi Larry! (copy to the DSpace developpers community)

I am just wondering if you received my previous mails and the 
follow-up you may be interested to do on this issue.

On my side, I will discussing this in depth with different 
institutions next monday and I would appreciate to know your interest.

My proposal is that all the efforts put to add Authority Control into 
DSpace 1.4.x could be merged in DSpace 1.6 (1.7?) trunk.
I would be happy to tackle all JSP UI issues (I am rather sure to 
find help in the community for XML UI) but this is impossible without 
strong commiter coaching as it touches many parts of DSpace 
(org.dspace.search package is the most impacted).

I suggest you start a visit by the advanced search (modified to 
provide authority lists on many search criteria):
http://www.windmusic.org/dspace/advanced-search

Test the index (keywords not translated for the moment):
http://www.windmusic.org/dspace/subject-search

Search form can use the authority lists either for auto-complete 
either for menus:
http://www.windmusic.org/dspace/scores-search

Look at the search results and their sort possibilities

Look at the records and their "horizontal searches"
http://www.windmusic.org/dspace/handle/68502/24405

The corresponding "detailed record" gives a clue about Authority 
lists encoding (conceptScheme_conceptAbout):
http://www.windmusic.org/dspace/handle/68502/24405?mode=full

The authority records in DSpace:
http://www.windmusic.org/dspace/handle/68502/627

A search on this authority record:
http://www.windmusic.org/dspace/simple-search?query=author:personne_627

A search on a specific keyword:
http://www.windmusic.org/dspace/simple-search?query=keyword:sujet_22302

A search on a keyword and all its narrower terms:
http://www.windmusic.org/dspace/simple-search?query=broadkeyword:sujet_22302 


Update form is not accessible from outside CDMC but field editing is 
assisted by auto-complete for those controlled by an Authority list 
(menus for short lists).
Field validation is defined within an authority list of the fields: I 
join an example of this SKOS XML file about DC fields of a DSpace 
application (WindMusic).

Have a nice day!

Christophe



<?xml version="1.0" encoding="ISO-8859-1"?>
<conceptScheme about="dc">
<title lang="en">metadataPropertys for DC prefLabelspace</title>
<title lang="fr">Zones pour l'espace de nommage "DC"</title>
<display>http://localhost:8080/wind/dspace-admin/metadata-metadataProperty-registry?dc_schema_id=1</display> 

<metadataProperty about="contributor" closed="false" 
mandatory="false" maxLength="100" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Contributor</prefLabel>
<prefLabel lang="es">Contributor</prefLabel>
<prefLabel lang="fr">Contributeur</prefLabel>
<prefLabel lang="de">Contributor</prefLabel>
<prefLabel lang="nl">Contributer</prefLabel>
<prefix>Auteur</prefix>
<prefix>Auteur_d_oeuvres_adaptees</prefix>
<prefix>Auteur_Autres_collaborations</prefix>
<prefix>Compositeur</prefix>
<prefix>Compositeur_Parolier</prefix>
<prefix>Createur</prefix>
<prefix>Directeur_de_publication</prefix>
<prefix>Librettiste</prefix>
<prefix>Parolier</prefix>
<prefix>Producteur</prefix>
<prefix>Realisateur_du_film</prefix>
<prefix>Redacteur</prefix>
<prefix>Redacteur_en_chef</prefix>
<prefix>Scenariste</prefix>
<defaultScheme>personne</defaultScheme>
<conceptScheme>personne</conceptScheme>
<conceptScheme>orchestre</conceptScheme>
<notationScheme>loraut</notationScheme>
<notationScheme>lororch</notationScheme>
</metadataProperty>
<metadataProperty about="contributor.author" closed="false" 
mandatory="false" maxLength="100" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Author</prefLabel>
<prefLabel lang="es">Autor</prefLabel>
<prefLabel lang="fr">Auteur</prefLabel>
<prefLabel lang="de">Autor</prefLabel>
<prefLabel lang="nl">Schepper</prefLabel>
<prefix>Auteur</prefix>
<prefix>Auteur_d_oeuvres_adaptees</prefix>
<prefix>Auteur_Autres_collaborations</prefix>
<prefix>Compositeur</prefix>
<prefix>Compositeur_Parolier</prefix>
<prefix>Createur</prefix>
<prefix>Directeur_de_publication</prefix>
<prefix>Librettiste</prefix>
<prefix>Parolier</prefix>
<prefix>Producteur</prefix>
<prefix>Realisateur_du_film</prefix>
<prefix>Redacteur</prefix>
<prefix>Redacteur_en_chef</prefix>
<prefix>Scenariste</prefix>
<defaultScheme>personne</defaultScheme>
<conceptScheme>personne</conceptScheme>
<conceptScheme>orchestre</conceptScheme>
<notationScheme>loraut</notationScheme>
<notationScheme>lororch</notationScheme>
</metadataProperty>
<metadataProperty about="contributor.arranger" closed="false" 
mandatory="false" maxLength="100" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Arranger</prefLabel>
<prefLabel lang="es">Arreglador</prefLabel>
<prefLabel lang="fr">Arrangeur</prefLabel>
<prefLabel lang="de">Arrangeur</prefLabel>
<prefLabel lang="nl">Bewerker</prefLabel>
<prefix>Arrangeur</prefix>
<prefix>Arrangeur_Autres_collaborations</prefix>
<prefix>Collaborateur</prefix>
<prefix>Commentateur</prefix>
<prefix>Compilateur</prefix>
<prefix>Correcteur</prefix>
<prefix>Editeur_scientifique</prefix>
<prefix>Harmonisateur</prefix>
<prefix>Illustrateur</prefix>
<prefix>Orchestrateur</prefix>
<prefix>Photographe</prefix>
<prefix>Prefacier</prefix>
<prefix>Revision</prefix>
<prefix>Traducteur</prefix>
<defaultScheme>personne</defaultScheme>
<conceptScheme>personne</conceptScheme>
<conceptScheme>orchestre</conceptScheme>
<notationScheme>loraut</notationScheme>
<notationScheme>lororch</notationScheme>
</metadataProperty>
<metadataProperty about="contributor.performer" closed="false" 
mandatory="false" maxLength="100" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Performer</prefLabel>
<prefLabel lang="es">Intérprete</prefLabel>
<prefLabel lang="fr">Interprète</prefLabel>
<prefLabel lang="de">Interpret</prefLabel>
<prefLabel lang="nl">Vertolk(st)er</prefLabel>
<prefix>Interprete_Autres_collaborations</prefix>
<prefix>Acteur</prefix>
<prefix>Artiste</prefix>
<prefix>Chef_d_orchestre</prefix>
<prefix>Chef_de_choeur</prefix>
<prefix>Directeur_artistique</prefix>
<prefix>Interprete</prefix>
<prefix>Interviewer</prefix>
<prefix>Narrateur</prefix>
<prefix>Personne_interviewee</prefix>
<defaultScheme>personne</defaultScheme>
<conceptScheme>personne</conceptScheme>
<conceptScheme>orchestre</conceptScheme>
<notationScheme>loraut</notationScheme>
<notationScheme>lororch</notationScheme>
</metadataProperty>

<metadataProperty about="identifier.isbn" closed="false" 
mandatory="false" maxLength="10" minLength="17" propertyClass="CODE" 
repeatable="true">
<prefLabel>ISBN</prefLabel>
<altLabel lang="fr">Numéro international normalisé du livre</altLabel>
<altLabel lang="en">International Standard Book Number</altLabel>
<altLabel lang="de">Internationale Standardbuchnummer</altLabel>
<altLabel lang="es">Número estándar internacional de libro</altLabel>
</metadataProperty>

<metadataProperty about="identifier.issn" closed="false" 
mandatory="false" maxLength="9" minLength="9" propertyClass="CODE" 
repeatable="true">
<prefLabel>ISSN</prefLabel>
<altLabel lang="en">International Standard Serial Number</altLabel>
<altLabel lang="fr">Numéro international standard de publication en 
série</altLabel>
</metadataProperty>

<metadataProperty about="identifier.ismn" closed="false" 
mandatory="false" maxLength="13" minLength="13" propertyClass="CODE" 
repeatable="true">
<prefLabel>ISMN</prefLabel>
<altLabel lang="en">International Standard Music Number</altLabel>
<altLabel lang="fr">Numéro international normalisé de la 
musique</altLabel>
</metadataProperty>

<metadataProperty about="relation.ispartofcollection" closed="false" 
mandatory="false" maxLength="100" minLength="1" propertyClass="TEXT" 
repeatable="false">
<prefLabel lang="fr">Collection</prefLabel>
<prefLabel lang="en">Collection</prefLabel>
<prefLabel lang="nl">Reekswerk</prefLabel>
<prefLabel lang="es">Collección</prefLabel>
<prefLabel lang="de">Reihenwerke</prefLabel>
</metadataProperty>

<metadataProperty about="relation.ispartofseries" closed="false" 
mandatory="false" maxLength="100" minLength="1" propertyClass="TEXT" 
repeatable="false">
<prefLabel lang="fr">Périodique</prefLabel>
<prefLabel lang="en">Serial publication</prefLabel>
<prefLabel lang="nl">Seriële publicatie</prefLabel>
<prefLabel lang="es">Publicación seriada</prefLabel>
<prefLabel lang="de">Serienwerke</prefLabel>
</metadataProperty>

<metadataProperty about="identifier.citation" closed="false" 
mandatory="false" maxLength="100" minLength="1" propertyClass="TEXT" 
repeatable="false">
<prefLabel lang="fr">Citation</prefLabel>
<prefLabel lang="en">Citation</prefLabel>
<prefLabel lang="nl">Verwijskaart</prefLabel>
<prefLabel lang="es">Citación</prefLabel>
<prefLabel lang="de">Belegzettel</prefLabel>
</metadataProperty>

<metadataProperty about="identifier.other" closed="false" 
mandatory="true" maxLength="13" minLength="3" propertyClass="CODE" 
repeatable="false">
<prefLabel lang="fr">Cote CIM</prefLabel>
<prefLabel lang="en">CIM Call Number</prefLabel>
<prefLabel lang="nl">CIM Signatuur</prefLabel>
<prefLabel lang="es">CIM Signatura</prefLabel>
<prefLabel lang="de">CIM Signatur</prefLabel>
</metadataProperty>

<metadataProperty about="identifier.uri" closed="false" 
mandatory="false" maxLength="500" minLength="12" propertyClass="URI" 
repeatable="true">
<prefLabel>URI (PermaLink)</prefLabel>
<altLabel lang="en">Uniform Resource Identifier</altLabel>
</metadataProperty>

<metadataProperty about="identifier.loris" closed="false" 
mandatory="false" maxLength="12" minLength="1" propertyClass="CODE" 
repeatable="false">
<prefLabel>Loris</prefLabel>
</metadataProperty>

<metadataProperty about="identifier" closed="false" mandatory="false" 
maxLength="6" minLength="6" propertyClass="NUMBER" repeatable="false">
<prefLabel lang="fr">Inventaire #</prefLabel>
<prefLabel lang="en">Inventory #</prefLabel>
<prefLabel lang="nl">Inventaris #</prefLabel>
<prefLabel lang="es">Inventario #</prefLabel>
<prefLabel lang="de">Inventar #</prefLabel>
</metadataProperty>

<metadataProperty about="identifier.publisher" closed="false" 
mandatory="false" maxLength="50" minLength="1" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="fr">Numéro de référence (éditeur)</prefLabel>
<prefLabel lang="de">Referenznummer (Verlagsangabe)</prefLabel>
<prefLabel lang="en">Reference number (Publisher)</prefLabel>
<prefLabel lang="es">Número de referencia (Casa editorial)</prefLabel>
<prefLabel lang="nl">Referentienummer (Uitgever)</prefLabel>
</metadataProperty>

<metadataProperty about="description.abstract" closed="false" 
mandatory="false" maxLength="32000" minLength="1" 
propertyClass="TEXT" repeatable="true">
<prefLabel lang="fr">Résumé</prefLabel>
<prefLabel lang="en">Abstract</prefLabel>
<prefLabel lang="es">Resumen</prefLabel>
<prefLabel lang="de">Zusammenfassung</prefLabel>
<prefLabel lang="nl">Samenvatting</prefLabel>
<languageCollection>userLanguage</languageCollection>
</metadataProperty>

<metadataProperty about="description.tableofcontents" closed="false" 
mandatory="false" maxLength="32000" minLength="1" 
propertyClass="TEXT" repeatable="true">
<prefLabel lang="fr">Contenu</prefLabel>
<prefLabel lang="en">Contents list</prefLabel>
<prefLabel lang="es">Indice</prefLabel>
<prefLabel lang="de">Inhaltsverzeichnis</prefLabel>
<prefLabel lang="nl">Inhoudsopgave </prefLabel>
<languageCollection>userLanguage</languageCollection>
</metadataProperty>

<metadataProperty about="description.instrumentation" closed="false" 
mandatory="false" maxLength="32000" minLength="1" 
propertyClass="TEXT" repeatable="true">
<prefLabel lang="fr">Note sur l'instrumentation</prefLabel>
<prefLabel lang="en">Note about instrumentation</prefLabel>
<prefLabel lang="es">Nota sobre la instrumentación</prefLabel>
<prefLabel lang="de">Anmerkung über Instrumentierung</prefLabel>
<prefLabel lang="nl">Nota over instrumentatie</prefLabel>
<languageCollection>userLanguage</languageCollection>
</metadataProperty>

<metadataProperty about="description.interpretation" closed="false" 
mandatory="false" maxLength="32000" minLength="1" 
propertyClass="TEXT" repeatable="true">
<prefLabel lang="fr">Note sur l'interprétation</prefLabel>
<prefLabel lang="en">Note about performance</prefLabel>
<prefLabel lang="es">Nota sobre la interpretación</prefLabel>
<prefLabel lang="de">Anmerkung über Leistung</prefLabel>
<prefLabel lang="nl">Nota over uitvoering</prefLabel>
<languageCollection>userLanguage</languageCollection>
</metadataProperty>

<metadataProperty about="format.extent" closed="false" 
mandatory="false" maxLength="6" minLength="6" propertyClass="NUMBER" 
repeatable="false">
<prefLabel lang="fr">Durée</prefLabel>
<prefLabel lang="en">Duration</prefLabel>
<prefLabel lang="es">Duración</prefLabel>
<prefLabel lang="de">Dauer</prefLabel>
<prefLabel lang="nl">Tijdsduur</prefLabel>
<editorialNote>HHMMSS</editorialNote>
</metadataProperty>

<metadataProperty about="format.medium" closed="false" 
mandatory="false" maxLength="50" minLength="1" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="fr">Description du medium</prefLabel>
<prefLabel lang="en">Medium description</prefLabel>
<prefLabel lang="es">Descripción del medio</prefLabel>
<prefLabel lang="de">Beschreibung des Medium</prefLabel>
<prefLabel lang="nl">Beschrijving van het medium</prefLabel>
</metadataProperty>

<metadataProperty about="audience" closed="true" mandatory="true" 
maxLength="50" minLength="2" propertyClass="CODE" repeatable="true">
<prefLabel lang="fr">Niveau</prefLabel>
<prefLabel lang="en">Level</prefLabel>
<prefLabel lang="es">Nivél</prefLabel>
<prefLabel lang="de">Schwierigkeitsgrad</prefLabel>
<prefLabel lang="nl">Niveau</prefLabel>
<defaultScheme>niveau</defaultScheme>
<conceptScheme>niveau</conceptScheme>
</metadataProperty>

<metadataProperty about="language.iso" closed="true" mandatory="true" 
maxLength="5" minLength="2" propertyClass="CODE" repeatable="true">
<prefLabel lang="fr">Langue</prefLabel>
<prefLabel lang="en">Language</prefLabel>
<prefLabel lang="es">Lengua</prefLabel>
<prefLabel lang="de">Sprache</prefLabel>
<prefLabel lang="nl">Taal</prefLabel>
<defaultScheme>language</defaultScheme>
<conceptScheme>language</conceptScheme>
</metadataProperty>

<metadataProperty about="publisher" closed="true" mandatory="false" 
maxLength="100" minLength="1" propertyClass="CODE" repeatable="true">
<prefLabel lang="fr">Éditeur</prefLabel>
<prefLabel lang="de">Verlagsangabe</prefLabel>
<prefLabel lang="en">Publisher</prefLabel>
<prefLabel lang="es">Casa editorial</prefLabel>
<prefLabel lang="nl">Uitgever</prefLabel>
<defaultScheme>editeur</defaultScheme>
<conceptScheme>editeur</conceptScheme>
<notationScheme>lorpub</notationScheme>
</metadataProperty>

<metadataProperty about="publisher.address" closed="true" 
mandatory="false" maxLength="50" minLength="1" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="fr">Adresse de l'éditeur</prefLabel>
<prefLabel lang="de">Verlagsangabe (address)</prefLabel>
<prefLabel lang="en">Publisher address</prefLabel>
<prefLabel lang="es">Casa editorial (adress)</prefLabel>
<prefLabel lang="nl">Uitgever (address)</prefLabel>
</metadataProperty>

<metadataProperty about="publisher.country" closed="false" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
<prefLabel lang="fr">Pays</prefLabel>
<prefLabel lang="de">Land</prefLabel>
<prefLabel lang="en">Country</prefLabel>
<prefLabel lang="es">País</prefLabel>
<prefLabel lang="nl">Land</prefLabel>
<defaultScheme>country</defaultScheme>
<conceptScheme>country</conceptScheme>
</metadataProperty>

<metadataProperty about="publisher.telephone" closed="true" 
mandatory="false" maxLength="50" minLength="1" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="fr">Téléphone de l'éditeur</prefLabel>
<prefLabel lang="de">Verlagsangabe (telefon)</prefLabel>
<prefLabel lang="en">Publisher phone number</prefLabel>
<prefLabel lang="es">Casa editorial (telefon)</prefLabel>
<prefLabel lang="nl">Uitgever (telefon)</prefLabel>
</metadataProperty>

<metadataProperty about="publisher.fax" closed="true" 
mandatory="false" maxLength="50" minLength="1" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="fr">Fax de l'éditeur</prefLabel>
<prefLabel lang="de">Verlagsangabe (fax)</prefLabel>
<prefLabel lang="en">Publisher fax number</prefLabel>
<prefLabel lang="es">Casa editorial (fax)</prefLabel>
<prefLabel lang="nl">Uitgever (fax)</prefLabel>
</metadataProperty>

<metadataProperty about="publisher.email" closed="true" 
mandatory="false" maxLength="50" minLength="1" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="fr">Courriel de l'éditeur</prefLabel>
<prefLabel lang="de">Verlagsangabe (e-mail)</prefLabel>
<prefLabel lang="en">Publisher e-mail</prefLabel>
<prefLabel lang="es">Casa editorial (e-mail)</prefLabel>
<prefLabel lang="nl">Uitgever (e-mail)</prefLabel>
</metadataProperty>

<metadataProperty about="relation.isformatof" closed="false" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
<prefLabel lang="en">Linked Scores</prefLabel>
<prefLabel lang="es">Partituras dependientes</prefLabel>
<prefLabel lang="fr">Partition(s) liée(s)</prefLabel>
<prefLabel lang="de">Verbundene Notenausgabe(n)</prefLabel>
<prefLabel lang="nl">Verwante Partituur</prefLabel>
<defaultScheme>partition</defaultScheme>
<conceptScheme>partition</conceptScheme>
<notationScheme>lorsco</notationScheme>
<editorialNote></editorialNote>
</metadataProperty>

<metadataProperty about="relation.hasformat" closed="true" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
<prefLabel lang="en">Linked Recordings</prefLabel>
<prefLabel lang="es">Grabaciones dependientes</prefLabel>
<prefLabel lang="fr">Enregistrement(s) lié(s)</prefLabel>
<prefLabel lang="de">Verbundene Aufnahme(n)</prefLabel>
<prefLabel lang="nl">Verwante opnames</prefLabel>
<editorialNote></editorialNote>
<defaultScheme>ocd</defaultScheme>
<conceptScheme>ocd</conceptScheme>
<notationScheme>lorocd</notationScheme>
</metadataProperty>

<metadataProperty about="relation.ispartof" closed="false" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
<prefLabel>in</prefLabel>
<defaultScheme>cd</defaultScheme>
<conceptScheme>cd</conceptScheme>
<conceptScheme>doc</conceptScheme>
<notationScheme>lorcd</notationScheme>
<notationScheme>lordoc</notationScheme>
</metadataProperty>

<!--metadataProperty about="relation.haspart" closed="false" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
</metadataProperty-->

<!--metadataProperty about="relation.isversionof" closed="false" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
</metadataProperty-->

<!--metadataProperty about="relation.hasversion" closed="false" 
mandatory="false" maxLength="40" minLength="1" propertyClass="CODE" 
repeatable="false">
</metadataProperty-->

<metadataProperty about="relation.listening" closed="false" 
mandatory="false" maxLength="40" minLength="2" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="en">Play</prefLabel>
<prefLabel lang="es">Tocar</prefLabel>
<prefLabel lang="fr">Écouter</prefLabel>
<prefLabel lang="de">Abspielen</prefLabel>
<prefLabel lang="nl">Afspelen</prefLabel>
</metadataProperty>

<metadataProperty about="subject.opus" closed="true" 
mandatory="false" maxLength="100" minLength="1" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Opus</prefLabel>
<prefLabel lang="fr">Oeuvre</prefLabel>
<defaultScheme>opus</defaultScheme>
<conceptScheme>opus</conceptScheme>
<notationScheme>loruni</notationScheme>
</metadataProperty>

<metadataProperty about="subject.orchestra" closed="true" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Orchestras</prefLabel>
<prefLabel lang="es">Orquestas</prefLabel>
<prefLabel lang="fr">Orchestres</prefLabel>
<prefLabel lang="de">Orchester</prefLabel>
<prefLabel lang="nl">Orkesten</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<defaultScheme>typeOrchestre</defaultScheme>
<conceptScheme>typeOrchestre</conceptScheme>
</metadataProperty>

<metadataProperty about="subject.ensemble" closed="true" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Ensembles</prefLabel>
<prefLabel lang="es">Conjuntos</prefLabel>
<prefLabel lang="fr">Ensembles</prefLabel>
<prefLabel lang="de">Ensembles</prefLabel>
<prefLabel lang="nl">Ensemble</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<defaultScheme>ensemble</defaultScheme>
<conceptScheme>ensemble</conceptScheme>
</metadataProperty>


<metadataProperty about="subject.soloist" closed="true" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Solo instruments</prefLabel>
<prefLabel lang="es">Instrumentos solistas</prefLabel>
<prefLabel lang="fr">Instruments solistes</prefLabel>
<prefLabel lang="de">Soloinstrumente</prefLabel>
<prefLabel lang="nl">Solo Instrumenten</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<suffix>9</suffix>
<suffix>10</suffix>
<suffix>11</suffix>
<suffix>12</suffix>
<suffix>13</suffix>
<suffix>14</suffix>
<suffix>15</suffix>
<suffix>16</suffix>
<suffix>17</suffix>
<suffix>18</suffix>
<suffix>19</suffix>
<defaultScheme>instrument</defaultScheme>
<conceptScheme>instrument</conceptScheme>
</metadataProperty>

<metadataProperty about="subject.voice" closed="true" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Voices</prefLabel>
<prefLabel lang="es">Voces</prefLabel>
<prefLabel lang="fr">Voix</prefLabel>
<prefLabel lang="de">Stimmen</prefLabel>
<prefLabel lang="nl">Stem</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<suffix>9</suffix>
<suffix>10</suffix>
<suffix>11</suffix>
<suffix>12</suffix>
<suffix>13</suffix>
<suffix>14</suffix>
<suffix>15</suffix>
<suffix>16</suffix>
<suffix>17</suffix>
<suffix>18</suffix>
<suffix>19</suffix>
<defaultScheme>voix</defaultScheme>
<conceptScheme>voix</conceptScheme>
</metadataProperty>

<metadataProperty about="subject.choir" closed="true" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Choirs</prefLabel>
<prefLabel lang="es">Coros</prefLabel>
<prefLabel lang="fr">Choeurs</prefLabel>
<prefLabel lang="de">Chöre</prefLabel>
<prefLabel lang="nl">Koor</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<defaultScheme>choeur</defaultScheme>
<conceptScheme>choeur</conceptScheme>
</metadataProperty>

<metadataProperty about="subject.instrument" closed="true" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Non solo instruments</prefLabel>
<prefLabel lang="es">Instrumentos non solistas</prefLabel>
<prefLabel lang="fr">Instruments non solistes</prefLabel>
<prefLabel lang="de">Nonsoloinstrumente</prefLabel>
<prefLabel lang="nl">Nonsoliste Instrumenten</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<suffix>9</suffix>
<suffix>10</suffix>
<suffix>11</suffix>
<suffix>12</suffix>
<suffix>13</suffix>
<suffix>14</suffix>
<suffix>15</suffix>
<suffix>16</suffix>
<suffix>17</suffix>
<suffix>18</suffix>
<suffix>19</suffix>
<defaultScheme>instrument</defaultScheme>
<conceptScheme>instrument</conceptScheme>
</metadataProperty>

<metadataProperty about="subject.additionalinstrument" closed="false" 
mandatory="false" maxLength="30" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Additional instruments</prefLabel>
<prefLabel lang="fr">Instruments supplémentaires</prefLabel>
<suffix>1</suffix>
<suffix>2</suffix>
<suffix>3</suffix>
<suffix>4</suffix>
<suffix>5</suffix>
<suffix>6</suffix>
<suffix>7</suffix>
<suffix>8</suffix>
<suffix>9</suffix>
<suffix>10</suffix>
<suffix>11</suffix>
<suffix>12</suffix>
<suffix>13</suffix>
<suffix>14</suffix>
<suffix>15</suffix>
<suffix>16</suffix>
<suffix>17</suffix>
<suffix>18</suffix>
<suffix>19</suffix>
<defaultScheme>instrument</defaultScheme>
<conceptScheme>instrument</conceptScheme>
</metadataProperty>

<metadataProperty about="subject" closed="true" mandatory="false" 
maxLength="50" minLength="2" propertyClass="CODE" repeatable="true">
<prefLabel lang="en">Keywords</prefLabel>
<prefLabel lang="fr">Mots-clés</prefLabel>
<prefLabel lang="de">Stichwörtern</prefLabel>
<prefLabel lang="es">Palabras claves</prefLabel>
<prefLabel lang="nl">Trefwoord</prefLabel>
<defaultScheme>sujet</defaultScheme>
<conceptScheme>sujet</conceptScheme>
<notationScheme>lorthes</notationScheme>
</metadataProperty>

<metadataProperty about="subject.classification" closed="true" 
mandatory="false" maxLength="50" minLength="2" propertyClass="CODE" 
repeatable="true">
<prefLabel lang="en">Music type</prefLabel>
<prefLabel lang="fr">Type de musique</prefLabel>
<defaultScheme>musique</defaultScheme>
<conceptScheme>musique</conceptScheme>
</metadataProperty>

<metadataProperty about="audience" closed="true" mandatory="false" 
maxLength="50" minLength="2" propertyClass="CODE" repeatable="true">
<prefLabel lang="en">Level</prefLabel>
<prefLabel lang="es">Nivél</prefLabel>
<prefLabel lang="fr">Niveau</prefLabel>
<prefLabel lang="nl">Niveau</prefLabel>
<prefLabel lang="de">Schwierigkeitsgrad</prefLabel>
<defaultScheme>niveau</defaultScheme>
<conceptScheme>niveau</conceptScheme>
</metadataProperty>

<metadataProperty about="title" closed="false" mandatory="true" 
maxLength="300" minLength="1" propertyClass="TEXT" repeatable="true">
<prefLabel lang="fr">Titre</prefLabel>
<prefLabel lang="en">Title</prefLabel>
<prefLabel lang="nl">Titel</prefLabel>
<prefLabel lang="es">Título</prefLabel>
<prefLabel lang="de">Titel</prefLabel>
<language>*</language>
</metadataProperty>

<metadataProperty about="title.alternative" closed="false" 
mandatory="false" maxLength="300" minLength="1" propertyClass="TEXT" 
repeatable="true">
<prefLabel lang="fr">Autre titre</prefLabel>
<prefLabel lang="en">Additional Title</prefLabel>
<prefLabel lang="nl">Titel 2</prefLabel>
<prefLabel lang="es">Título 2</prefLabel>
<prefLabel lang="de">Titel 2</prefLabel>
<language>*</language>
</metadataProperty>

<metadataProperty about="type.score" closed="true" mandatory="false"  
propertyClass="CODE" repeatable="true">
<prefLabel lang="fr">Type de partition</prefLabel>
<prefLabel lang="en">Score type</prefLabel>
<prefLabel lang="es">Tipo de partitura</prefLabel>
<prefLabel lang="de">Notenausgabenart</prefLabel>
<prefLabel lang="nl">Partituursoort</prefLabel>
<defaultScheme>typePartition</defaultScheme>
<conceptScheme>typePartition</conceptScheme>
</metadataProperty>

<metadataProperty about="date.issued" closed="false" mandatory="true" 
maxLength="10" minLength="4" propertyClass="DATE" repeatable="false">
<prefLabel lang="fr">Date de publication</prefLabel><prefLabel 
lang="en">Issue date</prefLabel><prefLabel lang="nl">Publicatie 
datum</prefLabel><prefLabel lang="es">Fecha de 
publicación</prefLabel><prefLabel 
lang="de">Publikationsdatum</prefLabel>
</metadataProperty>

<metadataProperty about="date.submitted" closed="false" 
mandatory="true" maxLength="10" minLength="10" propertyClass="DATE" 
repeatable="false">
<prefLabel lang="fr">Date de catalogage Loris</prefLabel><prefLabel 
lang="en">Loris Cataloging date</prefLabel><prefLabel lang="nl">Loris 
catalogiseren datum</prefLabel><prefLabel lang="es">Fecha de 
catalogación Loris</prefLabel><prefLabel lang="de">Loris 
Katalogisierendes Datum</prefLabel>
</metadataProperty>

<metadataProperty about="description.provenance" system="true" 
propertyClass="TEXT">
<prefLabel>Historique des modifications au catalogage</prefLabel>
</metadataProperty>
<metadataProperty about="date.available" system="true" 
propertyClass="DATE">
<prefLabel lang="fr">Date de fin de catalogage 
initial</prefLabel><prefLabel lang="en">Date available</prefLabel>
</metadataProperty>
<metadataProperty about="date.accessioned" system="true" 
propertyClass="DATE">
<prefLabel>Date de dernière modification au catalogage</prefLabel>
</metadataProperty>
<metadataProperty about="date.created" system="true" 
propertyClass="DATE">
<prefLabel lang="fr">Date de catalogage DSpace</prefLabel><prefLabel 
lang="en">DSpace Cataloging date</prefLabel><prefLabel 
lang="nl">DSpace catalogiseren datum</prefLabel><prefLabel 
lang="es">Fecha de catalogación DSpace</prefLabel><prefLabel 
lang="de">DSpace Katalogisierendes Datum</prefLabel>
</metadataProperty>
<metadataProperty about="relation.uri" propertyClass="URI">
<prefLabel>Internet Web Site</prefLabel>
</metadataProperty>

<metadataProperty about="type.record" closed="true" 
mandatory="false"  propertyClass="CODE" repeatable="true">
<prefLabel lang="fr">Type de notice</prefLabel>
<prefLabel lang="en">Record type</prefLabel>
<prefLabel lang="es">Tipo de reseña</prefLabel>
<prefLabel lang="de">Eintragtype</prefLabel>
<prefLabel lang="nl">Beschrijvingsoort</prefLabel>
<defaultScheme>notice</defaultScheme>
<conceptScheme>notice</conceptScheme>
</metadataProperty>

</conceptScheme>
      

    


------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 
_______________________________________________
Dspace-devel mailing list
Dspace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-devel


  


-- 
Dott. Andrea Bollini
Project Manager, IT Architect & Systems Integrator
Sezione Servizi per le Biblioteche e l'Editoria Elettronica
CILEA, http://www.cilea.it
tel. +39 06-59292853
cel. +39 348-8277525

---

Disclaimer: the content of this email is confidential and may be privileged, and it must not be disclosed or copied without the sender's consent. If you have received this message in error, please notify the sender and remove it from your system. The content of this email does not constitute legal advice, nor any responsibility is accepted for loss or damage incurred as a result of acting upon its contents or attachments. 
The statements and opinions expressed in this email are those of the author and do not necessarily reflect those of the employer.