sodas-sdk 1.5.1 → 1.6.0

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 (30) hide show
  1. package/dist/SODAS_SDK_CLASS/DCAT/dataService.d.ts +2 -2
  2. package/dist/SODAS_SDK_CLASS/DCAT/dataset.d.ts +2 -2
  3. package/dist/SODAS_SDK_CLASS/DCAT/datasetSeries.d.ts +2 -2
  4. package/dist/SODAS_SDK_CLASS/DCAT/dcatResource.d.ts +9 -5
  5. package/dist/SODAS_SDK_CLASS/DCAT/distribution.d.ts +4 -4
  6. package/dist/SODAS_SDK_CLASS/profileModel.d.ts +38 -0
  7. package/dist/SODAS_SDK_CLASS/template/validation.d.ts +30 -55
  8. package/dist/SODAS_SDK_CLASS/template/validationType.d.ts +196 -0
  9. package/dist/__tests__/setting/testEnvironmentConfig.d.ts +1 -1
  10. package/dist/__tests__/setting/testSetting.d.ts +1 -1
  11. package/dist/__tests__/utility/BOC.d.ts +4 -4
  12. package/dist/__tests__/utility/testDTO.d.ts +3 -0
  13. package/dist/__tests__/utility/validation.d.ts +3 -5
  14. package/dist/core/auth.d.ts +1 -1
  15. package/dist/core/error.d.ts +0 -7
  16. package/dist/core/functionalityError.d.ts +1 -8
  17. package/dist/core/type.d.ts +3 -37
  18. package/dist/index.browser.js +947 -509
  19. package/dist/index.browser.js.map +1 -1
  20. package/dist/index.d.ts +20 -5
  21. package/dist/index.legacy.browser.js +931 -506
  22. package/dist/index.legacy.browser.js.map +1 -1
  23. package/dist/index.legacy.node.cjs +930 -505
  24. package/dist/index.legacy.node.cjs.map +1 -1
  25. package/dist/index.node.js +947 -509
  26. package/dist/index.node.js.map +1 -1
  27. package/package.json +1 -1
  28. package/dist/SODAS_SDK_CLASS/dcatClass.d.ts +0 -38
  29. /package/dist/__tests__/SODAS_SDK_CLASS/template/validation/{CRUD.medium.test.d.ts → CRUDL.medium.test.d.ts} +0 -0
  30. /package/dist/__tests__/SODAS_SDK_CLASS/template/validation/{LIST.big.test.d.ts → manageRules.medium.test.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { IDType, PaginatedResponse, SortOrder } from "../../core/type";
2
- import { DCAT_MODEL_DTO } from "../dcatClass";
2
+ import { PROFILE_MODEL_DTO } from "../profileModel";
3
3
  import DCAT_RESOURCE, { DCAT_RESOURCE_DTO } from "./dcatResource";
4
4
  export interface DataServiceDTO extends DCAT_RESOURCE_DTO {
5
5
  DataServiceID?: string;
@@ -23,7 +23,7 @@ declare class DataService extends DCAT_RESOURCE {
23
23
  static listUserDBRecords(pageNumber?: number, pageSize?: number, sortOrder?: SortOrder): Promise<PaginatedResponse<DataService>>;
24
24
  static searchDBRecords(searchKeyword: string, pageNumber?: number, pageSize?: number, sortOrder?: SortOrder): Promise<PaginatedResponse<DataService>>;
25
25
  toDTO(): DataServiceDTO;
26
- populateFromDTO(dto: DCAT_MODEL_DTO): Promise<void>;
26
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
27
27
  get dataServiceID(): IDType;
28
28
  get endpointURL(): string;
29
29
  set endpointURL(value: string);
@@ -1,5 +1,5 @@
1
1
  import { IDType, PaginatedResponse, SortOrder } from "../../core/type";
2
- import { DCAT_MODEL_DTO } from "../dcatClass";
2
+ import { PROFILE_MODEL_DTO } from "../profileModel";
3
3
  import DCAT_RESOURCE, { DCAT_RESOURCE_DTO } from "./dcatResource";
4
4
  import Distribution from "./distribution";
5
5
  export interface DatasetDTO extends DCAT_RESOURCE_DTO {
@@ -46,7 +46,7 @@ declare class Dataset extends DCAT_RESOURCE {
46
46
  static getRDF(id: string, depth?: number): Promise<string>;
47
47
  static searchDBRecords(searchKeyword: string, pageNumber?: number, pageSize?: number, sortOrder?: SortOrder): Promise<PaginatedResponse<Dataset>>;
48
48
  toDTO(): DatasetDTO;
49
- populateFromDTO(dto: DCAT_MODEL_DTO): Promise<void>;
49
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
50
50
  populateDistributionFromDTO(dto: DatasetDTO): Promise<void>;
51
51
  static syncToCurrentHub(dataset: Dataset): Promise<void>;
52
52
  populateToSync(source: Dataset): void;
@@ -1,5 +1,5 @@
1
1
  import { IDType, PaginatedResponse, SortOrder } from "../../core/type";
2
- import { DCAT_MODEL_DTO } from "../dcatClass";
2
+ import { PROFILE_MODEL_DTO } from "../profileModel";
3
3
  import Dataset from "./dataset";
4
4
  import DCAT_RESOURCE, { DCAT_RESOURCE_DTO } from "./dcatResource";
5
5
  interface DatasetSeriesDTO extends DCAT_RESOURCE_DTO {
@@ -51,7 +51,7 @@ declare class DatasetSeries extends DCAT_RESOURCE {
51
51
  static listUserDBRecords(pageNumber?: number, pageSize?: number, sortOrder?: SortOrder): Promise<PaginatedResponse<DatasetSeries>>;
52
52
  static searchDBRecords(searchKeyword: string, pageNumber?: number, pageSize?: number, sortOrder?: SortOrder): Promise<PaginatedResponse<DatasetSeries>>;
53
53
  toDTO(): DatasetSeriesDTO;
54
- populateFromDTO(dto: DCAT_MODEL_DTO): Promise<void>;
54
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
55
55
  populateSeriesMembersFromDTO(dto: DatasetSeriesDTO): Promise<void>;
56
56
  deleteDBRecord(): Promise<void>;
57
57
  appendSeriesMember(dataset: Dataset): void;
@@ -1,8 +1,8 @@
1
- import { ExtraMetadataType, MultiLanguageField, MultiLanguageKeywords } from "../../core/type";
1
+ import { ExtraMetadataType, MultiLanguageField, MultiLanguageKeywords, QualityMetadataType } from "../../core/type";
2
2
  import ThumbnailFile from "../../SODAS_SDK_FILE/thumbnailFile";
3
- import DCAT_MODEL, { DCAT_MODEL_DTO } from "../dcatClass";
3
+ import PROFILE_MODEL, { PROFILE_MODEL_DTO } from "../profileModel";
4
4
  import VersionInfo, { VersionInfoDTO } from "./versionInfo";
5
- export interface DCAT_RESOURCE_DTO extends DCAT_MODEL_DTO {
5
+ export interface DCAT_RESOURCE_DTO extends PROFILE_MODEL_DTO {
6
6
  ResourceType?: string;
7
7
  AssetID?: string;
8
8
  DatahubID?: string;
@@ -32,9 +32,10 @@ export interface DCAT_RESOURCE_DTO extends DCAT_MODEL_DTO {
32
32
  HasPolicy?: any[];
33
33
  IssuerID?: string;
34
34
  ExtraMetadata?: ExtraMetadataType;
35
+ QualityMetadata?: QualityMetadataType;
35
36
  VersionInfo?: VersionInfoDTO[];
36
37
  }
37
- declare abstract class DCAT_RESOURCE extends DCAT_MODEL {
38
+ declare abstract class DCAT_RESOURCE extends PROFILE_MODEL {
38
39
  protected Thumbnail: ThumbnailFile;
39
40
  private ResourceType;
40
41
  private AssetID;
@@ -65,9 +66,10 @@ declare abstract class DCAT_RESOURCE extends DCAT_MODEL {
65
66
  private HasPolicy;
66
67
  private IssuerID;
67
68
  private ExtraMetadata;
69
+ private QualityMetadata;
68
70
  private VersionInfos;
69
71
  toDTO(): DCAT_RESOURCE_DTO;
70
- populateFromDTO(dto: DCAT_MODEL_DTO): Promise<void>;
72
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
71
73
  populateVersionInfoFromDTO(dto: DCAT_RESOURCE_DTO): Promise<void>;
72
74
  createDBRecord(): Promise<void>;
73
75
  updateDBRecord(): Promise<void>;
@@ -117,6 +119,8 @@ declare abstract class DCAT_RESOURCE extends DCAT_MODEL {
117
119
  set issuerID(value: string);
118
120
  setExtraMetadata(name: string, value: string): void;
119
121
  getExtraMetadata(name: string): string | undefined;
122
+ setQualityMetadata(name: string, value: string): void;
123
+ getQualityMetadata(name: string): string | undefined;
120
124
  getTitle(languageCode?: string): string;
121
125
  setTitle(title: string, languageCode?: string): void;
122
126
  removeTitle(languageCode?: string): void;
@@ -1,6 +1,6 @@
1
1
  import { IDType, MultiLanguageField } from "../../core/type";
2
- import DCAT_MODEL, { DCAT_MODEL_DTO } from "../dcatClass";
3
- export interface DistributionDTO extends DCAT_MODEL_DTO {
2
+ import PROFILE_MODEL, { PROFILE_MODEL_DTO } from "../profileModel";
3
+ export interface DistributionDTO extends PROFILE_MODEL_DTO {
4
4
  AccessServiceID?: string;
5
5
  AccessURL?: string;
6
6
  ByteSize?: number;
@@ -21,7 +21,7 @@ export interface DistributionDTO extends DCAT_MODEL_DTO {
21
21
  Checksum?: string;
22
22
  IsDistributionOf?: string;
23
23
  }
24
- declare class Distribution extends DCAT_MODEL {
24
+ declare class Distribution extends PROFILE_MODEL {
25
25
  static UPLOAD_API_URL: string;
26
26
  static DOWNLOAD_API_URL: string;
27
27
  private UploadingData;
@@ -51,7 +51,7 @@ declare class Distribution extends DCAT_MODEL {
51
51
  */
52
52
  populateToSync(source: Distribution): void;
53
53
  toDTO(): DistributionDTO;
54
- populateFromDTO(dto: DCAT_MODEL_DTO): Promise<void>;
54
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
55
55
  /**
56
56
  * Initializes or updates the API URLs for the Distribution class.
57
57
  *
@@ -0,0 +1,38 @@
1
+ import { IDType, PaginatedResponse, SortOrder } from "../core/type";
2
+ import SODAS_SDK_CLASS from "./sodasSDKClass";
3
+ interface PROFILE_MODEL_STATIC<GENERIC> {
4
+ new (): GENERIC;
5
+ listDBRecords: typeof PROFILE_MODEL.listDBRecords;
6
+ }
7
+ export interface PROFILE_MODEL_DTO {
8
+ ID?: string;
9
+ IRI?: string;
10
+ Issued?: string;
11
+ Modified?: string;
12
+ CreatedAt?: string;
13
+ UpdatedAt?: string;
14
+ }
15
+ declare abstract class PROFILE_MODEL extends SODAS_SDK_CLASS {
16
+ protected CreatedAt: Date;
17
+ protected UpdatedAt: Date;
18
+ toDTO(): PROFILE_MODEL_DTO;
19
+ hasDBRecord(): boolean;
20
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
21
+ static listDBRecords<GENERIC_PROFILE_MODEL extends PROFILE_MODEL>(this: PROFILE_MODEL_STATIC<GENERIC_PROFILE_MODEL>, pageNumber?: number, pageSize?: number, sortOrder?: SortOrder): Promise<PaginatedResponse<GENERIC_PROFILE_MODEL>>;
22
+ static getAllDBRecords<GENERIC_PROFILE_MODEL extends PROFILE_MODEL>(this: PROFILE_MODEL_STATIC<GENERIC_PROFILE_MODEL>): Promise<GENERIC_PROFILE_MODEL[]>;
23
+ createDBRecord(): Promise<void>;
24
+ static getDBRecord<GENERIC_PROFILE_MODEL extends PROFILE_MODEL>(this: PROFILE_MODEL_STATIC<GENERIC_PROFILE_MODEL>, ID: IDType): Promise<GENERIC_PROFILE_MODEL>;
25
+ static getDBRecordByAssetID<GENERIC_PROFILE_MODEL extends PROFILE_MODEL>(this: PROFILE_MODEL_STATIC<GENERIC_PROFILE_MODEL>, assetID: IDType): Promise<GENERIC_PROFILE_MODEL>;
26
+ /**
27
+ * Checks whether a DB record exists for the given AssetID and returns its ID.
28
+ *
29
+ * This method wraps getDBRecordByAssetID and converts a 404 response to `null`,
30
+ * while rethrowing any other kind of error.
31
+ */
32
+ static checkDBRecordOfAssetID(assetID: IDType): Promise<IDType | null>;
33
+ updateDBRecord(): Promise<void>;
34
+ deleteDBRecord(): Promise<void>;
35
+ get createdAt(): Date;
36
+ get updatedAt(): Date;
37
+ }
38
+ export default PROFILE_MODEL;
@@ -1,59 +1,17 @@
1
- import { IDType, PaginatedResponse, SortOrder } from "../../core/type";
2
- import GOVERNANCE_MODEL, { GOVERNANCE_MODEL_DTO } from "../governanceClass";
3
- export declare enum VALIDATION_TYPE {
4
- DATA_TYPE = "data_type",
5
- RANGE = "range",
6
- PATTERN = "pattern",
7
- UNIQUENESS = "uniqueness",
8
- COMPLETENESS = "completeness",
9
- LENGTH = "length",
10
- ALLOWED_VALUES = "allowed_values",
11
- OUTLIER = "outlier",
12
- STATISTICAL = "statistical"
13
- }
14
- export declare enum EXPECTED_TYPE {
15
- NUMERIC = "numeric",
16
- STRING = "string",
17
- DATETIME = "datetime"
18
- }
19
- export interface ValidationRule {
20
- column: string;
21
- name: string;
22
- type: VALIDATION_TYPE;
23
- }
24
- export interface completnessValidationRule extends ValidationRule {
25
- type: VALIDATION_TYPE.COMPLETENESS;
26
- min_completeness: number;
27
- weight: number;
28
- }
29
- export interface dataTypeValidationRule extends ValidationRule {
30
- type: VALIDATION_TYPE.DATA_TYPE;
31
- expected_type: EXPECTED_TYPE;
32
- weight: number;
33
- }
34
- export interface uniquenessValidationRule extends ValidationRule {
35
- type: VALIDATION_TYPE.UNIQUENESS;
36
- weight: number;
37
- }
38
- export interface patternValidationRule extends ValidationRule {
39
- type: VALIDATION_TYPE.PATTERN;
40
- pattern: string;
41
- weight: number;
42
- }
43
- export interface ValidationTemplateDTO extends GOVERNANCE_MODEL_DTO {
44
- name: string;
45
- description?: string;
46
- validationRules: ValidationRule[];
47
- }
48
- declare class ValidationTemplate extends GOVERNANCE_MODEL {
1
+ import PROFILE_MODEL, { PROFILE_MODEL_DTO } from "../profileModel";
2
+ import { AllowedValuesValidationRule, CompletenessValidationRule, CustomValidationRule, DataTypeValidationRule, LengthValidationRule, OutlierValidationRule, PatternValidationRule, RangeValidationRule, StatisticalValidationRule, UniquenessValidationRule, VALIDATION_TYPE, ValidationRule, ValidationRuleDTO } from "./validationType";
3
+ export interface ValidationTemplateDTO extends PROFILE_MODEL_DTO {
4
+ Name?: string;
5
+ Description?: string;
6
+ ValidationRules?: ValidationRuleDTO[];
7
+ }
8
+ declare class ValidationTemplate extends PROFILE_MODEL {
49
9
  private Name;
50
10
  private Description;
51
11
  private ValidationRules;
52
12
  static configureAPIURL(url: string): void;
53
13
  toDTO(): ValidationTemplateDTO;
54
- populateFromFormData(data: any): Promise<void>;
55
- populateFromDTO(dto: GOVERNANCE_MODEL_DTO): Promise<void>;
56
- static listDBRecords(pageNumber?: number, pageSize?: number, sortOrder?: SortOrder, vocabularyID?: IDType): Promise<PaginatedResponse<ValidationTemplate>>;
14
+ populateFromDTO(dto: PROFILE_MODEL_DTO): Promise<void>;
57
15
  get name(): string;
58
16
  set name(value: string);
59
17
  get description(): string;
@@ -62,9 +20,27 @@ declare class ValidationTemplate extends GOVERNANCE_MODEL {
62
20
  set validationRules(value: ValidationRule[]);
63
21
  static parseValidationRules(rawRules: any[]): ValidationRule[];
64
22
  private ensureValidationRulesInitialized;
65
- createRule(type: VALIDATION_TYPE): ValidationRule;
66
- deleteRuleAt(index: number): void;
67
- deleteRuleByTypeAt(type: VALIDATION_TYPE, index: number): void;
23
+ createRangeRule(): RangeValidationRule;
24
+ createPatternRule(): PatternValidationRule;
25
+ createCompletenessRule(): CompletenessValidationRule;
26
+ createDataTypeRule(): DataTypeValidationRule;
27
+ createUniquenessRule(): UniquenessValidationRule;
28
+ createCustomRule(): CustomValidationRule;
29
+ createLengthRule(): LengthValidationRule;
30
+ createAllowedValuesRule(): AllowedValuesValidationRule;
31
+ createOutlierRule(): OutlierValidationRule;
32
+ createStatisticalRule(): StatisticalValidationRule;
33
+ getRangeRules(): RangeValidationRule[];
34
+ getPatternRules(): PatternValidationRule[];
35
+ getCompletenessRules(): CompletenessValidationRule[];
36
+ getDataTypeRules(): DataTypeValidationRule[];
37
+ getUniquenessRules(): UniquenessValidationRule[];
38
+ getCustomRules(): CustomValidationRule[];
39
+ getLengthRules(): LengthValidationRule[];
40
+ getAllowedValuesRules(): AllowedValuesValidationRule[];
41
+ getOutlierRules(): OutlierValidationRule[];
42
+ getStatisticalRules(): StatisticalValidationRule[];
43
+ deleteRule(rule: ValidationRule): void;
68
44
  static groupValidationRulesByColumn(rules: ValidationRule[]): Record<string, ValidationRule[]>;
69
45
  static groupValidationRulesByType(rules: ValidationRule[]): Record<VALIDATION_TYPE, ValidationRule[]>;
70
46
  /**
@@ -79,6 +55,5 @@ declare class ValidationTemplate extends GOVERNANCE_MODEL {
79
55
  * @returns Escaped JSON string with format: "{\"validation_rules\":[...]}"
80
56
  */
81
57
  static stringifyValidationRulesToEscapedString(rules: ValidationRule[]): string;
82
- get rules(): ValidationRule[];
83
58
  }
84
59
  export default ValidationTemplate;
@@ -0,0 +1,196 @@
1
+ export declare enum VALIDATION_TYPE {
2
+ DATA_TYPE = "data_type",
3
+ RANGE = "range",
4
+ PATTERN = "pattern",
5
+ UNIQUENESS = "uniqueness",
6
+ CUSTOM = "custom",
7
+ COMPLETENESS = "completeness",
8
+ LENGTH = "length",
9
+ ALLOWED_VALUES = "allowed_values",
10
+ OUTLIER = "outlier",
11
+ STATISTICAL = "statistical"
12
+ }
13
+ export declare enum EXPECTED_TYPE {
14
+ NUMERIC = "numeric",
15
+ STRING = "string",
16
+ DATETIME = "datetime"
17
+ }
18
+ export interface ValidationRuleDTO {
19
+ column: string;
20
+ name: string;
21
+ type: VALIDATION_TYPE;
22
+ weight: number;
23
+ }
24
+ export declare abstract class ValidationRule {
25
+ protected column: string;
26
+ protected name: string;
27
+ protected type: VALIDATION_TYPE;
28
+ protected weight: number;
29
+ constructor(type: VALIDATION_TYPE);
30
+ toDTO(): ValidationRuleDTO;
31
+ populateFromDTO(dto: any): void;
32
+ setColumn(column: string): this;
33
+ setName(name: string): this;
34
+ setWeight(weight: number): this;
35
+ get getColumn(): string;
36
+ get getName(): string;
37
+ get getType(): VALIDATION_TYPE;
38
+ get getWeight(): number;
39
+ }
40
+ export declare class UniquenessValidationRule extends ValidationRule {
41
+ protected unique: boolean;
42
+ constructor();
43
+ toDTO(): ValidationRuleDTO & {
44
+ unique: boolean;
45
+ };
46
+ populateFromDTO(dto: any): void;
47
+ setUnique(unique: boolean): this;
48
+ get getUnique(): boolean;
49
+ }
50
+ export declare class PatternValidationRule extends ValidationRule {
51
+ protected pattern: string;
52
+ constructor();
53
+ toDTO(): ValidationRuleDTO & {
54
+ pattern: string;
55
+ };
56
+ populateFromDTO(dto: any): void;
57
+ setPattern(pattern: string): this;
58
+ get getPattern(): string;
59
+ }
60
+ export declare class RangeValidationRule extends ValidationRule {
61
+ protected min_value: number;
62
+ protected max_value: number;
63
+ constructor();
64
+ toDTO(): ValidationRuleDTO & {
65
+ min_value: number;
66
+ max_value: number;
67
+ };
68
+ populateFromDTO(dto: any): void;
69
+ setMinValue(minValue: number): this;
70
+ setMaxValue(maxValue: number): this;
71
+ get getMinValue(): number;
72
+ get getMaxValue(): number;
73
+ }
74
+ export declare enum COMPARISION_OPERATOR {
75
+ EQUAL = "==",
76
+ NOT_EQUAL = "!=",
77
+ GREATER_THAN = ">",
78
+ LESS_THAN = "<",
79
+ GREATER_THAN_OR_EQUAL = ">=",
80
+ LESS_THAN_OR_EQUAL = "<="
81
+ }
82
+ export declare enum CUSTOM_CONDITION_TYPE {
83
+ ALL = "all",
84
+ ANY = "any",
85
+ MIN = "min",
86
+ MAX = "max",
87
+ MEAN = "mean",
88
+ RATIO = "ratio"
89
+ }
90
+ export interface CUSTOM_CONDITION {
91
+ type: CUSTOM_CONDITION_TYPE;
92
+ threholder: number;
93
+ comparision: COMPARISION_OPERATOR;
94
+ }
95
+ export declare class CustomValidationRule extends ValidationRule {
96
+ protected condition: CUSTOM_CONDITION;
97
+ constructor();
98
+ toDTO(): ValidationRuleDTO & {
99
+ condition: CUSTOM_CONDITION;
100
+ };
101
+ populateFromDTO(dto: any): void;
102
+ setCondition(condition: CUSTOM_CONDITION): this;
103
+ get getCondition(): CUSTOM_CONDITION;
104
+ }
105
+ export declare class LengthValidationRule extends ValidationRule {
106
+ protected min_length: number;
107
+ protected max_length: number;
108
+ constructor();
109
+ toDTO(): ValidationRuleDTO & {
110
+ min_length: number;
111
+ max_length: number;
112
+ };
113
+ populateFromDTO(dto: any): void;
114
+ setMinLength(minLength: number): this;
115
+ setMaxLength(maxLength: number): this;
116
+ get getMinLength(): number;
117
+ get getMaxLength(): number;
118
+ }
119
+ export declare class AllowedValuesValidationRule extends ValidationRule {
120
+ protected allowed_values: string[];
121
+ constructor();
122
+ toDTO(): ValidationRuleDTO & {
123
+ allowed_values: string[];
124
+ };
125
+ populateFromDTO(dto: any): void;
126
+ setAllowedValues(allowedValues: string[]): this;
127
+ get getAllowedValues(): string[];
128
+ }
129
+ export declare enum OUTLIER_METHOD {
130
+ Z_SCORE = "zscore",
131
+ IQR = "iqr",
132
+ ISOLATION = "isolation"
133
+ }
134
+ export declare class OutlierValidationRule extends ValidationRule {
135
+ protected method: OUTLIER_METHOD;
136
+ protected threshold: number;
137
+ constructor();
138
+ toDTO(): ValidationRuleDTO & {
139
+ method: OUTLIER_METHOD;
140
+ threshold: number;
141
+ };
142
+ populateFromDTO(dto: any): void;
143
+ setMethod(method: OUTLIER_METHOD): this;
144
+ setThreshold(threshold: number): this;
145
+ get getMethod(): OUTLIER_METHOD;
146
+ get getThreshold(): number;
147
+ }
148
+ export declare class StatisticalValidationRule extends ValidationRule {
149
+ protected check: string;
150
+ protected threshold: number;
151
+ protected comparision: COMPARISION_OPERATOR;
152
+ constructor();
153
+ toDTO(): ValidationRuleDTO & {
154
+ check: string;
155
+ threshold: number;
156
+ comparision: COMPARISION_OPERATOR;
157
+ };
158
+ populateFromDTO(dto: any): void;
159
+ setCheck(check: string): this;
160
+ setThreshold(threshold: number): this;
161
+ setComparision(comparision: COMPARISION_OPERATOR): this;
162
+ get getCheck(): string;
163
+ get getThreshold(): number;
164
+ get getComparision(): COMPARISION_OPERATOR;
165
+ }
166
+ export declare class CompletenessValidationRule extends ValidationRule {
167
+ protected min_completeness: number;
168
+ constructor();
169
+ toDTO(): ValidationRuleDTO & {
170
+ min_completeness: number;
171
+ };
172
+ populateFromDTO(dto: any): void;
173
+ setMinCompleteness(minCompleteness: number): this;
174
+ get getMinCompleteness(): number;
175
+ }
176
+ export declare enum DATETIME_FORMAT_TYPE {
177
+ YYYY_MM_DD_HH_MM_SS = "%Y-%m-%d %H:%M:%S",
178
+ YYYY_MM_DD = "%Y-%m-%d",
179
+ YYYY_MM_DD_SLASH = "%Y/%m/%d",
180
+ DD_MM_YYYY = "%d-%m-%Y",
181
+ YYYY_MM_DD_T_HH_MM_SS = "%Y-%m-%dT%H:%M:%S"
182
+ }
183
+ export declare class DataTypeValidationRule extends ValidationRule {
184
+ protected expected_type: EXPECTED_TYPE;
185
+ protected datetime_format: DATETIME_FORMAT_TYPE;
186
+ constructor();
187
+ toDTO(): ValidationRuleDTO & {
188
+ expected_type: EXPECTED_TYPE;
189
+ datetime_format: DATETIME_FORMAT_TYPE;
190
+ };
191
+ populateFromDTO(dto: any): void;
192
+ setExpectedType(expectedType: EXPECTED_TYPE): this;
193
+ setDatetimeFormat(datetimeFormat: DATETIME_FORMAT_TYPE): this;
194
+ get getExpectedType(): EXPECTED_TYPE;
195
+ get getDatetimeFormat(): DATETIME_FORMAT_TYPE;
196
+ }
@@ -1,4 +1,4 @@
1
1
  export declare const TEST_SODAS_PROFILE_API_URL: string;
2
- export declare const TEST_GOVERNANCE_API_URL: string;
3
2
  export declare const TEST_LEGACY_DATAHUB_API_URL: string;
3
+ export declare const TEST_GOVERNANCE_API_URL: string;
4
4
  export declare function setBearerTokenForTest(): Promise<void>;
@@ -1,2 +1,2 @@
1
1
  export declare function settingSDKForTest(): Promise<void>;
2
- export declare function getTestCasesWithNullFields<GENERIC_DCAT_MODEL>(mock: GENERIC_DCAT_MODEL): GENERIC_DCAT_MODEL[];
2
+ export declare function getTestCasesWithNullFields<GENERIC_PROFILE_MODEL>(mock: GENERIC_PROFILE_MODEL): GENERIC_PROFILE_MODEL[];
@@ -1,5 +1,5 @@
1
- import DCAT_MODEL from "../../SODAS_SDK_CLASS/dcatClass";
2
1
  import GOVERNANCE_MODEL from "../../SODAS_SDK_CLASS/governanceClass";
2
+ import PROFILE_MODEL from "../../SODAS_SDK_CLASS/profileModel";
3
3
  import SODAS_SDK_CLASS from "../../SODAS_SDK_CLASS/sodasSDKClass";
4
4
  import { PaginatedResponse, SortOrder } from "../../core/type";
5
5
  export declare function compareAllFieldsExcept<GENERIC_SODAS_SDK_CLASS>(exceptingFields: string[], result: GENERIC_SODAS_SDK_CLASS, expected: GENERIC_SODAS_SDK_CLASS): void;
@@ -7,9 +7,9 @@ export declare function checkFieldsCreationByAPI<GENERIC_SODAS_SDK_CLASS>(create
7
7
  export declare function checkFieldsPreservedByUpdate<GENERIC_SODAS_SDK_CLASS>(updated: GENERIC_SODAS_SDK_CLASS, created: GENERIC_SODAS_SDK_CLASS): void;
8
8
  export declare function checkUpdatedAtField(updatedAtofUpdated: Date, updatedAtofCreated: Date): void;
9
9
  export declare function checkCantDeleteAlreadyRecordRemovedInstance(recordRemovedInstance: SODAS_SDK_CLASS): Promise<void>;
10
- export declare function testListInOrderAndTotal<GENERIC_DCAT_MODEL extends DCAT_MODEL>(TOTAL: number, BATCH_SIZE: number, createFn: (number: number) => Promise<GENERIC_DCAT_MODEL[]>, Class: {
11
- new (): GENERIC_DCAT_MODEL;
12
- listDBRecords: (pageNumber: number, pageSize: number, sortOrder: SortOrder) => Promise<PaginatedResponse<GENERIC_DCAT_MODEL>>;
10
+ export declare function testListInOrderAndTotal<GENERIC_PROFILE_MODEL extends PROFILE_MODEL>(TOTAL: number, BATCH_SIZE: number, createFn: (number: number) => Promise<GENERIC_PROFILE_MODEL[]>, Class: {
11
+ new (): GENERIC_PROFILE_MODEL;
12
+ listDBRecords: (pageNumber: number, pageSize: number, sortOrder: SortOrder) => Promise<PaginatedResponse<GENERIC_PROFILE_MODEL>>;
13
13
  }): Promise<void>;
14
14
  interface ListableModelClass {
15
15
  listDBRecords(pageNumber: number, pageSize: number, sortOrder: SortOrder, firstArgument?: any, secondArgument?: any): Promise<PaginatedResponse<GOVERNANCE_MODEL>>;
@@ -1,6 +1,7 @@
1
1
  import { DataServiceDTO } from "../../SODAS_SDK_CLASS/DCAT/dataService";
2
2
  import { DatasetDTO } from "../../SODAS_SDK_CLASS/DCAT/dataset";
3
3
  import { DistributionDTO } from "../../SODAS_SDK_CLASS/DCAT/distribution";
4
+ import { ValidationTemplateDTO } from "../../SODAS_SDK_CLASS/template/validation";
4
5
  export declare const FullTestCreateDataServiceDTO: DataServiceDTO;
5
6
  export declare const FullTestUpdateDataServiceDTO: DataServiceDTO;
6
7
  export declare const FullTestCreateDatasetDTO: DatasetDTO;
@@ -9,3 +10,5 @@ export declare const FullTestCreateDatasetSeriesDTO: DatasetDTO;
9
10
  export declare const FullTestUpdateDatasetSeriesDTO: DatasetDTO;
10
11
  export declare const FullTestCreateDistributionDTO: DistributionDTO;
11
12
  export declare const FullTestUpdateDistributionDTO: DistributionDTO;
13
+ export declare const FullTestCreateValidationTemplateDTO: ValidationTemplateDTO;
14
+ export declare const FullTestUpdateValidationTemplateDTO: ValidationTemplateDTO;
@@ -1,6 +1,4 @@
1
- import ValidationTemplate, { ValidationTemplateDTO } from "../../SODAS_SDK_CLASS/template/validation";
2
- export declare function getTestCreateValidationTemplateDTO(index?: number, name?: string): ValidationTemplateDTO;
3
- export declare function getTestUpdateValidationTemplateDTO(updating: ValidationTemplate, index?: number): ValidationTemplateDTO;
4
- export declare function createTestValidationTemplate(index?: number, name?: string): Promise<ValidationTemplate>;
5
- export declare function createNumberOfTestValidationTemplates(number?: number, name?: string): Promise<ValidationTemplate[]>;
1
+ import ValidationTemplate from "../../SODAS_SDK_CLASS/template/validation";
2
+ export declare function createTestValidationTemplate(): Promise<ValidationTemplate>;
3
+ export declare function createNumberOfTestValidationTemplates(number?: number): Promise<ValidationTemplate[]>;
6
4
  export declare function deleteAllValidationTemplates(): Promise<void>;
@@ -10,7 +10,7 @@ declare class Config {
10
10
  * Explicitly configure the SDK with the given API URLs.
11
11
  * This is the preferred way to set API URLs instead of using configureAPIURL.
12
12
  */
13
- static configure(datahubApiUrl: string, governanceApiUrl: string, legacyDatahubApiUrl: string): Config;
13
+ static configure(datahubApiUrl: string, legacyDatahubApiUrl: string, governanceApiUrl: string): Config;
14
14
  /**
15
15
  * Get the singleton instance of Config, using environment variables.
16
16
  */
@@ -1,5 +1,4 @@
1
1
  import SODAS_SDK_CLASS from "../SODAS_SDK_CLASS/sodasSDKClass";
2
- import { ResourceDescriptorRole } from "./type";
3
2
  export declare class AlreadyRecordedError extends Error {
4
3
  constructor(instance: SODAS_SDK_CLASS);
5
4
  }
@@ -51,12 +50,6 @@ export declare class RecordNotFoundError extends Error {
51
50
  export declare class RequirementsNotSetError extends Error {
52
51
  constructor();
53
52
  }
54
- export declare class ResourceRoleDescriptorAlreadyExist extends Error {
55
- constructor(role: ResourceDescriptorRole);
56
- }
57
- export declare class ResourceRoleDescriptorNotExist extends Error {
58
- constructor(role: ResourceDescriptorRole);
59
- }
60
53
  export declare class RetryLimitReachedError extends Error {
61
54
  constructor(max: number);
62
55
  }
@@ -1,11 +1,4 @@
1
- import { IRIType, TemplateDetailFunctionality } from "./type";
2
- /***********************COMMON ERROR***********************/
3
- export declare class NotValidResourceDescsriptor extends Error {
4
- constructor();
5
- }
6
- export declare class NotEnoughFuntionalityTemplate extends Error {
7
- constructor(requiredFuncionalityList: TemplateDetailFunctionality[], inputFunctionalityList: TemplateDetailFunctionality[]);
8
- }
1
+ import { IRIType } from "./type";
9
2
  /***********************TYPE ERROR***********************/
10
3
  export declare class DuplicatedTypeLabel extends Error {
11
4
  constructor(label: string);
@@ -29,10 +29,6 @@ export declare function toDateString(date: Date | null): DateString;
29
29
  * @returns {Date} - The corresponding JavaScript Date object.
30
30
  */
31
31
  export declare function toDate(dateString: DateString): Date;
32
- export type TemplateArtifactRow = {
33
- [K in TemplateDetailFunctionality]?: any;
34
- };
35
- export type TemplateArtifactValue = Array<TemplateArtifactRow>;
36
32
  /**
37
33
  * Represents a multilingual field where each key is a language code (e.g., "en", "ko") and the value is a string.
38
34
  */
@@ -48,39 +44,9 @@ export type MultiLanguageKeywords = {
48
44
  export type ExtraMetadataType = {
49
45
  [MetaFieldName: string]: string;
50
46
  };
51
- export declare enum ResourceDescriptorRole {
52
- VOCABULARY = "vocabulary",
53
- TYPE = "type",
54
- SCHEMA = "schema",
55
- CONSTRAINT = "constraint",
56
- VALIDATION = "validation",
57
- MAPPING = "mapping",
58
- EXAMPLE = "example",
59
- SPECIFICATION = "specification",
60
- GUIDANCE = "guidance"
61
- }
62
- export declare enum ArtifactType {
63
- TEMPLATE = "template",
64
- FILE = "file"
65
- }
66
- export declare enum TemplateDetailFunctionality {
67
- ORIGIN = "origin",
68
- NAMESPACE = "namespaceIRI",
69
- TERM = "term",
70
- DESCRIPTION = "description",//EXAMPLE and SCHEMA ALSO
71
- NAME = "name",//SCHEMA ALSO
72
- LABEL = "label",
73
- VALUE = "value",//EXAMPLE ALSO
74
- TYPE = "type",//CONSTRAINT ALSO
75
- REQUIRED = "required",//CONSTRAINT ALSO
76
- FIELD_TERM = "fieldTerm",
77
- FIELD = "field",//EXAMPLE and MAPPING ALSO
78
- REGEX = "regex",
79
- MEASURE = "measure",
80
- TARGET_PROFILE = "targetProfile",
81
- TARGET_FIELD = "targetField",
82
- CONVERSION = "conversion"
83
- }
47
+ export type QualityMetadataType = {
48
+ [QualityMetadataFieldName: string]: string;
49
+ };
84
50
  export type PaginatedResponse<GENERIC_SODAS_SDK_CLASS> = {
85
51
  total: number;
86
52
  list: GENERIC_SODAS_SDK_CLASS[];