oldaplib 0.3.5__py3-none-any.whl → 0.3.6__py3-none-any.whl

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.
@@ -15,7 +15,7 @@ class ExternalOntologyAttr(AttributeClass):
15
15
  (QName, mandatory, immutable, datatype)
16
16
  """
17
17
  # order: (QName, mandatory, immutable, datatype)
18
- PREFIX = ('oldap:prefix', True, False, Xsd_NCName)
18
+ PREFIX = ('oldap:prefix', True, True, Xsd_NCName)
19
19
  NAMESPACE_IRI = ('oldap:namespaceIri', True, True, NamespaceIRI)
20
20
  LABEL = ('rdfs:label', False, False, LangString)
21
21
  COMMENT = ('rdfs:comment', False, False, LangString)
@@ -144,7 +144,9 @@ class ResourceInstance:
144
144
  self.validate_value(self._values[prop_iri], hasprop.prop)
145
145
 
146
146
  def process_superclasses(superclass: dict[Xsd_QName, ResourceClass]):
147
- for sc_iri, sc in superclass.items():
147
+ for sc_iri, sc in superclass.items():
148
+ if not sc:
149
+ continue
148
150
  if sc.superclass:
149
151
  process_superclasses(sc.superclass)
150
152
  if sc.owl_class_iri == Xsd_QName("oldap:Thing", validate=False):
oldaplib/src/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.3.5"
1
+ __version__ = "0.3.6"
@@ -622,10 +622,10 @@ class TestDataModel(unittest.TestCase):
622
622
  def test_datamodel_extonto_add(self):
623
623
  model = DataModel.read(self._connection, self._project, ignore_cache=True)
624
624
  eo = ExternalOntology(con=self._connection,
625
- projectShortName=self._project.projectShortName,
626
- prefix='testonto',
627
- namespaceIri='http://www.example.org/ns/testonto#',
628
- label=LangString("Test ontology@en", "Test ontology@de"))
625
+ projectShortName=self._project.projectShortName,
626
+ prefix='testonto',
627
+ namespaceIri='http://www.example.org/ns/testonto#',
628
+ label=LangString("Test ontology@en", "Test ontology@de"))
629
629
  model[Xsd_QName('test:testonto')] = eo
630
630
  model.update()
631
631
  model = DataModel.read(self._connection, self._project, ignore_cache=True)
@@ -6,6 +6,8 @@ from pathlib import Path
6
6
  from pprint import pprint
7
7
  from time import sleep
8
8
 
9
+ from oldaplib.src.cachesingleton import CacheSingletonRedis
10
+ from oldaplib.src.datamodel import DataModel
9
11
  from oldaplib.src.objectfactory import ResourceInstanceFactory
10
12
  from oldaplib.src.connection import Connection
11
13
  from oldaplib.src.enums.action import Action
@@ -129,6 +131,8 @@ class TestObjectFactory(unittest.TestCase):
129
131
  isActive=True)
130
132
  user.create()
131
133
  cls._tuser = User.read(cls._connection, "factorytestuser")
134
+ cache = CacheSingletonRedis()
135
+ cache.clear()
132
136
 
133
137
 
134
138
  @classmethod
@@ -337,6 +341,14 @@ class TestObjectFactory(unittest.TestCase):
337
341
  grantsPermission=Iri('oldap:GenericView'))
338
342
  b.create()
339
343
 
344
+ def test_constructor_D(self):
345
+ dm = DataModel.read(con=self._connection, project='test')
346
+ factory = ResourceInstanceFactory(con=self._connection, project='test')
347
+ Cat = factory.createObjectInstance('Cat')
348
+
349
+ mycat = Cat(name="Fluffy", subName="Fluffy the Cat")
350
+ mycat.create()
351
+
340
352
  def test_read_A(self):
341
353
  factory = ResourceInstanceFactory(con=self._connection, project='test')
342
354
  Book = factory.createObjectInstance('Book')
@@ -30,6 +30,46 @@ test:shacl {
30
30
 
31
31
  test:shapes schema:version "0.1.0"^^xsd:string .
32
32
 
33
+ test:MammalShape a sh:NodeShape ;
34
+ sh:targetClass test:Mammal ;
35
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
36
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
37
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
38
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
39
+ sh:node oldap:ThingShape ;
40
+ sh:property [
41
+ sh:path rdf:type ;
42
+ ],
43
+ [
44
+ sh:path test:name ;
45
+ sh:datatype xsd:string ;
46
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
47
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
48
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
49
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
50
+ ] .
51
+
52
+ test:CatShape a sh:NodeShape ;
53
+ sh:targetClass test:Cat ;
54
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
55
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
56
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
57
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
58
+ sh:node oldap:ThingShape, test:MammalShape ;
59
+ sh:property [
60
+ sh:path rdf:type ;
61
+ ],
62
+ [
63
+ sh:path test:subName ;
64
+ sh:datatype xsd:string ;
65
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
66
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
67
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
68
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
69
+ ] .
70
+
71
+
72
+
33
73
  test:PersonShape a sh:NodeShape ;
34
74
  sh:targetClass test:Person ;
35
75
  dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
@@ -776,6 +816,46 @@ test:onto {
776
816
  test:ontology owl:type owl:Ontology ;
777
817
  owl:versionInfo "0.1.0"^^xsd:string .
778
818
 
819
+ test:Mammal rdf:type owl:Class ;
820
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
821
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
822
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
823
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
824
+ rdfs:subClassOf oldap:Thing ,
825
+ [
826
+ rdf:type owl:Restriction ;
827
+ owl:onProperty test:name ;
828
+ owl:onDataRange xsd:string ;
829
+ ] .
830
+
831
+ test:Cat rdf:type owl:Class ;
832
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
833
+ dcterms:created "2023-11-04T12:00:00+00:00"^^xsd:dateTime ;
834
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
835
+ dcterms:modified "2023-11-04T12:00:00+00:00"^^xsd:dateTime ;
836
+ rdfs:subClassOf oldap:Thing, test:Mammal,
837
+ [
838
+ rdf:type owl:Restriction ;
839
+ owl:onProperty test:subName ;
840
+ owl:onDataRange xsd:string ;
841
+ ] .
842
+
843
+ test:name rdf:type owl:DatatypeProperty ;
844
+ rdfs:domain test:Mammal ;
845
+ rdfs:range xsd:string ;
846
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
847
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
848
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
849
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime .
850
+
851
+ test:subName rdf:type owl:DatatypeProperty ;
852
+ rdfs:domain test:Cat ;
853
+ rdfs:range xsd:string ;
854
+ dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
855
+ dcterms:created "2024-05-16T18:38:25.551434"^^xsd:dateTime ;
856
+ dcterms:contributor <https://orcid.org/0000-0003-1681-4036> ;
857
+ dcterms:modified "2024-05-16T18:38:25.551434"^^xsd:dateTime .
858
+
779
859
  test:Person rdf:type owl:Class ;
780
860
  dcterms:creator <https://orcid.org/0000-0003-1681-4036> ;
781
861
  dcterms:created "2023-11-04T12:00:00+00:00"^^xsd:dateTime ;
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: oldaplib
3
- Version: 0.3.5
3
+ Version: 0.3.6
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
@@ -22,7 +22,7 @@ oldaplib/src/enums/action.py,sha256=aL7XXmoZ63_L2TTR37vqHpPPf5H_kYiPunNyiSDN28U,
22
22
  oldaplib/src/enums/adminpermissions.py,sha256=v8Rc83NPSG_s7830-I7CbmKIhOioN2YkSH1xhWMKXdU,1998
23
23
  oldaplib/src/enums/attributeclass.py,sha256=Lc7OnMMl9vjXj0SuL0l30iEjwC3oWDv_C8PFeTavDGc,3006
24
24
  oldaplib/src/enums/datapermissions.py,sha256=0KiDjrPeSpGDAui8Z74sFBdDm64stzcMJx_dVEa2-bo,3437
25
- oldaplib/src/enums/externalontologyattr.py,sha256=U5vlEQwOkf80mHbztBXicpsWSOCNcHzhoRFJlPnwj-E,808
25
+ oldaplib/src/enums/externalontologyattr.py,sha256=H7SrWrhe1Dkz_t1OFCWZVh3_14lJDltYGh3dOFr1Z6w,807
26
26
  oldaplib/src/enums/haspropertyattr.py,sha256=ZncedtYDNAP0kaPE_nsbzb7EdAt32wMXTPxWBBwwvy4,748
27
27
  oldaplib/src/enums/language.py,sha256=OfQsFpIBj8lGBbZEqVCR_1F-bimPM48vqBl4EKBgggY,4623
28
28
  oldaplib/src/enums/oldaplistattr.py,sha256=xuOU3oP35-PFFmlI-jlN28yqdk5lp_OzScKCC1O4IDI,620
@@ -59,7 +59,7 @@ oldaplib/src/helpers/tools.py,sha256=sNbiOLucTGNFzZmiWwPLFOb80VTXQH0Zd9uCGubhzAk
59
59
  oldaplib/src/iconnection.py,sha256=XlOc2Kh4tK_UOHydLQwlWjUFLUze-Aq_vEZpf9KS1-s,3677
60
60
  oldaplib/src/in_project.py,sha256=2KuhHPj8DNveFRBeImrRfxlCOYhBK-mcxXYUp6s--j8,10672
61
61
  oldaplib/src/model.py,sha256=kUdrwa0BBco-HWWQbG3_Tpkwar6GLbdNfkcWbvze30M,19218
62
- oldaplib/src/objectfactory.py,sha256=yXfQ7ijdqRw_zhwczbWfBumkre5qqZEkPWpeblSCFaE,45053
62
+ oldaplib/src/objectfactory.py,sha256=2rHucsWjpaLcgEWWU66r8UbT4BuV7lljXDs3xO0k2bw,45110
63
63
  oldaplib/src/oldaplist.py,sha256=sGAvEEJukRCjM70G0NFaR-L9YPleQTOtdWGExj3oYL8,42933
64
64
  oldaplib/src/oldaplist_helpers.py,sha256=1Gur0nS1PCKb9iUtCKPUFDOYjw6vvAwYpe-G3DdxlEc,14213
65
65
  oldaplib/src/oldaplistnode.py,sha256=NnC2juEGTtEkDO6OlB9PjSw_zTF-wSsRUgEk-6VV9DA,87344
@@ -70,7 +70,7 @@ oldaplib/src/propertyclass.py,sha256=pnaDsmyGKQnJaaOHXA0XyLcp4zn1b1vC9sLbjXls4lM
70
70
  oldaplib/src/resourceclass.py,sha256=EIxyd7Z_w59wDxWLXCaLvhhvh5SjLEUWb8gqmZz8LLM,102046
71
71
  oldaplib/src/user.py,sha256=Z4GXPRkaHXx3glUpPXQdFqYMxQPOuqayDwkTAE5RGjU,48820
72
72
  oldaplib/src/userdataclass.py,sha256=FbZkcRt0pKbOeqsZ7HbpwoKE-XPWH2AqpHG1GcsrBPo,12364
73
- oldaplib/src/version.py,sha256=7Mpk_ZUorFUStSKEAk4F5dnB7uCLNFviloAVMVv5V-8,21
73
+ oldaplib/src/version.py,sha256=eauHvAzEXc0aJ5xQZmFSxwn1EEN1n8i04B7G0Sk7rzI,21
74
74
  oldaplib/src/xsd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
75
  oldaplib/src/xsd/floatingpoint.py,sha256=rDReKqh0mXyc4F5wslgTUxbeGf3-PGERyughj5_62YI,8852
76
76
  oldaplib/src/xsd/iri.py,sha256=w1Dr0z-REi7yPe3GPGnyzGrLVMvLY03kEeK-AmZ9sxw,8383
@@ -119,14 +119,14 @@ oldaplib/test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
119
  oldaplib/test/test_cache.py,sha256=6TGukPUruuj5BsZaPGZdIx9L7v39qB9jIKZkg_GkbW4,702
120
120
  oldaplib/test/test_connection.py,sha256=y_t0v9jbo1BFsDlAjei2ckG0iVnLNc4ShlIRxe8GMvg,13386
121
121
  oldaplib/test/test_context.py,sha256=atESRnIStobqkydjpVnmpHrcmf6QD9rgEwAZCsHlnXI,4757
122
- oldaplib/test/test_datamodel.py,sha256=rft84E-mnkUQGNMF2N8aIB4tdkdNezEHPodUZf5xqrM,59020
122
+ oldaplib/test/test_datamodel.py,sha256=4s9ijonHaMLbL32Rz6JBflyxxG0TizPNbOpFLhp5FGg,59024
123
123
  oldaplib/test/test_dtypes.py,sha256=ifXWUc6ExAKGukyM1ziku7Xd9eehg4J7HZy9B63-aPo,8601
124
124
  oldaplib/test/test_externalontologies.py,sha256=YA7zK5_feN1-YlLe72W1MoMGZ56Dv4_-Tx2BdJ7N50s,7787
125
125
  oldaplib/test/test_hasproperty.py,sha256=r991g8kBTfv1CGs9Hf0fli-AUp7Ob7rOHWYD74h4fjM,11572
126
126
  oldaplib/test/test_in_project.py,sha256=DYT-guwRQ9crnfEt7cQZxoEMxThin7QeymNce3jaZx4,7779
127
127
  oldaplib/test/test_langstring.py,sha256=37BeKiQzj63G-SyS_paK_SEG7ulRbGrE89Mz40UB_bE,15146
128
128
  oldaplib/test/test_language_in.py,sha256=ELqHO-YIsZSCPF3E3rWde4J7rERL7En7sV_pzQ00zgs,8826
129
- oldaplib/test/test_objectfactory.py,sha256=rZi1vMWqxrYiYn53jx84XiQQKYdoK4BUPvYEKo3xSfk,30776
129
+ oldaplib/test/test_objectfactory.py,sha256=S_mAjTw5tjQTdatweBqGN-Fs3c2zgOr49K8mW5L9ELI,31257
130
130
  oldaplib/test/test_observable_dict.py,sha256=GxD0sM0nsVfVRBu92SFGkJ6--YXq4ibBWI4IpjZZzDU,1396
131
131
  oldaplib/test/test_observable_set.py,sha256=JWZSoAsr8XIEBXPVgSVJjQQEEc8uSAme5IrFYLYVVXw,6313
132
132
  oldaplib/test/test_oldaplist.py,sha256=9wo3tEOHt5bIuXyvSSyTzjhtdKrQHiiAA6EfVBuq4wI,20114
@@ -149,7 +149,7 @@ oldaplib/testdata/institution_or_building_type.yaml,sha256=SA2rsQwoAdyn6eSIJU1il
149
149
  oldaplib/testdata/language.yaml,sha256=YaQA77d7QyOydqNylR5RSb-0A6h9pLM4mgadJSrYC3A,451
150
150
  oldaplib/testdata/location_type.yaml,sha256=amlhYNDc9qLv_if6urtAtBTnEXrVrb6_aulE180GYkc,1323
151
151
  oldaplib/testdata/means_of_transportation.yaml,sha256=WOqtSHlw8gCK54d5hmibCWyL_H1DRtBBpUdFNwIUBJo,788
152
- oldaplib/testdata/objectfactory_test.trig,sha256=R0E_dk0NFUlokE18aeI6aTIyeM6hcqvZ0L-yck1Zc9s,75243
152
+ oldaplib/testdata/objectfactory_test.trig,sha256=KpZfLZaK8oVAzdx4xGGFCCp6tzdR8XhOw11LfBC5wII,78733
153
153
  oldaplib/testdata/playground_list.yaml,sha256=EypG4WQoq9emI10Hj-DrKjplgxr1MrQBPc0ppV_rHQQ,1620
154
154
  oldaplib/testdata/role.yaml,sha256=CLI9f2HD_ulYw67DqWntaMLWH0CGWz1cfNkvxcnK6XQ,691
155
155
  oldaplib/testdata/source_type-1.yaml,sha256=Khow4rD8oZgBAbUex4T-nKBTrx0bAseMhTShS7-MgGw,921
@@ -157,6 +157,6 @@ oldaplib/testdata/source_type.yaml,sha256=dSihKikw3O-IlGf6anj5KWMoBYLaweLVF1Zojm
157
157
  oldaplib/testdata/test_move_left_of_toL.yaml,sha256=2m1OSQrQFlsCQxeJrjzBAO74LMprNDo_HuyrYGsOeXI,787
158
158
  oldaplib/testdata/testlist.yaml,sha256=AT11nXEG81Sfyb-tr1gQV0H_dZBrOCcFuHf7YtL8P2g,1994
159
159
  oldaplib/testit.http,sha256=qW7mnr6aNLXFG6lQdLgyhXILOPN6qc5iFVZclLyVvkY,303
160
- oldaplib-0.3.5.dist-info/METADATA,sha256=YpXOxS-1xvQQpvMl_REtdkSbsizXGNcE3zhylyTrj2s,2854
161
- oldaplib-0.3.5.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
162
- oldaplib-0.3.5.dist-info/RECORD,,
160
+ oldaplib-0.3.6.dist-info/METADATA,sha256=_lKmL7ZltEyH-JSYkqiOePjEOKBKGuWoBeR4vgEMXi0,2854
161
+ oldaplib-0.3.6.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
162
+ oldaplib-0.3.6.dist-info/RECORD,,