pysdmx 1.10.0__py3-none-any.whl → 1.10.0rc1__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.
- pysdmx/__init__.py +1 -1
- pysdmx/api/fmr/__init__.py +2 -3
- pysdmx/io/json/sdmxjson2/messages/__init__.py +0 -4
- pysdmx/io/json/sdmxjson2/messages/code.py +6 -16
- pysdmx/io/json/sdmxjson2/messages/constraint.py +16 -235
- pysdmx/io/json/sdmxjson2/messages/dsd.py +7 -35
- pysdmx/io/json/sdmxjson2/messages/map.py +4 -5
- pysdmx/io/json/sdmxjson2/messages/metadataflow.py +0 -1
- pysdmx/io/json/sdmxjson2/messages/msd.py +10 -18
- pysdmx/io/json/sdmxjson2/messages/schema.py +2 -2
- pysdmx/io/json/sdmxjson2/messages/structure.py +44 -81
- pysdmx/io/json/sdmxjson2/messages/vtl.py +9 -13
- pysdmx/io/json/sdmxjson2/reader/doc_validation.py +0 -4
- pysdmx/model/__base.py +1 -46
- pysdmx/model/__init__.py +0 -18
- pysdmx/model/category.py +0 -17
- pysdmx/model/message.py +71 -80
- {pysdmx-1.10.0.dist-info → pysdmx-1.10.0rc1.dist-info}/METADATA +1 -1
- {pysdmx-1.10.0.dist-info → pysdmx-1.10.0rc1.dist-info}/RECORD +21 -22
- pysdmx/model/constraint.py +0 -69
- {pysdmx-1.10.0.dist-info → pysdmx-1.10.0rc1.dist-info}/WHEEL +0 -0
- {pysdmx-1.10.0.dist-info → pysdmx-1.10.0rc1.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
pysdmx/__extras_check.py,sha256=Tmluui2OuJVyJB6a1Jl0PlrRjpsswhtCjAqtRLOSero,2059
|
|
2
|
-
pysdmx/__init__.py,sha256=
|
|
2
|
+
pysdmx/__init__.py,sha256=00h-DwPfv9b8RnK5FXzBTiZQOciFTXqXk7axxd3VD28,71
|
|
3
3
|
pysdmx/api/__init__.py,sha256=8lRaF6kEO51ehl0fmW_pHLvkN_34TtEhqhr3oKo6E6g,26
|
|
4
4
|
pysdmx/api/dc/__init__.py,sha256=oPU32X8CRZy4T1to9mO5KMqMwxQsVI424dPqai-I8zI,121
|
|
5
5
|
pysdmx/api/dc/_api.py,sha256=poy1FYFXnF6maBGy5lpOodf32-7QQjH8PCBNDkuOXxQ,7747
|
|
@@ -10,7 +10,7 @@ pysdmx/api/dc/query/_parsing_util.py,sha256=pUc5z6sijGmJZsLilAxiPsCSRIO7l2iznzL3
|
|
|
10
10
|
pysdmx/api/dc/query/_py_parser.py,sha256=_kVUk6Xu5jZdclng1F6eDSZS2-ok_yncI1y1q5lYpBU,1502
|
|
11
11
|
pysdmx/api/dc/query/_sql_parser.py,sha256=vQjhSyt6qA4jAHchkq4XXVhNPtKjKSVLzhoPkUyhJKk,1561
|
|
12
12
|
pysdmx/api/dc/query/util.py,sha256=9HALmvlgVCckaMTVG7sEFbAw_mBwfbL4K-Pac2KPSYw,915
|
|
13
|
-
pysdmx/api/fmr/__init__.py,sha256
|
|
13
|
+
pysdmx/api/fmr/__init__.py,sha256=kLvtCWh5HXNg4uvVFVHtrJ-HJ6c2iM4fVNDDtydSSBI,50432
|
|
14
14
|
pysdmx/api/fmr/maintenance.py,sha256=AnR1beyL6nsoDM5LmDLXnRMW5JvhGHXTADf_INSNgUg,5920
|
|
15
15
|
pysdmx/api/gds/__init__.py,sha256=BBl75wEdcz9zPMfk6kAGHitRW39S774VL9xifMZ_uHs,11560
|
|
16
16
|
pysdmx/api/qb/__init__.py,sha256=vxdMJFFg4J_KWADrnzj_8KcU0UlwpJPdx0yiW3QJo9Y,1498
|
|
@@ -64,27 +64,27 @@ pysdmx/io/json/gds/messages/sdmx_api.py,sha256=RIjNQr6ZZXCFGRBpGPKoLaxD9UilVDNyH
|
|
|
64
64
|
pysdmx/io/json/gds/messages/services.py,sha256=OUFmYK4XkNMoaw70n4QabyxzdRDh-0XeYxBJtVezxMs,1259
|
|
65
65
|
pysdmx/io/json/gds/messages/urn_resolver.py,sha256=w_wRRAwjaBw_yooSda1MXcD_aN63FdpFE7WFvcjHSeQ,1209
|
|
66
66
|
pysdmx/io/json/gds/reader/__init__.py,sha256=cXQvjSzRe4lTsGmru6qMYE_HU2DEccJSYKsQ5ayIpxw,373
|
|
67
|
-
pysdmx/io/json/sdmxjson2/messages/__init__.py,sha256=
|
|
67
|
+
pysdmx/io/json/sdmxjson2/messages/__init__.py,sha256=qdvbmT8majCYQw_CPjP-Mqb4BgllFv-qf1T_VtzlCPg,2435
|
|
68
68
|
pysdmx/io/json/sdmxjson2/messages/agency.py,sha256=d9t_2HrcZcqu_Y-EchShWDRF5yJQn86urfcFl5qvWAc,3720
|
|
69
69
|
pysdmx/io/json/sdmxjson2/messages/category.py,sha256=L51-XTUxzELNCfdhLPKaOPoGss2tndd6Xs1nMsWJPiA,8804
|
|
70
|
-
pysdmx/io/json/sdmxjson2/messages/code.py,sha256=
|
|
70
|
+
pysdmx/io/json/sdmxjson2/messages/code.py,sha256=t2MMvx2nQzlu4l8MMAPDEq15w5UIjHGgaJI2HoFPdus,17908
|
|
71
71
|
pysdmx/io/json/sdmxjson2/messages/concept.py,sha256=x7BoG6AaziZGNjxeypwy_lsFTmdHs-0MPUpqPsTBQIA,5496
|
|
72
|
-
pysdmx/io/json/sdmxjson2/messages/constraint.py,sha256=
|
|
72
|
+
pysdmx/io/json/sdmxjson2/messages/constraint.py,sha256=6pONMHr7IT8O026Xnv6AjIMVmoS29ivNiOMPr1OWQZQ,1736
|
|
73
73
|
pysdmx/io/json/sdmxjson2/messages/core.py,sha256=qF0fscWY1yRxmN-4s2UweEWqbDMSioaUPaxlYEo8ouY,10137
|
|
74
74
|
pysdmx/io/json/sdmxjson2/messages/dataflow.py,sha256=wjeq9yexTa012AtGdZsZflp3WQ6fP-3kas-gxADTFeQ,6256
|
|
75
|
-
pysdmx/io/json/sdmxjson2/messages/dsd.py,sha256=
|
|
76
|
-
pysdmx/io/json/sdmxjson2/messages/map.py,sha256
|
|
77
|
-
pysdmx/io/json/sdmxjson2/messages/metadataflow.py,sha256=
|
|
75
|
+
pysdmx/io/json/sdmxjson2/messages/dsd.py,sha256=8-Q5ADEk0cSKEtXECBqOkzW4yN9dhRmmiVFf8zdAOUE,19025
|
|
76
|
+
pysdmx/io/json/sdmxjson2/messages/map.py,sha256=-hhUyPxIWKoIxij0qbuoFDsZMqmtMfclCMUme4c9SS0,16767
|
|
77
|
+
pysdmx/io/json/sdmxjson2/messages/metadataflow.py,sha256=37VsdrDpXWKkRczPjxozygrmZAiWxyZbBwDUeg03DDk,2936
|
|
78
78
|
pysdmx/io/json/sdmxjson2/messages/mpa.py,sha256=ryoQCvOvd2j6gPdGOEML4bc-NXUSetuKNOfmd9Ogn2s,3050
|
|
79
|
-
pysdmx/io/json/sdmxjson2/messages/msd.py,sha256=
|
|
79
|
+
pysdmx/io/json/sdmxjson2/messages/msd.py,sha256=R2onHmPfG0q1NAOLqc36cbKihIaB1ntGysN40df28VY,8225
|
|
80
80
|
pysdmx/io/json/sdmxjson2/messages/pa.py,sha256=VoaPBgcWGwWU7h5IaVa5wNWncOoktWihSXjcP4vEb00,2780
|
|
81
81
|
pysdmx/io/json/sdmxjson2/messages/provider.py,sha256=htAwdDzVR3qeyExhmjpvg8W0X4lWqRh2Bvd5H8wsOTY,8197
|
|
82
82
|
pysdmx/io/json/sdmxjson2/messages/report.py,sha256=thcZZUuoiJ6OJ9P33EOTN3PIHFKxdQUMapI7HmSoB4A,6571
|
|
83
|
-
pysdmx/io/json/sdmxjson2/messages/schema.py,sha256=
|
|
84
|
-
pysdmx/io/json/sdmxjson2/messages/structure.py,sha256=
|
|
85
|
-
pysdmx/io/json/sdmxjson2/messages/vtl.py,sha256=
|
|
83
|
+
pysdmx/io/json/sdmxjson2/messages/schema.py,sha256=Ejs8roep6bSL8Eyu7j18E6IiHXWJ3qSybnnRYNyio-E,2868
|
|
84
|
+
pysdmx/io/json/sdmxjson2/messages/structure.py,sha256=puqKLHX37MFhlB0ZxUhaRCUhEXfYPsVVMvHBjxhP4WA,11536
|
|
85
|
+
pysdmx/io/json/sdmxjson2/messages/vtl.py,sha256=xCErG_ojn_z1-KrFBInatY2q83lEyWUUB0g-QK-auzk,35168
|
|
86
86
|
pysdmx/io/json/sdmxjson2/reader/__init__.py,sha256=RbNnZSrGQa4OE0HBWJau9tPFSQbDklcKZaBWOzxEw4I,1629
|
|
87
|
-
pysdmx/io/json/sdmxjson2/reader/doc_validation.py,sha256=
|
|
87
|
+
pysdmx/io/json/sdmxjson2/reader/doc_validation.py,sha256=PsY_VEJOuEtXj7pRgabiEbWBSWjTlK2oN-ayU0XIXC4,3680
|
|
88
88
|
pysdmx/io/json/sdmxjson2/reader/metadata.py,sha256=FT9CEWjrVfUK4vTEqs-f2ZO6jWeRRkEHCjsHMNgKQp0,1230
|
|
89
89
|
pysdmx/io/json/sdmxjson2/reader/structure.py,sha256=PKHvH_lY2XJtKkg5rGbGSHyYu_raGLrBuaEy8BKr6U0,1209
|
|
90
90
|
pysdmx/io/json/sdmxjson2/writer/__init__.py,sha256=DZGkas1ghei4p6SZsIQI1LPToS-d8F1Nx75MC8reT7g,270
|
|
@@ -135,17 +135,16 @@ pysdmx/io/xml/sdmx31/writer/__init__.py,sha256=wSWTfbD6bBh-gsdn1Z2kyIa5YXq3WEfn-
|
|
|
135
135
|
pysdmx/io/xml/sdmx31/writer/structure.py,sha256=hK-BYOsyyuqLTqxe6qC3PxeDJDp3_qyBTqGUfpVjTl8,2105
|
|
136
136
|
pysdmx/io/xml/sdmx31/writer/structure_specific.py,sha256=OtP_uxn-y9tVB9eNRP6ov3zBL1wtr4SRef9llB4A3yk,3236
|
|
137
137
|
pysdmx/io/xml/utils.py,sha256=ljrocQwPTYycg3I68sqYI5pF8qukNccSCMM9Xf_Tag0,583
|
|
138
|
-
pysdmx/model/__base.py,sha256=
|
|
139
|
-
pysdmx/model/__init__.py,sha256=
|
|
140
|
-
pysdmx/model/category.py,sha256=
|
|
138
|
+
pysdmx/model/__base.py,sha256=_ugNVF4fUHXJKP04PpzJJoB5WzcfRSadimz1Shsmtio,13820
|
|
139
|
+
pysdmx/model/__init__.py,sha256=uuR3JYtgLqa6BpY3EnylR_TEdIgF46dqsV63uHcHmQ0,5161
|
|
140
|
+
pysdmx/model/category.py,sha256=4k4eWHSa1xuMtdtlfiiq0b1sxODFp9PQ-wC-QWObInA,6232
|
|
141
141
|
pysdmx/model/code.py,sha256=Wu6rEXeZf_XA0aBrDXgN-3yvySAHH7SAjrWliFlmC24,12799
|
|
142
142
|
pysdmx/model/concept.py,sha256=mQfqJdtWc10WdTKX_Mw7Znw65cN3QO-kCar9MWYeWO4,9645
|
|
143
|
-
pysdmx/model/constraint.py,sha256=MwI_GLKzwkuo0BzAsgcnDeB-b7bq8qqwHNte5JjCEFA,1960
|
|
144
143
|
pysdmx/model/dataflow.py,sha256=9EzGn-EDm1OQa52N5ep8VApZoj7lHWfIs-W5tnBP9FY,23954
|
|
145
144
|
pysdmx/model/dataset.py,sha256=Lbr7tYonGHD3NZUD-M9hK2puaEAluOVPG2DbkOohzMM,4861
|
|
146
145
|
pysdmx/model/gds.py,sha256=QrnmI8Hn--C95gGXCeUeWwhn-Ur7DuT08Cg7oPJIEVI,4976
|
|
147
146
|
pysdmx/model/map.py,sha256=9a3hl6efq_5kAYuJWkepoQOkao8Eqk17N69JGyRfxsk,17506
|
|
148
|
-
pysdmx/model/message.py,sha256=
|
|
147
|
+
pysdmx/model/message.py,sha256=l8NmTJOkSjN2X_OulyD8lqKhut3MI-hPkd9JlSmGMC4,16232
|
|
149
148
|
pysdmx/model/metadata.py,sha256=qxUcb6AMmTJhRHyVHKbpfJ9TV-UYTdPXTxGVNip0UyA,16992
|
|
150
149
|
pysdmx/model/organisation.py,sha256=k6ZQ_O4l7174Y8tr-nnMnsUL0q0O8Rw3q4mIWmJUh2A,4706
|
|
151
150
|
pysdmx/model/submission.py,sha256=iMQSvt-BYuDrqPEBcjw_wWNp74Vsx2OnEj3tnkth0Z8,833
|
|
@@ -163,7 +162,7 @@ pysdmx/util/__init__.py,sha256=m_XWRAmVJ7F6ai4Ckrj_YuPbhg3cJZAXeZrEThrL88k,3997
|
|
|
163
162
|
pysdmx/util/_date_pattern_map.py,sha256=IS1qONwVHbTBNIFCT0Rqbijj2a9mYvs7onXSK6GeQAQ,1620
|
|
164
163
|
pysdmx/util/_model_utils.py,sha256=nQ1yWBt-tZYDios9xvRvJ7tHq6A8_RoGdY1wi7WGz2w,3793
|
|
165
164
|
pysdmx/util/_net_utils.py,sha256=nOTz_x3FgFrwKh42_J70IqYXz9duQkMFJWtejZXcLHs,1326
|
|
166
|
-
pysdmx-1.10.
|
|
167
|
-
pysdmx-1.10.
|
|
168
|
-
pysdmx-1.10.
|
|
169
|
-
pysdmx-1.10.
|
|
165
|
+
pysdmx-1.10.0rc1.dist-info/METADATA,sha256=kPs3kQG4EX60hnWKin3iojI-3tHGysb93P5Xc7uy56k,4852
|
|
166
|
+
pysdmx-1.10.0rc1.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
|
|
167
|
+
pysdmx-1.10.0rc1.dist-info/licenses/LICENSE,sha256=3XTNDPtv2RxDUNkQzn9MIWit2u7_Ob5daMLEq-4pBJs,649
|
|
168
|
+
pysdmx-1.10.0rc1.dist-info/RECORD,,
|
pysdmx/model/constraint.py
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"""Model for SDMX Data Constraints."""
|
|
2
|
-
|
|
3
|
-
from datetime import datetime
|
|
4
|
-
from typing import Optional, Sequence
|
|
5
|
-
|
|
6
|
-
from msgspec import Struct
|
|
7
|
-
|
|
8
|
-
from pysdmx.model.__base import MaintainableArtefact
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
class CubeValue(Struct, frozen=True, omit_defaults=True):
|
|
12
|
-
"""A value of the cube, with optional business validity."""
|
|
13
|
-
|
|
14
|
-
value: str
|
|
15
|
-
valid_from: Optional[datetime] = None
|
|
16
|
-
valid_to: Optional[datetime] = None
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
class CubeKeyValue(Struct, frozen=True, omit_defaults=True):
|
|
20
|
-
"""The list of values for a cube's component."""
|
|
21
|
-
|
|
22
|
-
id: str
|
|
23
|
-
values: Sequence[CubeValue]
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
class CubeRegion(Struct, frozen=True, omit_defaults=True):
|
|
27
|
-
"""A cube region, with its associated values (by default, included)."""
|
|
28
|
-
|
|
29
|
-
key_values: Sequence[CubeKeyValue]
|
|
30
|
-
is_included: bool = True
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
class ConstraintAttachment(Struct, frozen=True, omit_defaults=True):
|
|
34
|
-
"""The artefacts to which the data constraint is attached."""
|
|
35
|
-
|
|
36
|
-
data_provider: Optional[str]
|
|
37
|
-
data_structures: Optional[Sequence[str]] = None
|
|
38
|
-
dataflows: Optional[Sequence[str]] = None
|
|
39
|
-
provision_agreements: Optional[Sequence[str]] = None
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
class DataKeyValue(Struct, frozen=True, omit_defaults=True):
|
|
43
|
-
"""A key value, i.e. a component of the key (e.g. FREQ=M)."""
|
|
44
|
-
|
|
45
|
-
id: str
|
|
46
|
-
value: str
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
class DataKey(Struct, frozen=True, omit_defaults=True):
|
|
50
|
-
"""A data key, i.e. one value per dimension in the data key."""
|
|
51
|
-
|
|
52
|
-
keys_values: Sequence[DataKeyValue]
|
|
53
|
-
valid_from: Optional[datetime] = None
|
|
54
|
-
valid_to: Optional[datetime] = None
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
class KeySet(Struct, frozen=True, omit_defaults=True):
|
|
58
|
-
"""A set of keys, inluded by default."""
|
|
59
|
-
|
|
60
|
-
keys: Sequence[DataKey]
|
|
61
|
-
is_included: bool
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
class DataConstraint(MaintainableArtefact, frozen=True, omit_defaults=True):
|
|
65
|
-
"""A data constraint, defining the allowed or available values."""
|
|
66
|
-
|
|
67
|
-
constraint_attachment: Optional[ConstraintAttachment] = None
|
|
68
|
-
cube_regions: Sequence[CubeRegion] = ()
|
|
69
|
-
key_sets: Sequence[KeySet] = ()
|
|
File without changes
|
|
File without changes
|