@lincs.project/webannotation-schema 1.0.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.
- package/LICENSE +661 -0
- package/README.md +155 -0
- package/dist/context.jsonld +24 -0
- package/dist/defs.jsonld +949 -0
- package/dist/schema.jsonld +621 -0
- package/dist/validate.js +1 -0
- package/lib/index.d.ts +145 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +13 -0
- package/lib/index.js.map +1 -0
- package/lib/schema/config.d.ts +4 -0
- package/lib/schema/config.d.ts.map +1 -0
- package/lib/schema/config.js +4 -0
- package/lib/schema/config.js.map +1 -0
- package/lib/schema/context.d.ts +25 -0
- package/lib/schema/context.d.ts.map +1 -0
- package/lib/schema/context.js +25 -0
- package/lib/schema/context.js.map +1 -0
- package/lib/schema/definitions/agent.d.ts +36 -0
- package/lib/schema/definitions/agent.d.ts.map +1 -0
- package/lib/schema/definitions/agent.js +82 -0
- package/lib/schema/definitions/agent.js.map +1 -0
- package/lib/schema/definitions/body/citation.d.ts +27 -0
- package/lib/schema/definitions/body/citation.d.ts.map +1 -0
- package/lib/schema/definitions/body/citation.js +53 -0
- package/lib/schema/definitions/body/citation.js.map +1 -0
- package/lib/schema/definitions/body/common.d.ts +17 -0
- package/lib/schema/definitions/body/common.d.ts.map +1 -0
- package/lib/schema/definitions/body/common.js +46 -0
- package/lib/schema/definitions/body/common.js.map +1 -0
- package/lib/schema/definitions/body/conceptualObject.d.ts +27 -0
- package/lib/schema/definitions/body/conceptualObject.d.ts.map +1 -0
- package/lib/schema/definitions/body/conceptualObject.js +61 -0
- package/lib/schema/definitions/body/conceptualObject.js.map +1 -0
- package/lib/schema/definitions/body/correction.d.ts +24 -0
- package/lib/schema/definitions/body/correction.d.ts.map +1 -0
- package/lib/schema/definitions/body/correction.js +54 -0
- package/lib/schema/definitions/body/correction.js.map +1 -0
- package/lib/schema/definitions/body/date.d.ts +30 -0
- package/lib/schema/definitions/body/date.d.ts.map +1 -0
- package/lib/schema/definitions/body/date.js +61 -0
- package/lib/schema/definitions/body/date.js.map +1 -0
- package/lib/schema/definitions/body/index.d.ts +37 -0
- package/lib/schema/definitions/body/index.d.ts.map +1 -0
- package/lib/schema/definitions/body/index.js +220 -0
- package/lib/schema/definitions/body/index.js.map +1 -0
- package/lib/schema/definitions/body/keyword.d.ts +48 -0
- package/lib/schema/definitions/body/keyword.d.ts.map +1 -0
- package/lib/schema/definitions/body/keyword.js +100 -0
- package/lib/schema/definitions/body/keyword.js.map +1 -0
- package/lib/schema/definitions/body/link.d.ts +21 -0
- package/lib/schema/definitions/body/link.d.ts.map +1 -0
- package/lib/schema/definitions/body/link.js +37 -0
- package/lib/schema/definitions/body/link.js.map +1 -0
- package/lib/schema/definitions/body/note.d.ts +27 -0
- package/lib/schema/definitions/body/note.d.ts.map +1 -0
- package/lib/schema/definitions/body/note.js +54 -0
- package/lib/schema/definitions/body/note.js.map +1 -0
- package/lib/schema/definitions/body/organization.d.ts +27 -0
- package/lib/schema/definitions/body/organization.d.ts.map +1 -0
- package/lib/schema/definitions/body/organization.js +65 -0
- package/lib/schema/definitions/body/organization.js.map +1 -0
- package/lib/schema/definitions/body/person.d.ts +27 -0
- package/lib/schema/definitions/body/person.d.ts.map +1 -0
- package/lib/schema/definitions/body/person.js +61 -0
- package/lib/schema/definitions/body/person.js.map +1 -0
- package/lib/schema/definitions/body/physicalThing.d.ts +27 -0
- package/lib/schema/definitions/body/physicalThing.d.ts.map +1 -0
- package/lib/schema/definitions/body/physicalThing.js +61 -0
- package/lib/schema/definitions/body/physicalThing.js.map +1 -0
- package/lib/schema/definitions/body/place.d.ts +30 -0
- package/lib/schema/definitions/body/place.d.ts.map +1 -0
- package/lib/schema/definitions/body/place.js +64 -0
- package/lib/schema/definitions/body/place.js.map +1 -0
- package/lib/schema/definitions/body/work.d.ts +27 -0
- package/lib/schema/definitions/body/work.d.ts.map +1 -0
- package/lib/schema/definitions/body/work.js +61 -0
- package/lib/schema/definitions/body/work.js.map +1 -0
- package/lib/schema/definitions/index.d.ts +22 -0
- package/lib/schema/definitions/index.d.ts.map +1 -0
- package/lib/schema/definitions/index.js +24 -0
- package/lib/schema/definitions/index.js.map +1 -0
- package/lib/schema/definitions/target/index.d.ts +710 -0
- package/lib/schema/definitions/target/index.d.ts.map +1 -0
- package/lib/schema/definitions/target/index.js +231 -0
- package/lib/schema/definitions/target/index.js.map +1 -0
- package/lib/schema/definitions/target/selector/index.d.ts +5 -0
- package/lib/schema/definitions/target/selector/index.d.ts.map +1 -0
- package/lib/schema/definitions/target/selector/index.js +5 -0
- package/lib/schema/definitions/target/selector/index.js.map +1 -0
- package/lib/schema/definitions/target/selector/range.d.ts +141 -0
- package/lib/schema/definitions/target/selector/range.d.ts.map +1 -0
- package/lib/schema/definitions/target/selector/range.js +44 -0
- package/lib/schema/definitions/target/selector/range.js.map +1 -0
- package/lib/schema/definitions/target/selector/textPosition.d.ts +21 -0
- package/lib/schema/definitions/target/selector/textPosition.d.ts.map +1 -0
- package/lib/schema/definitions/target/selector/textPosition.js +57 -0
- package/lib/schema/definitions/target/selector/textPosition.js.map +1 -0
- package/lib/schema/definitions/target/selector/textQuote.d.ts +297 -0
- package/lib/schema/definitions/target/selector/textQuote.d.ts.map +1 -0
- package/lib/schema/definitions/target/selector/textQuote.js +78 -0
- package/lib/schema/definitions/target/selector/textQuote.js.map +1 -0
- package/lib/schema/definitions/target/selector/xpath.d.ts +46 -0
- package/lib/schema/definitions/target/selector/xpath.d.ts.map +1 -0
- package/lib/schema/definitions/target/selector/xpath.js +51 -0
- package/lib/schema/definitions/target/selector/xpath.js.map +1 -0
- package/lib/schema/index.d.ts +5 -0
- package/lib/schema/index.d.ts.map +1 -0
- package/lib/schema/index.js +5 -0
- package/lib/schema/index.js.map +1 -0
- package/lib/schema/root.d.ts +1076 -0
- package/lib/schema/root.d.ts.map +1 -0
- package/lib/schema/root.js +408 -0
- package/lib/schema/root.js.map +1 -0
- package/lib/validation.d.ts +25 -0
- package/lib/validation.d.ts.map +1 -0
- package/lib/validation.js +35 -0
- package/lib/validation.js.map +1 -0
- package/package.json +68 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { JSONSchemaType } from 'ajv';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
export declare const PlaceEntityType: z.ZodUnion<[z.ZodLiteral<"cwrc:place">, z.ZodTuple<[z.ZodLiteral<"cwrc:place">, z.ZodLiteral<"crm:E89_Propositional_Object">], null>]>;
|
|
4
|
+
export type PlaceEntityType = z.infer<typeof PlaceEntityType>;
|
|
5
|
+
export declare const Place: z.ZodObject<{
|
|
6
|
+
id: z.ZodString;
|
|
7
|
+
entityType: z.ZodUnion<[z.ZodLiteral<"cwrc:place">, z.ZodTuple<[z.ZodLiteral<"cwrc:place">, z.ZodLiteral<"crm:E89_Propositional_Object">], null>]>;
|
|
8
|
+
certainty: z.ZodOptional<z.ZodEnum<["edit:qualityLow", "edit:qualityMedium", "edit:qualityHigh", "edit:qualityUnknown"]>>;
|
|
9
|
+
precision: z.ZodOptional<z.ZodEnum<["edit:qualityLow", "edit:qualityMedium", "edit:qualityHigh", "edit:qualityUnknown"]>>;
|
|
10
|
+
label: z.ZodOptional<z.ZodString>;
|
|
11
|
+
description: z.ZodOptional<z.ZodString>;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
id: string;
|
|
14
|
+
entityType: ("cwrc:place" | ["cwrc:place", "crm:E89_Propositional_Object"]) & ("cwrc:place" | ["cwrc:place", "crm:E89_Propositional_Object"] | undefined);
|
|
15
|
+
certainty?: "edit:qualityLow" | "edit:qualityMedium" | "edit:qualityHigh" | "edit:qualityUnknown" | undefined;
|
|
16
|
+
precision?: "edit:qualityLow" | "edit:qualityMedium" | "edit:qualityHigh" | "edit:qualityUnknown" | undefined;
|
|
17
|
+
label?: string | undefined;
|
|
18
|
+
description?: string | undefined;
|
|
19
|
+
}, {
|
|
20
|
+
id: string;
|
|
21
|
+
entityType: ("cwrc:place" | ["cwrc:place", "crm:E89_Propositional_Object"]) & ("cwrc:place" | ["cwrc:place", "crm:E89_Propositional_Object"] | undefined);
|
|
22
|
+
certainty?: "edit:qualityLow" | "edit:qualityMedium" | "edit:qualityHigh" | "edit:qualityUnknown" | undefined;
|
|
23
|
+
precision?: "edit:qualityLow" | "edit:qualityMedium" | "edit:qualityHigh" | "edit:qualityUnknown" | undefined;
|
|
24
|
+
label?: string | undefined;
|
|
25
|
+
description?: string | undefined;
|
|
26
|
+
}>;
|
|
27
|
+
export type Place = z.infer<typeof Place>;
|
|
28
|
+
export declare const placeEntityTypeSchema: JSONSchemaType<PlaceEntityType>;
|
|
29
|
+
export declare const placeSchema: JSONSchemaType<Place>;
|
|
30
|
+
//# sourceMappingURL=place.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"place.d.ts","sourceRoot":"","sources":["../../../../src/schema/definitions/body/place.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgBxB,eAAO,MAAM,eAAe,wIAM1B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAI9D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;EAYE,CAAC;AAErB,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAI1C,eAAO,MAAM,qBAAqB,EAAE,cAAc,CAAC,eAAe,CAajE,CAAC;AAIF,eAAO,MAAM,WAAW,EAAE,cAAc,CAAC,KAAK,CAa7C,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { Certainty, Description, Label, Precision } from './common';
|
|
3
|
+
// * Pure Typescript Type - Just for reference
|
|
4
|
+
// export interface _Place {
|
|
5
|
+
// id: string;
|
|
6
|
+
// entityType: 'cwrc:place' | ['cwrc:place', 'crm:E89_Propositional_Object'];
|
|
7
|
+
// certainty?: string;
|
|
8
|
+
// precision?: string;
|
|
9
|
+
// label?: string;
|
|
10
|
+
// description?: string;
|
|
11
|
+
// }
|
|
12
|
+
// * Property: entityType - Type using Zod & Inference
|
|
13
|
+
export const PlaceEntityType = z.union([
|
|
14
|
+
z.literal('cwrc:place'),
|
|
15
|
+
z.tuple([
|
|
16
|
+
z.literal('cwrc:place'),
|
|
17
|
+
z.literal('crm:E89_Propositional_Object').describe('Fictional Place'),
|
|
18
|
+
]),
|
|
19
|
+
]);
|
|
20
|
+
// * Type using Zod & Inference
|
|
21
|
+
export const Place = z
|
|
22
|
+
.object({
|
|
23
|
+
id: z
|
|
24
|
+
.string()
|
|
25
|
+
.url({ message: 'Must be an URI' })
|
|
26
|
+
.describe('The IRI that identifies the Body resource.'),
|
|
27
|
+
entityType: PlaceEntityType,
|
|
28
|
+
certainty: Certainty.optional(),
|
|
29
|
+
precision: Precision.optional(),
|
|
30
|
+
label: Label.optional(),
|
|
31
|
+
description: Description.optional(),
|
|
32
|
+
})
|
|
33
|
+
.describe('Place');
|
|
34
|
+
// * JSONSchema - entityType
|
|
35
|
+
export const placeEntityTypeSchema = {
|
|
36
|
+
oneOf: [
|
|
37
|
+
{ type: 'string', const: 'cwrc:place' },
|
|
38
|
+
{
|
|
39
|
+
type: 'array',
|
|
40
|
+
minItems: 2,
|
|
41
|
+
maxItems: 2,
|
|
42
|
+
items: [
|
|
43
|
+
{ type: 'string', const: 'cwrc:place' },
|
|
44
|
+
{ type: 'string', const: 'crm:E89_Propositional_Object', description: 'Fictional Place' },
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
],
|
|
48
|
+
};
|
|
49
|
+
// * JSONSchema
|
|
50
|
+
export const placeSchema = {
|
|
51
|
+
type: 'object',
|
|
52
|
+
description: 'A place entity',
|
|
53
|
+
properties: {
|
|
54
|
+
id: { type: 'string', format: 'uri', description: 'The IRI that identifies the Body resource' },
|
|
55
|
+
entityType: placeEntityTypeSchema,
|
|
56
|
+
certainty: { $ref: 'defs.jsonld#/definitions/certainty' },
|
|
57
|
+
precision: { $ref: 'defs.jsonld#/definitions/precision' },
|
|
58
|
+
label: { $ref: 'defs.jsonld#/definitions/label' },
|
|
59
|
+
description: { $ref: 'defs.jsonld#/definitions/description' },
|
|
60
|
+
},
|
|
61
|
+
required: ['id', 'entityType'],
|
|
62
|
+
// errorMessage: { properties: { id: 'Must be an URI' } },
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=place.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"place.js","sourceRoot":"","sources":["../../../../src/schema/definitions/body/place.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEpE,8CAA8C;AAE9C,4BAA4B;AAC5B,gBAAgB;AAChB,+EAA+E;AAC/E,wBAAwB;AACxB,wBAAwB;AACxB,oBAAoB;AACpB,0BAA0B;AAC1B,IAAI;AAEJ,sDAAsD;AAEtD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC;IACrC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IACvB,CAAC,CAAC,KAAK,CAAC;QACN,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACvB,CAAC,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;KACtE,CAAC;CACH,CAAC,CAAC;AAIH,+BAA+B;AAE/B,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC;KACnB,MAAM,CAAC;IACN,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,GAAG,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;SAClC,QAAQ,CAAC,4CAA4C,CAAC;IACzD,UAAU,EAAE,eAAe;IAC3B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;IACvB,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;CACpC,CAAC;KACD,QAAQ,CAAC,OAAO,CAAC,CAAC;AAIrB,4BAA4B;AAE5B,MAAM,CAAC,MAAM,qBAAqB,GAAoC;IACpE,KAAK,EAAE;QACL,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE;QACvC;YACE,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,CAAC;YACX,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE;gBACvC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,8BAA8B,EAAE,WAAW,EAAE,iBAAiB,EAAE;aAC1F;SACF;KACF;CACF,CAAC;AAEF,eAAe;AAEf,MAAM,CAAC,MAAM,WAAW,GAA0B;IAChD,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,gBAAgB;IAC7B,UAAU,EAAE;QACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,2CAA2C,EAAE;QAC/F,UAAU,EAAE,qBAAqB;QACjC,SAAS,EAAE,EAAE,IAAI,EAAE,oCAAoC,EAAE;QACzD,SAAS,EAAE,EAAE,IAAI,EAAE,oCAAoC,EAAE;QACzD,KAAK,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;QACjD,WAAW,EAAE,EAAE,IAAI,EAAE,sCAAsC,EAAE;KAC9D;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC;IAC9B,0DAA0D;CAC3D,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { JSONSchemaType } from 'ajv';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
export declare const WorkEntityType: z.ZodTuple<[z.ZodLiteral<"crm:E89_Propositional_Object">, z.ZodUnion<[z.ZodLiteral<"frbroo:F1">, z.ZodLiteral<"wikidata:Q15306849">]>], null>;
|
|
4
|
+
export type WorkEntityType = z.infer<typeof WorkEntityType>;
|
|
5
|
+
export declare const Work: z.ZodObject<{
|
|
6
|
+
id: z.ZodString;
|
|
7
|
+
entityType: z.ZodTuple<[z.ZodLiteral<"crm:E89_Propositional_Object">, z.ZodUnion<[z.ZodLiteral<"frbroo:F1">, z.ZodLiteral<"wikidata:Q15306849">]>], null>;
|
|
8
|
+
certainty: z.ZodOptional<z.ZodEnum<["edit:qualityLow", "edit:qualityMedium", "edit:qualityHigh", "edit:qualityUnknown"]>>;
|
|
9
|
+
label: z.ZodOptional<z.ZodString>;
|
|
10
|
+
description: z.ZodOptional<z.ZodString>;
|
|
11
|
+
}, "strip", z.ZodTypeAny, {
|
|
12
|
+
id: string;
|
|
13
|
+
entityType: ["crm:E89_Propositional_Object", "frbroo:F1" | "wikidata:Q15306849"];
|
|
14
|
+
certainty?: "edit:qualityLow" | "edit:qualityMedium" | "edit:qualityHigh" | "edit:qualityUnknown" | undefined;
|
|
15
|
+
label?: string | undefined;
|
|
16
|
+
description?: string | undefined;
|
|
17
|
+
}, {
|
|
18
|
+
id: string;
|
|
19
|
+
entityType: ["crm:E89_Propositional_Object", "frbroo:F1" | "wikidata:Q15306849"];
|
|
20
|
+
certainty?: "edit:qualityLow" | "edit:qualityMedium" | "edit:qualityHigh" | "edit:qualityUnknown" | undefined;
|
|
21
|
+
label?: string | undefined;
|
|
22
|
+
description?: string | undefined;
|
|
23
|
+
}>;
|
|
24
|
+
export type Work = z.infer<typeof Work>;
|
|
25
|
+
export declare const workEntityTypeSchema: JSONSchemaType<WorkEntityType>;
|
|
26
|
+
export declare const workSchema: JSONSchemaType<Work>;
|
|
27
|
+
//# sourceMappingURL=work.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work.d.ts","sourceRoot":"","sources":["../../../../src/schema/definitions/body/work.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB,eAAO,MAAM,cAAc,+IAMzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAI5D,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;EAWE,CAAC;AAEpB,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;AAIxC,eAAO,MAAM,oBAAoB,EAAE,cAAc,CAAC,cAAc,CAa/D,CAAC;AAIF,eAAO,MAAM,UAAU,EAAE,cAAc,CAAC,IAAI,CAY3C,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { Certainty, Description, Label } from './common';
|
|
3
|
+
// * Pure Typescript Type - Just for reference
|
|
4
|
+
// export interface Work {
|
|
5
|
+
// id: string;
|
|
6
|
+
// entityType: ['crm:E89_Propositional_Object', 'frbroo:F1' | 'wikidata:Q15306849'];
|
|
7
|
+
// certainty?: string;
|
|
8
|
+
// label?: string;
|
|
9
|
+
// description?: string;
|
|
10
|
+
// }
|
|
11
|
+
// * Property: entityType - Type using Zod & Inference
|
|
12
|
+
export const WorkEntityType = z.tuple([
|
|
13
|
+
z.literal('crm:E89_Propositional_Object'),
|
|
14
|
+
z.union([
|
|
15
|
+
z.literal('frbroo:F1').describe('Real Work'),
|
|
16
|
+
z.literal('wikidata:Q15306849').describe('Fictional Work'),
|
|
17
|
+
]),
|
|
18
|
+
]);
|
|
19
|
+
// * Type using Zod & Inference
|
|
20
|
+
export const Work = z
|
|
21
|
+
.object({
|
|
22
|
+
id: z
|
|
23
|
+
.string()
|
|
24
|
+
.url({ message: 'Must be an URI' })
|
|
25
|
+
.describe('The IRI that identifies the Body resource.'),
|
|
26
|
+
entityType: WorkEntityType,
|
|
27
|
+
certainty: Certainty.optional(),
|
|
28
|
+
label: Label.optional(),
|
|
29
|
+
description: Description.optional(),
|
|
30
|
+
})
|
|
31
|
+
.describe('Work');
|
|
32
|
+
// * JSONSchema - entityType
|
|
33
|
+
export const workEntityTypeSchema = {
|
|
34
|
+
type: 'array',
|
|
35
|
+
minItems: 2,
|
|
36
|
+
maxItems: 2,
|
|
37
|
+
items: [
|
|
38
|
+
{ type: 'string', const: 'crm:E89_Propositional_Object' },
|
|
39
|
+
{
|
|
40
|
+
oneOf: [
|
|
41
|
+
{ type: 'string', const: 'frbroo:F1', description: 'Real Work' },
|
|
42
|
+
{ type: 'string', const: 'wikidata:Q15306849', description: 'Fictional Work' },
|
|
43
|
+
],
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
};
|
|
47
|
+
// * JSONSchema
|
|
48
|
+
export const workSchema = {
|
|
49
|
+
type: 'object',
|
|
50
|
+
description: 'A work entity',
|
|
51
|
+
properties: {
|
|
52
|
+
id: { type: 'string', format: 'uri', description: 'The IRI that identifies the Body resource' },
|
|
53
|
+
entityType: workEntityTypeSchema,
|
|
54
|
+
certainty: { $ref: 'defs.jsonld#/definitions/certainty' },
|
|
55
|
+
label: { $ref: 'defs.jsonld#/definitions/label' },
|
|
56
|
+
description: { $ref: 'defs.jsonld#/definitions/description' },
|
|
57
|
+
},
|
|
58
|
+
required: ['id', 'entityType'],
|
|
59
|
+
// errorMessage: { properties: { id: 'Must be an URI' } },
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=work.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work.js","sourceRoot":"","sources":["../../../../src/schema/definitions/body/work.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEzD,8CAA8C;AAE9C,0BAA0B;AAC1B,gBAAgB;AAChB,sFAAsF;AACtF,wBAAwB;AACxB,oBAAoB;AACpB,0BAA0B;AAC1B,IAAI;AAEJ,sDAAsD;AAEtD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC;IACpC,CAAC,CAAC,OAAO,CAAC,8BAA8B,CAAC;IACzC,CAAC,CAAC,KAAK,CAAC;QACN,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC5C,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;KAC3D,CAAC;CACH,CAAC,CAAC;AAIH,+BAA+B;AAE/B,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;KAClB,MAAM,CAAC;IACN,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,GAAG,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;SAClC,QAAQ,CAAC,4CAA4C,CAAC;IACzD,UAAU,EAAE,cAAc;IAC1B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;IACvB,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;CACpC,CAAC;KACD,QAAQ,CAAC,MAAM,CAAC,CAAC;AAIpB,4BAA4B;AAE5B,MAAM,CAAC,MAAM,oBAAoB,GAAmC;IAClE,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE;QACL,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,8BAA8B,EAAE;QACzD;YACE,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE;gBAChE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,gBAAgB,EAAE;aAC/E;SACF;KACF;CACF,CAAC;AAEF,eAAe;AAEf,MAAM,CAAC,MAAM,UAAU,GAAyB;IAC9C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,eAAe;IAC5B,UAAU,EAAE;QACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,2CAA2C,EAAE;QAC/F,UAAU,EAAE,oBAAoB;QAChC,SAAS,EAAE,EAAE,IAAI,EAAE,oCAAoC,EAAE;QACzD,KAAK,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;QACjD,WAAW,EAAE,EAAE,IAAI,EAAE,sCAAsC,EAAE;KAC9D;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC;IAC9B,0DAA0D;CAC3D,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { JSONSchemaType } from 'ajv';
|
|
2
|
+
import { type Software, type User } from './agent';
|
|
3
|
+
import { type Body } from './body';
|
|
4
|
+
import { type Target } from './target';
|
|
5
|
+
import { type RangeSelector, type TextPositionSelector, type TextQuoteSelector, type XpathSelector } from './target/selector';
|
|
6
|
+
export * from './agent';
|
|
7
|
+
export * from './body';
|
|
8
|
+
export * from './target';
|
|
9
|
+
export interface Definition {
|
|
10
|
+
definitions: {
|
|
11
|
+
creator: JSONSchemaType<User>;
|
|
12
|
+
software: JSONSchemaType<Software>;
|
|
13
|
+
target: JSONSchemaType<Target>;
|
|
14
|
+
textQuoteSelector: JSONSchemaType<TextQuoteSelector>;
|
|
15
|
+
rangeSelector: JSONSchemaType<RangeSelector>;
|
|
16
|
+
xpathSelector: JSONSchemaType<XpathSelector>;
|
|
17
|
+
textPositionSelector: JSONSchemaType<TextPositionSelector>;
|
|
18
|
+
body: JSONSchemaType<Body>;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export declare const definitionSchema: JSONSchemaType<Definition>;
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/definitions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAiC,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AAClF,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAG3B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AAEzB,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE;QACX,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9B,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/B,iBAAiB,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAC;QACrD,aAAa,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;QAC7C,aAAa,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;QAC7C,oBAAoB,EAAE,cAAc,CAAC,oBAAoB,CAAC,CAAC;QAC3D,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;KAC5B,CAAC;CACH;AAED,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,UAAU,CAcvD,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { creatorSchema, softwareSchema } from './agent';
|
|
2
|
+
import { bodySchema } from './body';
|
|
3
|
+
import { targetSchema } from './target';
|
|
4
|
+
import { rangeSelectorSchema, textPositionSelectorSchema, textQuoteSelectorSchema, xpathSelectorSchema, } from './target/selector';
|
|
5
|
+
import { defsId } from '../config';
|
|
6
|
+
export * from './agent';
|
|
7
|
+
export * from './body';
|
|
8
|
+
export * from './target';
|
|
9
|
+
export const definitionSchema = {
|
|
10
|
+
$id: defsId,
|
|
11
|
+
type: 'object',
|
|
12
|
+
definitions: {
|
|
13
|
+
creator: creatorSchema,
|
|
14
|
+
software: softwareSchema,
|
|
15
|
+
target: targetSchema,
|
|
16
|
+
textQuoteSelector: textQuoteSelectorSchema,
|
|
17
|
+
rangeSelector: rangeSelectorSchema,
|
|
18
|
+
xpathSelector: xpathSelectorSchema,
|
|
19
|
+
textPositionSelector: textPositionSelectorSchema,
|
|
20
|
+
body: bodySchema,
|
|
21
|
+
},
|
|
22
|
+
required: [],
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/definitions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,cAAc,EAA4B,MAAM,SAAS,CAAC;AAClF,OAAO,EAAE,UAAU,EAAa,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAe,MAAM,UAAU,CAAC;AACrD,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,uBAAuB,EACvB,mBAAmB,GAKpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAC;AAEjC,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AAezB,MAAM,CAAC,MAAM,gBAAgB,GAA+B;IAC1D,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE;QACX,OAAO,EAAE,aAAa;QACtB,QAAQ,EAAE,cAAc;QACxB,MAAM,EAAE,YAAY;QACpB,iBAAiB,EAAE,uBAAuB;QAC1C,aAAa,EAAE,mBAAmB;QAClC,aAAa,EAAE,mBAAmB;QAClC,oBAAoB,EAAE,0BAA0B;QAChD,IAAI,EAAE,UAAU;KACjB;IACD,QAAQ,EAAE,EAAE;CACb,CAAC"}
|