oldaplib 0.3.26__tar.gz → 0.3.27__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. {oldaplib-0.3.26 → oldaplib-0.3.27}/PKG-INFO +1 -1
  2. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/shared.trig +7 -1
  3. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/objectfactory.py +7 -7
  4. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/resourceclass.py +4 -0
  5. oldaplib-0.3.27/oldaplib/src/version.py +1 -0
  6. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_objectfactory.py +44 -4
  7. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/instances_test.trig +18 -0
  8. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/objectfactory_test.trig +41 -3
  9. {oldaplib-0.3.26 → oldaplib-0.3.27}/pyproject.toml +1 -1
  10. oldaplib-0.3.26/oldaplib/src/version.py +0 -1
  11. {oldaplib-0.3.26 → oldaplib-0.3.27}/README.md +0 -0
  12. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/__init__.py +0 -0
  13. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/apps/load_list.py +0 -0
  14. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/admin-testing.trig +0 -0
  15. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/admin.trig +0 -0
  16. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/example.trig +0 -0
  17. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/oldap.trig +0 -0
  18. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/oldap.ttl +0 -0
  19. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/ontologies/standard/.gitsave +0 -0
  20. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/__init__.py +0 -0
  21. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/cachesingleton.py +0 -0
  22. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/connection.py +0 -0
  23. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/datamodel.py +0 -0
  24. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/dtypes/__init__.py +0 -0
  25. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/dtypes/bnode.py +0 -0
  26. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/dtypes/languagein.py +0 -0
  27. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/dtypes/namespaceiri.py +0 -0
  28. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/dtypes/rdfset.py +0 -0
  29. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/dtypes/xsdset.py +0 -0
  30. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/__init__.py +0 -0
  31. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/action.py +0 -0
  32. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/adminpermissions.py +0 -0
  33. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/attributeclass.py +0 -0
  34. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/datapermissions.py +0 -0
  35. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/externalontologyattr.py +0 -0
  36. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/haspropertyattr.py +0 -0
  37. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/language.py +0 -0
  38. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/oldaplistattr.py +0 -0
  39. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/oldaplistnodeattr.py +0 -0
  40. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/owlpropertytype.py +0 -0
  41. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/permissionsetattr.py +0 -0
  42. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/projectattr.py +0 -0
  43. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/propertyclassattr.py +0 -0
  44. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/resourceclassattr.py +0 -0
  45. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/sparql_result_format.py +0 -0
  46. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/userattr.py +0 -0
  47. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/enums/xsd_datatypes.py +0 -0
  48. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/externalontology.py +0 -0
  49. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/globalconfig.py +0 -0
  50. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/hasproperty.py +0 -0
  51. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/Notify.py +0 -0
  52. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/__init__.py +0 -0
  53. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/attributechange.py +0 -0
  54. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/context.py +0 -0
  55. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/convert2datatype.py +0 -0
  56. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/irincname.py +0 -0
  57. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/json_encoder.py +0 -0
  58. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/langstring.py +0 -0
  59. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/numeric.py +0 -0
  60. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/observable_dict.py +0 -0
  61. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/observable_set.py +0 -0
  62. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/oldaperror.py +0 -0
  63. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/query_processor.py +0 -0
  64. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/semantic_version.py +0 -0
  65. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/serializeableset.py +0 -0
  66. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/serializer.py +0 -0
  67. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/singletonmeta.py +0 -0
  68. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/helpers/tools.py +0 -0
  69. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/iconnection.py +0 -0
  70. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/in_project.py +0 -0
  71. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/model.py +0 -0
  72. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/oldaplist.py +0 -0
  73. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/oldaplist_helpers.py +0 -0
  74. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/oldaplistnode.py +0 -0
  75. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/oldaplogging.py +0 -0
  76. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/permissionset.py +0 -0
  77. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/project.py +0 -0
  78. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/propertyclass.py +0 -0
  79. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/user.py +0 -0
  80. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/userdataclass.py +0 -0
  81. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/__init__.py +0 -0
  82. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/floatingpoint.py +0 -0
  83. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/iri.py +0 -0
  84. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd.py +0 -0
  85. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_anyuri.py +0 -0
  86. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_base64binary.py +0 -0
  87. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_boolean.py +0 -0
  88. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_byte.py +0 -0
  89. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_date.py +0 -0
  90. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_datetime.py +0 -0
  91. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_datetimestamp.py +0 -0
  92. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_decimal.py +0 -0
  93. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_double.py +0 -0
  94. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_duration.py +0 -0
  95. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_float.py +0 -0
  96. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_gday.py +0 -0
  97. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_gmonth.py +0 -0
  98. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_gmonthday.py +0 -0
  99. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_gyear.py +0 -0
  100. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_gyearmonth.py +0 -0
  101. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_hexbinary.py +0 -0
  102. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_id.py +0 -0
  103. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_idref.py +0 -0
  104. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_int.py +0 -0
  105. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_integer.py +0 -0
  106. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_language.py +0 -0
  107. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_long.py +0 -0
  108. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_name.py +0 -0
  109. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_ncname.py +0 -0
  110. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_negativeinteger.py +0 -0
  111. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_nmtoken.py +0 -0
  112. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_nonnegativeinteger.py +0 -0
  113. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_nonpositiveinteger.py +0 -0
  114. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_normalizedstring.py +0 -0
  115. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_positiveinteger.py +0 -0
  116. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_qname.py +0 -0
  117. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_short.py +0 -0
  118. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_string.py +0 -0
  119. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_time.py +0 -0
  120. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_token.py +0 -0
  121. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_unsignedbyte.py +0 -0
  122. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_unsignedint.py +0 -0
  123. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_unsignedlong.py +0 -0
  124. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/src/xsd/xsd_unsignedshort.py +0 -0
  125. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/__init__.py +0 -0
  126. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_cache.py +0 -0
  127. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_connection.py +0 -0
  128. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_context.py +0 -0
  129. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_datamodel.py +0 -0
  130. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_dtypes.py +0 -0
  131. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_externalontologies.py +0 -0
  132. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_hasproperty.py +0 -0
  133. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_in_project.py +0 -0
  134. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_langstring.py +0 -0
  135. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_language_in.py +0 -0
  136. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_observable_dict.py +0 -0
  137. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_observable_set.py +0 -0
  138. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_oldaplist.py +0 -0
  139. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_oldaplist_helpers.py +0 -0
  140. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_oldaplistnode.py +0 -0
  141. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_permissionset.py +0 -0
  142. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_project.py +0 -0
  143. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_propertyclass.py +0 -0
  144. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_resourceclass.py +0 -0
  145. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_semantic_version.py +0 -0
  146. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_user.py +0 -0
  147. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/test/test_xsd_datatypes.py +0 -0
  148. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/Gender.yaml +0 -0
  149. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/collections_type.yaml +0 -0
  150. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/connection_test.trig +0 -0
  151. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/datamodel_test.trig +0 -0
  152. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/event_type.yaml +0 -0
  153. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/hlist_schema.yaml +0 -0
  154. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/institution_or_building_type.yaml +0 -0
  155. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/language.yaml +0 -0
  156. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/location_type.yaml +0 -0
  157. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/means_of_transportation.yaml +0 -0
  158. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/playground_list.yaml +0 -0
  159. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/role.yaml +0 -0
  160. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/source_type-1.yaml +0 -0
  161. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/source_type.yaml +0 -0
  162. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/test_move_left_of_toL.yaml +0 -0
  163. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testdata/testlist.yaml +0 -0
  164. {oldaplib-0.3.26 → oldaplib-0.3.27}/oldaplib/testit.http +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: oldaplib
3
- Version: 0.3.26
3
+ Version: 0.3.27
4
4
  Summary: Open Media Access Server Library (Linked Open Data middleware/RESTApi)
5
5
  License: GNU Affero General Public License version 3
6
6
  Author: Lukas Rosenthaler
@@ -193,6 +193,9 @@ shared:shacl {
193
193
  oldap:externalOntology "false"^^xsd:boolean ;
194
194
  sh:datatype xsd:string ;
195
195
  sh:in ( 'iiif' 'http' 'custom') ;
196
+ sh:minCount "1"^^xsd:integer ;
197
+ sh:maxCount "1"^^xsd:integer ;
198
+ sh:order "4.0"^^xsd:decimal ;
196
199
  ] ;
197
200
  sh:property [
198
201
  sh:path shared:path ;
@@ -203,7 +206,10 @@ shared:shacl {
203
206
  oldap:statementProperty "false"^^xsd:boolean ;
204
207
  oldap:externalOntology "false"^^xsd:boolean ;
205
208
  sh:datatype xsd:string ;
206
- ] .
209
+ sh:minCount "1"^^xsd:integer ;
210
+ sh:maxCount "1"^^xsd:integer ;
211
+ sh:order "4.0"^^xsd:decimal ;
212
+ ] .
207
213
  }
208
214
 
209
215
  shared:onto {
@@ -1156,9 +1156,9 @@ class ResourceInstance:
1156
1156
  WHERE {{
1157
1157
  VALUES ?inputImageId {{ {mediaObjectId.toRdf} }}
1158
1158
 
1159
+ ?subject rdf:type shared:MediaObject .
1159
1160
  GRAPH ?graph {{
1160
1161
  ?subject shared:imageId ?inputImageId .
1161
- ?subject rdf:type shared:MediaObject .
1162
1162
  ?subject shared:originalName ?originalName .
1163
1163
  ?subject shared:originalMimeType ?originalMimeType .
1164
1164
  ?subject shared:serverUrl ?serverUrl .
@@ -1182,13 +1182,13 @@ class ResourceInstance:
1182
1182
  if len(res) == 0 or len(res) > 1:
1183
1183
  raise OldapErrorNotFound(f'Media object with id {mediaObjectId} not found.')
1184
1184
  return {'iri': res[0]['subject'],
1185
- 'originalName': res[0]['originalName'],
1186
- 'originalMimeType': res[0]['originalMimeType'],
1187
- 'serverUrl': res[0]['serverUrl'],
1188
- 'protocol': res[0]['protocol'],
1185
+ 'shared:originalName': res[0]['originalName'],
1186
+ 'shared:originalMimeType': res[0]['originalMimeType'],
1187
+ 'shared:serverUrl': res[0]['serverUrl'],
1188
+ 'shared:protocol': res[0]['protocol'],
1189
1189
  'graph': res[0]['graph'],
1190
- 'path': res[0]['path'],
1191
- 'permval': res[0]['permval']}
1190
+ 'shared:path': res[0]['path'],
1191
+ 'oldap:permissionValue': res[0]['permval']}
1192
1192
 
1193
1193
 
1194
1194
  def toJsonObject(self) -> dict[str, list[str] | str]:
@@ -799,6 +799,10 @@ class ResourceClass(Model, Notify):
799
799
  conf = GlobalConfig(self._con)
800
800
  sysproj = conf.sysproject
801
801
  superclass = ResourceClass.read(self._con, sysproj, owliri)
802
+ elif owliri.prefix == 'shared':
803
+ conf = GlobalConfig(self._con)
804
+ sharedproj = conf.sharedproject
805
+ superclass = ResourceClass.read(self._con, sharedproj, owliri)
802
806
  else:
803
807
  superclass = ResourceClass.read(self._con, self._project, owliri)
804
808
  self._attributes[ResClassAttribute.SUPERCLASS][owliri] = superclass
@@ -0,0 +1 @@
1
+ __version__ = "0.3.27"
@@ -365,6 +365,8 @@ class TestObjectFactory(unittest.TestCase):
365
365
  originalMimeType='image/tiff',
366
366
  serverUrl='http://iiif.oldap.org/iiif/3/',
367
367
  imageId='cat.tif',
368
+ path='test',
369
+ protocol='iiif',
368
370
  grantsPermission=Iri('oldap:GenericView'))
369
371
  mo.create()
370
372
  data = ResourceInstance.read_data(con=self._connection, iri=mo.iri, projectShortName='test')
@@ -700,10 +702,48 @@ class TestObjectFactory(unittest.TestCase):
700
702
  resClass='test:Page')
701
703
  self.assertEqual(len(res), 8)
702
704
 
703
- @unittest.skip('Work in progress')
704
- def test_media_object(self):
705
- res = ResourceInstance.get_media_object_by_id(con=self._connection,mediaObjectId='Nn3Epw1LMTNS.tif')
706
- print(res)
705
+ #@unittest.skip('Work in progress')
706
+ def test_read_media_object(self):
707
+ res = ResourceInstance.get_media_object_by_id(con=self._connection,mediaObjectId='x_34db.tif')
708
+ self.assertEqual(res['iri'], Iri("urn:uuid:1b8e3f42-6d7a-4c9b-a3f8-93c2e5d7b901"))
709
+ self.assertEqual(res['shared:originalName'], Xsd_string("testfile.tif"))
710
+ self.assertEqual(res['shared:originalMimeType'], Xsd_string("image/tiff"))
711
+ self.assertEqual(res['shared:serverUrl'], Xsd_string("https://iiif.oldap.org"))
712
+ self.assertEqual(res['shared:protocol'], Xsd_string("iiif"))
713
+ self.assertEqual(res['graph'], Xsd_QName("test:data"))
714
+ self.assertEqual(res['shared:path'], Xsd_string("test/subtest"))
715
+ self.assertEqual(res['oldap:permissionValue'], Xsd_integer(2))
716
+
717
+ def test_create_media_object(self):
718
+ dm = DataModel.read(con=self._connection, project='test')
719
+ factory = ResourceInstanceFactory(con=self._connection, project='test')
720
+ MLE = factory.createObjectInstance('test:MediaLibraryEntry')
721
+ mle = MLE(originalName='MyCarnivalImagetif',
722
+ originalMimeType='image/tiff',
723
+ imageId='x_34dbY4.tif',
724
+ serverUrl='http://iiif.oldap.org/iiif/3/',
725
+ path='test/subtest',
726
+ protocol='iiif',
727
+ caption='My Carnival Image of 1968 with the Bohrerhof-Clique',
728
+ grantsPermission=Iri('oldap:GenericView'))
729
+ mle.create()
730
+ data = ResourceInstance.read_data(con=self._connection, iri=mle.iri, projectShortName='test')
731
+ self.assertEqual(data['shared:originalName'], ["MyCarnivalImagetif"])
732
+ self.assertEqual(data['shared:originalMimeType'], ['image/tiff'])
733
+ self.assertEqual(data['shared:serverUrl'], ['http://iiif.oldap.org/iiif/3/'])
734
+ self.assertEqual(data['shared:imageId'], ['x_34dbY4.tif'])
735
+ self.assertEqual(data['shared:protocol'], ['iiif'])
736
+ self.assertEqual(data['shared:path'], ['test/subtest'])
737
+ self.assertEqual(data['test:caption'], ['My Carnival Image of 1968 with the Bohrerhof-Clique'])
738
+
739
+
740
+ data2 = ResourceInstance.get_media_object_by_id(con=self._connection, mediaObjectId='x_34dbY4.tif')
741
+ self.assertEqual(data2['shared:originalName'], "MyCarnivalImagetif")
742
+ self.assertEqual(data2['shared:originalMimeType'], 'image/tiff')
743
+ self.assertEqual(data2['shared:serverUrl'], 'http://iiif.oldap.org/iiif/3/')
744
+ self.assertEqual(data2['shared:protocol'], 'iiif')
745
+ self.assertEqual(data2['shared:path'], 'test/subtest')
746
+ mle.delete()
707
747
 
708
748
  if __name__ == '__main__':
709
749
  unittest.main()
@@ -1,6 +1,8 @@
1
+ @prefix http: <http://www.w3.org/2011/http#> .
1
2
  @prefix : <http://oldap.org/base#> .
2
3
  @prefix test: <http://oldap.org/test#> .
3
4
  @prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
5
+ @prefix shared: <http://oldap.org/shared#> .
4
6
 
5
7
  test:data {
6
8
  <urn:uuid:7a1de6d7-de75-4875-ab24-74819057703f> a test:Book;
@@ -116,4 +118,20 @@ test:data {
116
118
  test:pageDescription "Description for page 4"@en;
117
119
  test:pageContent "Waseliwas for page 4\\n9pB6yFsJs7zcCkyF9j9flbGUcNczytEsw1nSUYCBLIN3P63wePvVQnWDX5dgUDXyeEwUwoBycRPcrp6kG2wsknVjfajQI30lZ73E";
118
120
  test:pageInBook <urn:uuid:9bf6ae23-bf2f-4466-abe3-65efe6afe589> .
121
+
122
+ <urn:uuid:1b8e3f42-6d7a-4c9b-a3f8-93c2e5d7b901> a shared:MediaObject;
123
+ :createdBy <https://orcid.org/0000-0003-1681-4036>;
124
+ :creationDate "2025-11-13T16:43:28.861171+01:00"^^xsd:dateTimeStamp;
125
+ :lastModifiedBy <https://orcid.org/0000-0003-1681-4036>;
126
+ :lastModificationDate "2025-11-13T16:43:28.861171+01:00"^^xsd:dateTimeStamp;
127
+ :grantsPermission :GenericView;
128
+ shared:originalName 'testfile.tif';
129
+ shared:originalMimeType 'image/tiff';
130
+ shared:serverUrl 'https://iiif.oldap.org';
131
+ shared:imageId 'x_34db.tif';
132
+ shared:protocol 'iiif';
133
+ shared:path 'test/subtest' .
134
+
135
+
136
+
119
137
  }
@@ -10,6 +10,7 @@
10
10
  @prefix dcterms: <http://purl.org/dc/terms/> .
11
11
  @prefix oldap: <http://oldap.org/base#> .
12
12
  @prefix test: <http://oldap.org/test#> .
13
+ @prefix shared: <http://oldap.org/shared#> .
13
14
 
14
15
  oldap:admin {
15
16
 
@@ -68,6 +69,25 @@ test:shacl {
68
69
  dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
69
70
  ] .
70
71
 
72
+ test:MediaLibraryEntryShape a sh:NodeShape ;
73
+ sh:targetClass test:MediaLibraryEntry ;
74
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
75
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
76
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
77
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
78
+ sh:node oldap:ThingShape, shared:MediaObjectShape ;
79
+ sh:property [
80
+ sh:path rdf:type ;
81
+ ],
82
+ [
83
+ sh:path test:caption ;
84
+ sh:datatype xsd:string ;
85
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
86
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
87
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
88
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
89
+ ] .
90
+
71
91
 
72
92
 
73
93
  test:PersonShape a sh:NodeShape ;
@@ -840,6 +860,18 @@ test:onto {
840
860
  owl:onDataRange xsd:string ;
841
861
  ] .
842
862
 
863
+ test:MediaLibraryEntry rdf:type owl:Class ;
864
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
865
+ dcterms:created "2023-11-04T12:00:00+00:00"^^xsd:dateTime ;
866
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
867
+ dcterms:modified "2023-11-04T12:00:00+00:00"^^xsd:dateTime ;
868
+ rdfs:subClassOf oldap:Thing, shared:MediaObject, [
869
+ rdf:type owl:Restriction ;
870
+ owl:onProperty test:caption ;
871
+ owl:onDataRange xsd:string ;
872
+ ] .
873
+
874
+
843
875
  test:name rdf:type owl:DatatypeProperty ;
844
876
  rdfs:domain test:Mammal ;
845
877
  rdfs:range xsd:string ;
@@ -856,7 +888,15 @@ test:onto {
856
888
  dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
857
889
  dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime .
858
890
 
859
- test:Person rdf:type owl:Class ;
891
+ test:caption rdf:type owl:DatatypeProperty ;
892
+ rdfs:domain test:MediaLibraryEntry ;
893
+ rdfs:range xsd:string ;
894
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
895
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
896
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
897
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime .
898
+
899
+ test:Person rdf:type owl:Class ;
860
900
  dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
861
901
  dcterms:created "2023-11-04T12:00:00+00:00"^^xsd:dateTime ;
862
902
  dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
@@ -1658,5 +1698,3 @@ test:onto {
1658
1698
  ] .
1659
1699
 
1660
1700
  }
1661
-
1662
-
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "oldaplib"
3
- version = "0.3.26"
3
+ version = "0.3.27"
4
4
  description = "Open Media Access Server Library (Linked Open Data middleware/RESTApi)"
5
5
  authors = ["Lukas Rosenthaler <lukas.rosenthaler@unibas.ch>"]
6
6
  license = "GNU Affero General Public License version 3"
@@ -1 +0,0 @@
1
- __version__ = "0.3.26"
File without changes