[SEDA 2.1] Implement Acquisition information
authorSylvain Thénault <sylvain.thenault@logilab.fr>
Fri, 03 Mar 2017 10:31:30 +0100
changeset 2411 d8be06a22351
parent 2410 b2cf743e2787
child 2412 35e6abe69889
[SEDA 2.1] Implement Acquisition information
cubicweb_seda/entities/generated.py
cubicweb_seda/hooks.py
cubicweb_seda/i18n/en.po
cubicweb_seda/i18n/fr.po
cubicweb_seda/migration/0.8.0_Any.py
cubicweb_seda/schema/seda2.py
cubicweb_seda/views/archivetransfer.py
cubicweb_seda/views/uicfg.py
cubicweb_seda/xsd.py
cubicweb_seda/xsd/seda-2.0-main.xsd
cubicweb_seda/xsd2yams.py
test/test_xsd2yams.py
--- a/cubicweb_seda/entities/generated.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/entities/generated.py	Fri Mar 03 10:31:30 2017 +0100
@@ -118,6 +118,11 @@
     fetch_attrs, cw_fetch_order = fetch_config(['user_cardinality'])
     value_attr = None
 
+class SEDAAcquisitionInformationCodeListVersion(SEDAAnyEntity):
+    __regid__ = 'SEDAAcquisitionInformationCodeListVersion'
+    fetch_attrs, cw_fetch_order = fetch_config(['user_cardinality'])
+    value_attr = None
+
 class SEDARelationshipCodeListVersion(SEDAAnyEntity):
     __regid__ = 'SEDARelationshipCodeListVersion'
     fetch_attrs, cw_fetch_order = fetch_config(['user_cardinality'])
@@ -163,6 +168,11 @@
     fetch_attrs, cw_fetch_order = fetch_config(['user_cardinality', 'service_level', 'user_annotation'])
     value_attr = 'service_level'
 
+class SEDAAcquisitionInformation(SEDAAnyEntity):
+    __regid__ = 'SEDAAcquisitionInformation'
+    fetch_attrs, cw_fetch_order = fetch_config(['user_cardinality'])
+    value_attr = None
+
 class SEDALegalStatus(SEDAAnyEntity):
     __regid__ = 'SEDALegalStatus'
     fetch_attrs, cw_fetch_order = fetch_config(['user_cardinality'])
--- a/cubicweb_seda/hooks.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/hooks.py	Fri Mar 03 10:31:30 2017 +0100
@@ -193,6 +193,7 @@
         # 'seda_reuse_rule_code_list_version',
         # 'seda_dissemination_rule_code_list_version',
         # 'seda_storage_rule_code_list_version',
+        # 'seda_acquisition_information_code_list_version',
     ]
 
     def precommit_event(self):
--- a/cubicweb_seda/i18n/en.po	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/i18n/en.po	Fri Mar 03 10:31:30 2017 +0100
@@ -125,6 +125,12 @@
 msgid "New SEDAAcquiredDate"
 msgstr ""
 
+msgid "New SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "New SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
 msgid "New SEDAAddressee"
 msgstr ""
 
@@ -589,6 +595,22 @@
 msgid "SEDAAcquiredDate_plural"
 msgstr ""
 
+msgid "SEDAAcquisitionInformation"
+msgstr ""
+
+msgctxt "inlined:SEDAArchiveTransfer.seda_acquisition_information_from.object"
+msgid "SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
+msgid "SEDAAcquisitionInformationCodeListVersion_plural"
+msgstr ""
+
+msgid "SEDAAcquisitionInformation_plural"
+msgstr ""
+
 msgid "SEDAAddressee"
 msgstr ""
 
@@ -2018,6 +2040,18 @@
 msgid "This SEDAAcquiredDate:"
 msgstr ""
 
+msgid "This SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "This SEDAAcquisitionInformation:"
+msgstr ""
+
+msgid "This SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
+msgid "This SEDAAcquisitionInformationCodeListVersion:"
+msgstr ""
+
 msgid "This SEDAAddressee"
 msgstr ""
 
@@ -2878,6 +2912,16 @@
 msgid "add a SEDAAcquiredDate"
 msgstr ""
 
+msgid "add a SEDAAcquisitionInformation"
+msgstr ""
+
+msgctxt "inlined:SEDAArchiveTransfer.seda_acquisition_information_from.object"
+msgid "add a SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "add a SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
 msgid "add a SEDAAddressee"
 msgstr ""
 
@@ -3922,6 +3966,14 @@
 msgid "container"
 msgstr ""
 
+msgctxt "SEDAAcquisitionInformation"
+msgid "container"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "container"
+msgstr ""
+
 msgctxt "SEDAAddressee"
 msgid "container"
 msgstr ""
@@ -4919,6 +4971,62 @@
 msgid "seda_acquired_date_object"
 msgstr ""
 
+msgid "seda_acquisition_information_code_list_version_from"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "seda_acquisition_information_code_list_version_from"
+msgstr ""
+
+msgid "seda_acquisition_information_code_list_version_from_object"
+msgstr ""
+
+msgctxt "SEDAArchiveTransfer"
+msgid "seda_acquisition_information_code_list_version_from_object"
+msgstr ""
+
+msgid "seda_acquisition_information_code_list_version_to"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "seda_acquisition_information_code_list_version_to"
+msgstr ""
+
+msgid "seda_acquisition_information_code_list_version_to_object"
+msgstr ""
+
+msgctxt "ConceptScheme"
+msgid "seda_acquisition_information_code_list_version_to_object"
+msgstr ""
+
+msgid "seda_acquisition_information_from"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformation"
+msgid "seda_acquisition_information_from"
+msgstr ""
+
+msgid "seda_acquisition_information_from_object"
+msgstr ""
+
+msgctxt "SEDAArchiveTransfer"
+msgid "seda_acquisition_information_from_object"
+msgstr ""
+
+msgid "seda_acquisition_information_to"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformation"
+msgid "seda_acquisition_information_to"
+msgstr ""
+
+msgid "seda_acquisition_information_to_object"
+msgstr ""
+
+msgctxt "Concept"
+msgid "seda_acquisition_information_to_object"
+msgstr ""
+
 msgid "seda_addressee_from"
 msgstr ""
 
@@ -7858,6 +7966,14 @@
 msgid "user_annotation"
 msgstr ""
 
+msgctxt "SEDAAcquisitionInformation"
+msgid "user_annotation"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "user_annotation"
+msgstr ""
+
 msgctxt "SEDAAddressee"
 msgid "user_annotation"
 msgstr ""
@@ -8373,6 +8489,14 @@
 msgid "user_cardinality"
 msgstr ""
 
+msgctxt "SEDAAcquisitionInformation"
+msgid "user_cardinality"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "user_cardinality"
+msgstr ""
+
 msgctxt "SEDAAddressee"
 msgid "user_cardinality"
 msgstr ""
--- a/cubicweb_seda/i18n/fr.po	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/i18n/fr.po	Fri Mar 03 10:31:30 2017 +0100
@@ -132,6 +132,12 @@
 msgid "New SEDAAcquiredDate"
 msgstr ""
 
+msgid "New SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "New SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
 msgid "New SEDAAddressee"
 msgstr "Nouveau destinataire pour action"
 
@@ -599,6 +605,22 @@
 msgid "SEDAAcquiredDate_plural"
 msgstr ""
 
+msgid "SEDAAcquisitionInformation"
+msgstr ""
+
+msgctxt "inlined:SEDAArchiveTransfer.seda_acquisition_information_from.object"
+msgid "SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
+msgid "SEDAAcquisitionInformationCodeListVersion_plural"
+msgstr ""
+
+msgid "SEDAAcquisitionInformation_plural"
+msgstr ""
+
 msgid "SEDAAddressee"
 msgstr "Destinataire pour action"
 
@@ -2030,6 +2052,18 @@
 msgid "This SEDAAcquiredDate:"
 msgstr ""
 
+msgid "This SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "This SEDAAcquisitionInformation:"
+msgstr ""
+
+msgid "This SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
+msgid "This SEDAAcquisitionInformationCodeListVersion:"
+msgstr ""
+
 msgid "This SEDAAddressee"
 msgstr "Ce destinataire pour action"
 
@@ -2892,6 +2926,16 @@
 msgid "add a SEDAAcquiredDate"
 msgstr ""
 
+msgid "add a SEDAAcquisitionInformation"
+msgstr ""
+
+msgctxt "inlined:SEDAArchiveTransfer.seda_acquisition_information_from.object"
+msgid "add a SEDAAcquisitionInformation"
+msgstr ""
+
+msgid "add a SEDAAcquisitionInformationCodeListVersion"
+msgstr ""
+
 msgid "add a SEDAAddressee"
 msgstr "ajouter un destinataire pour action"
 
@@ -3936,6 +3980,14 @@
 msgid "container"
 msgstr ""
 
+msgctxt "SEDAAcquisitionInformation"
+msgid "container"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "container"
+msgstr ""
+
 msgctxt "SEDAAddressee"
 msgid "container"
 msgstr ""
@@ -4940,6 +4992,62 @@
 msgid "seda_acquired_date_object"
 msgstr ""
 
+msgid "seda_acquisition_information_code_list_version_from"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "seda_acquisition_information_code_list_version_from"
+msgstr ""
+
+msgid "seda_acquisition_information_code_list_version_from_object"
+msgstr "modalités d'entrée"
+
+msgctxt "SEDAArchiveTransfer"
+msgid "seda_acquisition_information_code_list_version_from_object"
+msgstr ""
+
+msgid "seda_acquisition_information_code_list_version_to"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "seda_acquisition_information_code_list_version_to"
+msgstr ""
+
+msgid "seda_acquisition_information_code_list_version_to_object"
+msgstr ""
+
+msgctxt "ConceptScheme"
+msgid "seda_acquisition_information_code_list_version_to_object"
+msgstr ""
+
+msgid "seda_acquisition_information_from"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformation"
+msgid "seda_acquisition_information_from"
+msgstr ""
+
+msgid "seda_acquisition_information_from_object"
+msgstr "modalité d'entrée"
+
+msgctxt "SEDAArchiveTransfer"
+msgid "seda_acquisition_information_from_object"
+msgstr ""
+
+msgid "seda_acquisition_information_to"
+msgstr "valeur"
+
+msgctxt "SEDAAcquisitionInformation"
+msgid "seda_acquisition_information_to"
+msgstr ""
+
+msgid "seda_acquisition_information_to_object"
+msgstr ""
+
+msgctxt "Concept"
+msgid "seda_acquisition_information_to_object"
+msgstr ""
+
 msgid "seda_addressee_from"
 msgstr ""
 
@@ -7885,6 +7993,14 @@
 msgid "user_annotation"
 msgstr ""
 
+msgctxt "SEDAAcquisitionInformation"
+msgid "user_annotation"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "user_annotation"
+msgstr ""
+
 msgctxt "SEDAAddressee"
 msgid "user_annotation"
 msgstr ""
@@ -8400,6 +8516,14 @@
 msgid "user_cardinality"
 msgstr ""
 
+msgctxt "SEDAAcquisitionInformation"
+msgid "user_cardinality"
+msgstr ""
+
+msgctxt "SEDAAcquisitionInformationCodeListVersion"
+msgid "user_cardinality"
+msgstr ""
+
 msgctxt "SEDAAddressee"
 msgid "user_cardinality"
 msgstr ""
--- a/cubicweb_seda/migration/0.8.0_Any.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/migration/0.8.0_Any.py	Fri Mar 03 10:31:30 2017 +0100
@@ -5,6 +5,9 @@
 add_entity_type('SEDAFileFormatCodeListVersion')
 drop_relation_type('seda_file_format_code_list_version')
 
+add_entity_type('SEDAAcquisitionInformationCodeListVersion')
+add_entity_type('SEDAAcquisitionInformation')
+
 add_entity_type('SEDALegalStatus')
 
 sync_schema_props_perms('seda_algorithm')
--- a/cubicweb_seda/schema/seda2.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/schema/seda2.py	Fri Mar 03 10:31:30 2017 +0100
@@ -417,6 +417,30 @@
 
 @seda_profile_element(cardinalities=['0..1', '1'], default_cardinality='0..1',
                       annotable=True)
+class SEDAAcquisitionInformationCodeListVersion(EntityType):
+    u""""""
+
+
+class archive_transfer_acquisition_information_code_list_version_from(RelationDefinition):
+    name = 'seda_acquisition_information_code_list_version_from'
+    subject = 'SEDAAcquisitionInformationCodeListVersion'
+    object = 'SEDAArchiveTransfer'
+    cardinality = '1?'
+    composite = fulltext_container = 'object'
+    inlined = True
+    constraints = []
+
+class acquisition_information_code_list_version_acquisition_information_code_list_version_to(RelationDefinition):
+    name = 'seda_acquisition_information_code_list_version_to'
+    subject = 'SEDAAcquisitionInformationCodeListVersion'
+    object = 'ConceptScheme'
+    cardinality = '?*'
+    composite = fulltext_container = None
+    inlined = True
+    constraints = []
+
+@seda_profile_element(cardinalities=['0..1', '1'], default_cardinality='0..1',
+                      annotable=True)
 class SEDARelationshipCodeListVersion(EntityType):
     u""""""
 
@@ -582,6 +606,30 @@
 
 @seda_profile_element(cardinalities=['0..1', '1'], default_cardinality='0..1',
                       annotable=True)
+class SEDAAcquisitionInformation(EntityType):
+    u""""""
+
+
+class archive_transfer_acquisition_information_from(RelationDefinition):
+    name = 'seda_acquisition_information_from'
+    subject = 'SEDAAcquisitionInformation'
+    object = 'SEDAArchiveTransfer'
+    cardinality = '1?'
+    composite = fulltext_container = 'object'
+    inlined = True
+    constraints = []
+
+class acquisition_information_acquisition_information_to(RelationDefinition):
+    name = 'seda_acquisition_information_to'
+    subject = 'SEDAAcquisitionInformation'
+    object = 'Concept'
+    cardinality = '?*'
+    composite = fulltext_container = None
+    inlined = True
+    constraints = [RQLConstraint('O in_scheme CS, EXISTS(CACLV seda_acquisition_information_code_list_version_from AT,        CACLV seda_acquisition_information_code_list_version_to CS,       S container AT) OR EXISTS(S container AU, AU is SEDAArchiveUnit, CS scheme_relation_type RT,            RT name "seda_acquisition_information_to")')]
+
+@seda_profile_element(cardinalities=['0..1', '1'], default_cardinality='0..1',
+                      annotable=True)
 class SEDALegalStatus(EntityType):
     u""""""
 
--- a/cubicweb_seda/views/archivetransfer.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/views/archivetransfer.py	Fri Mar 03 10:31:30 2017 +0100
@@ -39,6 +39,7 @@
     ('seda_signature', 'object'),
     ('seda_archival_agreement', 'object'),
     ('seda_service_level', 'object'),
+    ('seda_acquisition_information_from', 'object'),
     ('seda_legal_status_from', 'object')]
 
 pvs = uicfg.primaryview_section
--- a/cubicweb_seda/views/uicfg.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/views/uicfg.py	Fri Mar 03 10:31:30 2017 +0100
@@ -76,6 +76,7 @@
 ives['SEDAAltStorageRulePreventInheritance'] = 'subobject'
 ives['SEDAWriter'] = 'subobject'
 ives['SEDAAccessRuleCodeListVersion'] = 'subobject'
+ives['SEDAAcquisitionInformationCodeListVersion'] = 'subobject'
 ives['SEDALegalStatus'] = 'subobject'
 ives['SEDADisseminationRule'] = 'subobject'
 ives['SEDAAddressee'] = 'subobject'
@@ -96,6 +97,7 @@
 ives['SEDAVersion'] = 'subobject'
 ives['SEDAGpsLongitudeRef'] = 'subobject'
 ives['SEDASource'] = 'subobject'
+ives['SEDAAcquisitionInformation'] = 'subobject'
 ives['SEDAEndDate'] = 'subobject'
 ives['SEDACreatingOs'] = 'subobject'
 ives['SEDAAltRequiresArchiveUnitRefId'] = 'subobject'
@@ -225,6 +227,10 @@
 abaa.tag_object_of(('*', 'seda_classification_rule_code_list_version_from', '*'), False)
 abaa.tag_object_of(('*', 'seda_classification_rule_code_list_version_to', '*'), False)
 abaa.tag_subject_of(('*', 'seda_classification_rule_code_list_version_to', '*'), False)
+abaa.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), False)
+abaa.tag_object_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), False)
+abaa.tag_object_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), False)
+abaa.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), False)
 abaa.tag_subject_of(('*', 'seda_relationship_code_list_version_from', '*'), False)
 abaa.tag_object_of(('*', 'seda_relationship_code_list_version_from', '*'), False)
 abaa.tag_object_of(('*', 'seda_relationship_code_list_version_to', '*'), False)
@@ -247,6 +253,10 @@
 abaa.tag_object_of(('*', 'seda_archive_unit', '*'), False)
 abaa.tag_subject_of(('*', 'seda_service_level', '*'), False)
 abaa.tag_object_of(('*', 'seda_service_level', '*'), False)
+abaa.tag_subject_of(('*', 'seda_acquisition_information_from', '*'), False)
+abaa.tag_object_of(('*', 'seda_acquisition_information_from', '*'), False)
+abaa.tag_object_of(('*', 'seda_acquisition_information_to', '*'), False)
+abaa.tag_subject_of(('*', 'seda_acquisition_information_to', '*'), False)
 abaa.tag_subject_of(('*', 'seda_legal_status_from', '*'), False)
 abaa.tag_object_of(('*', 'seda_legal_status_from', '*'), False)
 abaa.tag_object_of(('*', 'seda_legal_status_to', '*'), False)
@@ -548,6 +558,7 @@
 affk.tag_subject_of(('*', 'seda_dissemination_rule_code_list_version_to', '*'), {'label': 'value'})
 affk.tag_subject_of(('*', 'seda_reuse_rule_code_list_version_to', '*'), {'label': 'value'})
 affk.tag_subject_of(('*', 'seda_classification_rule_code_list_version_to', '*'), {'label': 'value'})
+affk.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), {'label': 'value'})
 affk.tag_subject_of(('*', 'seda_relationship_code_list_version_to', '*'), {'label': 'value'})
 affk.tag_subject_of(('*', 'filename', '*'), {'widget': fw.TextInput({'size': 80})})
 affk.tag_subject_of(('*', 'compressed', '*'), {'allow_none': True})
@@ -644,6 +655,10 @@
 afs.tag_object_of(('*', 'seda_classification_rule_code_list_version_from', '*'), 'main', 'hidden')
 afs.tag_object_of(('*', 'seda_classification_rule_code_list_version_to', '*'), 'main', 'hidden')
 afs.tag_subject_of(('*', 'seda_classification_rule_code_list_version_to', '*'), 'main', 'attributes')
+afs.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), 'main', 'hidden')
+afs.tag_object_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), 'main', 'hidden')
+afs.tag_object_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), 'main', 'hidden')
+afs.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), 'main', 'attributes')
 afs.tag_subject_of(('*', 'seda_relationship_code_list_version_from', '*'), 'main', 'hidden')
 afs.tag_object_of(('*', 'seda_relationship_code_list_version_from', '*'), 'main', 'hidden')
 afs.tag_object_of(('*', 'seda_relationship_code_list_version_to', '*'), 'main', 'hidden')
@@ -666,6 +681,10 @@
 afs.tag_object_of(('*', 'seda_archive_unit', '*'), 'main', 'hidden')
 afs.tag_subject_of(('*', 'seda_service_level', '*'), 'main', 'hidden')
 afs.tag_object_of(('*', 'seda_service_level', '*'), 'main', 'inlined')
+afs.tag_subject_of(('*', 'seda_acquisition_information_from', '*'), 'main', 'hidden')
+afs.tag_object_of(('*', 'seda_acquisition_information_from', '*'), 'main', 'inlined')
+afs.tag_object_of(('*', 'seda_acquisition_information_to', '*'), 'main', 'hidden')
+afs.tag_subject_of(('*', 'seda_acquisition_information_to', '*'), 'main', 'attributes')
 afs.tag_subject_of(('*', 'seda_legal_status_from', '*'), 'main', 'hidden')
 afs.tag_object_of(('*', 'seda_legal_status_from', '*'), 'main', 'inlined')
 afs.tag_object_of(('*', 'seda_legal_status_to', '*'), 'main', 'hidden')
@@ -993,6 +1012,9 @@
 pvs.tag_subject_of(('*', 'seda_classification_rule_code_list_version_from', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_classification_rule_code_list_version_from', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_classification_rule_code_list_version_to', '*'), 'hidden')
+pvs.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), 'hidden')
+pvs.tag_object_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), 'hidden')
+pvs.tag_object_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), 'hidden')
 pvs.tag_subject_of(('*', 'seda_relationship_code_list_version_from', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_relationship_code_list_version_from', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_relationship_code_list_version_to', '*'), 'hidden')
@@ -1005,6 +1027,7 @@
 pvs.tag_object_of(('*', 'seda_data_object_version_to', '*'), 'hidden')
 pvs.tag_subject_of(('*', 'seda_archive_unit', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_archive_unit', '*'), 'hidden')
+pvs.tag_object_of(('*', 'seda_acquisition_information_to', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_legal_status_to', '*'), 'hidden')
 pvs.tag_subject_of(('*', 'seda_storage_rule', '*'), 'hidden')
 pvs.tag_object_of(('*', 'seda_storage_rule', '*'), 'hidden')
@@ -1158,6 +1181,8 @@
 rec.tag_subject_of(('*', 'seda_reuse_rule_code_list_version_to', '*'), {'novalue_label': '<no value specified>'})
 rec.tag_object_of(('*', 'seda_classification_rule_code_list_version_from', '*'), {'novalue_label': ' '})
 rec.tag_subject_of(('*', 'seda_classification_rule_code_list_version_to', '*'), {'novalue_label': '<no value specified>'})
+rec.tag_object_of(('*', 'seda_acquisition_information_code_list_version_from', '*'), {'novalue_label': ' '})
+rec.tag_subject_of(('*', 'seda_acquisition_information_code_list_version_to', '*'), {'novalue_label': '<no value specified>'})
 rec.tag_object_of(('*', 'seda_relationship_code_list_version_from', '*'), {'novalue_label': ' '})
 rec.tag_subject_of(('*', 'seda_relationship_code_list_version_to', '*'), {'novalue_label': '<no value specified>'})
 rec.tag_subject_of(('*', 'filename', '*'), {'novalue_label': '<no value specified>'})
@@ -1168,6 +1193,8 @@
 rec.tag_object_of(('*', 'seda_compressed', '*'), {'novalue_label': ' '})
 rec.tag_subject_of(('*', 'service_level', '*'), {'novalue_label': '<no value specified>'})
 rec.tag_object_of(('*', 'seda_service_level', '*'), {'novalue_label': ' '})
+rec.tag_object_of(('*', 'seda_acquisition_information_from', '*'), {'novalue_label': ' '})
+rec.tag_subject_of(('*', 'seda_acquisition_information_to', '*'), {'novalue_label': '<no value specified>'})
 rec.tag_object_of(('*', 'seda_legal_status_from', '*'), {'novalue_label': ' '})
 rec.tag_subject_of(('*', 'seda_legal_status_to', '*'), {'novalue_label': '<no value specified>'})
 rec.tag_object_of(('*', 'seda_storage_rule', '*'), {'novalue_label': ' '})
--- a/cubicweb_seda/xsd.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/xsd.py	Fri Mar 03 10:31:30 2017 +0100
@@ -130,6 +130,7 @@
     'type': 'Concept',  # Relationship
     'algorithm': 'Concept',
     'language': 'Concept',
+    'AcquisitionInformation': 'Concept',
     'DescriptionLevel': 'Concept',
     'ClassificationLevel': 'Concept',
     'FinalAction': 'Concept',
@@ -155,6 +156,7 @@
     'Type': 'Concept',
 
     'RelationshipCodeListVersion': 'ConceptScheme',
+    'AcquisitionInformationCodeListVersion': 'ConceptScheme',
     'AuthorizationReasonCodeListVersion': 'ConceptScheme',
     'ClassificationRuleCodeListVersion': 'ConceptScheme',
     'ReuseRuleCodeListVersion': 'ConceptScheme',
--- a/cubicweb_seda/xsd/seda-2.0-main.xsd	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/xsd/seda-2.0-main.xsd	Fri Mar 03 10:31:30 2017 +0100
@@ -70,6 +70,11 @@
             <xsd:group ref="TransportCodeListsGroup"/>
             <xsd:group ref="TechnicalCodeListsGroup"/>
             <xsd:group ref="ManagementCodeListsGroup"/>
+            <xsd:element name="AcquisitionInformationCodeListVersion" type="CodeType" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>Version de la liste de codes des modalités d'entrée.</xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
             <xsd:element name="AuthorizationReasonCodeListVersion" type="CodeType" minOccurs="0">
                 <xsd:annotation>
                     <xsd:documentation>Version de la liste de codes d'autorisation.</xsd:documentation>
@@ -138,6 +143,11 @@
                     <xsd:documentation>Niveau de service applicable aux unités d’archives.</xsd:documentation>
                 </xsd:annotation>
             </xsd:element>
+            <xsd:element name="AcquisitionInformation" type="NonEmptyTokenType" minOccurs="0">
+                <xsd:annotation>
+                    <xsd:documentation>Modalités d'entrée des archives.</xsd:documentation>
+                </xsd:annotation>
+            </xsd:element>
             <xsd:element name="LegalStatus" type="LegalStatusType" minOccurs="0">
                 <xsd:annotation>
                     <xsd:documentation>Statut des archives échangées.</xsd:documentation>
--- a/cubicweb_seda/xsd2yams.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/cubicweb_seda/xsd2yams.py	Fri Mar 03 10:31:30 2017 +0100
@@ -118,6 +118,13 @@
     # - scheme defined as code list
     #   if you modify one of those, keep synchronized the SCHEME_FROM_CONTAINER map below
     #   and run "python -m tox -e make" to update the schema"
+    'seda_acquisition_information_to': (
+        'O in_scheme CS, '
+        'EXISTS(CACLV seda_acquisition_information_code_list_version_from AT, '
+        '       CACLV seda_acquisition_information_code_list_version_to CS,'
+        '       S container AT)'
+        ' OR EXISTS(S container AU, AU is SEDAArchiveUnit, CS scheme_relation_type RT, '
+        '           RT name "seda_acquisition_information_to")'),
     'seda_mime_type_to': (
         'O in_scheme CS, '
         'EXISTS(CACLV seda_mime_type_code_list_version_from AT, '
@@ -218,6 +225,11 @@
 # Client code (e.g. in `views/dataobject`) expect scheme to be mapped to the "CS" variable
 # and container's eid will be specified using a "container" query argument.
 SCHEME_FROM_CONTAINER = {
+    'seda_acquisition_information_to': {
+        'SEDAArchiveTransfer': ('CACLV seda_acquisition_information_code_list_version_from AT, '
+                                'CACLV seda_acquisition_information_code_list_version_to CS, '
+                                'AT eid %(container)s'),
+    },
     'seda_mime_type_to': {
         'SEDAArchiveTransfer': ('CACLV seda_mime_type_code_list_version_from AT, '
                                 'CACLV seda_mime_type_code_list_version_to CS, '
--- a/test/test_xsd2yams.py	Fri Mar 03 11:21:32 2017 +0100
+++ b/test/test_xsd2yams.py	Fri Mar 03 10:31:30 2017 +0100
@@ -269,6 +269,9 @@
                 ('ServiceLevel',
                  [('seda_service_level', 'object', 'SEDAServiceLevel'),
                   ('service_level', 'subject', 'String')]),
+                ('AcquisitionInformation',
+                 [('seda_acquisition_information_from', 'object', 'SEDAAcquisitionInformation'),
+                  ('seda_acquisition_information_to', 'subject', 'Concept')]),
                 ('LegalStatus',
                  [('seda_legal_status_from', 'object', 'SEDALegalStatus'),
                   ('seda_legal_status_to', 'subject', 'Concept')]),