@twin.org/standards-foaf 0.0.3-next.3 → 0.0.3-next.30

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 (63) hide show
  1. package/dist/es/dataTypes/foafDataTypes.js +36 -44
  2. package/dist/es/dataTypes/foafDataTypes.js.map +1 -1
  3. package/dist/es/index.js +7 -7
  4. package/dist/es/index.js.map +1 -1
  5. package/dist/es/models/IFoafAgent.js +2 -0
  6. package/dist/es/models/IFoafAgent.js.map +1 -0
  7. package/dist/es/models/IFoafBaseObject.js +2 -0
  8. package/dist/es/models/IFoafBaseObject.js.map +1 -0
  9. package/dist/es/models/IFoafDocument.js +2 -0
  10. package/dist/es/models/IFoafDocument.js.map +1 -0
  11. package/dist/es/models/IFoafGroup.js +2 -0
  12. package/dist/es/models/IFoafGroup.js.map +1 -0
  13. package/dist/es/models/IFoafImage.js +2 -0
  14. package/dist/es/models/IFoafImage.js.map +1 -0
  15. package/dist/es/models/IFoafOrganization.js +2 -0
  16. package/dist/es/models/IFoafOrganization.js.map +1 -0
  17. package/dist/es/models/IFoafPerson.js +2 -0
  18. package/dist/es/models/IFoafPerson.js.map +1 -0
  19. package/dist/es/models/foafContextType.js.map +1 -1
  20. package/dist/es/models/foafContexts.js +12 -6
  21. package/dist/es/models/foafContexts.js.map +1 -1
  22. package/dist/es/schemas/{Agent.json → FoafAgent.json} +5 -5
  23. package/dist/es/schemas/{Document.json → FoafDocument.json} +2 -2
  24. package/dist/es/schemas/{Group.json → FoafGroup.json} +7 -7
  25. package/dist/es/schemas/{Image.json → FoafImage.json} +3 -3
  26. package/dist/es/schemas/{Organization.json → FoafOrganization.json} +5 -5
  27. package/dist/es/schemas/{Person.json → FoafPerson.json} +8 -8
  28. package/dist/types/index.d.ts +7 -7
  29. package/dist/types/models/{IAgent.d.ts → IFoafAgent.d.ts} +6 -6
  30. package/dist/types/models/{IBaseObject.d.ts → IFoafBaseObject.d.ts} +3 -3
  31. package/dist/types/models/{IDocument.d.ts → IFoafDocument.d.ts} +2 -2
  32. package/dist/types/models/{IGroup.d.ts → IFoafGroup.d.ts} +3 -3
  33. package/dist/types/models/{IImage.d.ts → IFoafImage.d.ts} +3 -3
  34. package/dist/types/models/{IOrganization.d.ts → IFoafOrganization.d.ts} +2 -2
  35. package/dist/types/models/{IPerson.d.ts → IFoafPerson.d.ts} +5 -5
  36. package/dist/types/models/foafContextType.d.ts +1 -1
  37. package/dist/types/models/foafContexts.d.ts +12 -6
  38. package/docs/changelog.md +189 -0
  39. package/docs/reference/index.md +7 -7
  40. package/docs/reference/interfaces/{IAgent.md → IFoafAgent.md} +16 -16
  41. package/docs/reference/interfaces/{IBaseObject.md → IFoafBaseObject.md} +4 -4
  42. package/docs/reference/interfaces/{IDocument.md → IFoafDocument.md} +11 -11
  43. package/docs/reference/interfaces/{IGroup.md → IFoafGroup.md} +20 -20
  44. package/docs/reference/interfaces/{IImage.md → IFoafImage.md} +14 -14
  45. package/docs/reference/interfaces/{IOrganization.md → IFoafOrganization.md} +19 -19
  46. package/docs/reference/interfaces/{IPerson.md → IFoafPerson.md} +21 -21
  47. package/docs/reference/type-aliases/FoafContextType.md +1 -1
  48. package/docs/reference/variables/FoafContexts.md +17 -9
  49. package/package.json +1 -1
  50. package/dist/es/models/IAgent.js +0 -2
  51. package/dist/es/models/IAgent.js.map +0 -1
  52. package/dist/es/models/IBaseObject.js +0 -2
  53. package/dist/es/models/IBaseObject.js.map +0 -1
  54. package/dist/es/models/IDocument.js +0 -2
  55. package/dist/es/models/IDocument.js.map +0 -1
  56. package/dist/es/models/IGroup.js +0 -2
  57. package/dist/es/models/IGroup.js.map +0 -1
  58. package/dist/es/models/IImage.js +0 -2
  59. package/dist/es/models/IImage.js.map +0 -1
  60. package/dist/es/models/IOrganization.js +0 -2
  61. package/dist/es/models/IOrganization.js.map +0 -1
  62. package/dist/es/models/IPerson.js +0 -2
  63. package/dist/es/models/IPerson.js.map +0 -1
@@ -1,15 +1,15 @@
1
1
  // Copyright 2025 IOTA Stiftung.
2
2
  // SPDX-License-Identifier: Apache-2.0.
3
- import { DataTypeHandlerFactory } from "@twin.org/data-core";
3
+ import { DataTypeHelper } from "@twin.org/data-core";
4
4
  import { JsonLdProcessor } from "@twin.org/data-json-ld";
5
5
  import { FoafContexts } from "../models/foafContexts.js";
6
6
  import { FoafTypes } from "../models/foafTypes.js";
7
- import AgentSchema from "../schemas/Agent.json" with { type: "json" };
8
- import DocumentSchema from "../schemas/Document.json" with { type: "json" };
9
- import GroupSchema from "../schemas/Group.json" with { type: "json" };
10
- import ImageSchema from "../schemas/Image.json" with { type: "json" };
11
- import OrganizationSchema from "../schemas/Organization.json" with { type: "json" };
12
- import PersonSchema from "../schemas/Person.json" with { type: "json" };
7
+ import AgentSchema from "../schemas/FoafAgent.json" with { type: "json" };
8
+ import DocumentSchema from "../schemas/FoafDocument.json" with { type: "json" };
9
+ import GroupSchema from "../schemas/FoafGroup.json" with { type: "json" };
10
+ import ImageSchema from "../schemas/FoafImage.json" with { type: "json" };
11
+ import OrganizationSchema from "../schemas/FoafOrganization.json" with { type: "json" };
12
+ import PersonSchema from "../schemas/FoafPerson.json" with { type: "json" };
13
13
  /**
14
14
  * Data Type registration for FOAF
15
15
  */
@@ -18,48 +18,40 @@ export class FoafDataTypes {
18
18
  * Register redirects for FOAF namespace to enable offline JSON-LD processing.
19
19
  */
20
20
  static registerRedirects() {
21
- JsonLdProcessor.addRedirect(/https?:\/\/xmlns.com\/foaf\/0.1\//, FoafContexts.ContextRedirect);
21
+ JsonLdProcessor.addRedirect(/https?:\/\/xmlns.com\/foaf\/0.1\//, FoafContexts.JsonLdContext);
22
22
  }
23
23
  /**
24
24
  * Register all the data types.
25
25
  */
26
26
  static registerTypes() {
27
- DataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Agent}`, () => ({
28
- context: FoafContexts.TwinContext,
29
- type: FoafTypes.Agent,
30
- defaultValue: {},
31
- jsonSchema: async () => AgentSchema
32
- }));
33
- DataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Document}`, () => ({
34
- context: FoafContexts.TwinContext,
35
- type: FoafTypes.Document,
36
- defaultValue: {},
37
- jsonSchema: async () => DocumentSchema
38
- }));
39
- DataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Group}`, () => ({
40
- context: FoafContexts.TwinContext,
41
- type: FoafTypes.Group,
42
- defaultValue: {},
43
- jsonSchema: async () => GroupSchema
44
- }));
45
- DataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Image}`, () => ({
46
- context: FoafContexts.TwinContext,
47
- type: FoafTypes.Image,
48
- defaultValue: {},
49
- jsonSchema: async () => ImageSchema
50
- }));
51
- DataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Organization}`, () => ({
52
- context: FoafContexts.TwinContext,
53
- type: FoafTypes.Organization,
54
- defaultValue: {},
55
- jsonSchema: async () => OrganizationSchema
56
- }));
57
- DataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Person}`, () => ({
58
- context: FoafContexts.TwinContext,
59
- type: FoafTypes.Person,
60
- defaultValue: {},
61
- jsonSchema: async () => PersonSchema
62
- }));
27
+ const types = [
28
+ {
29
+ type: FoafTypes.Agent,
30
+ schema: AgentSchema
31
+ },
32
+ {
33
+ type: FoafTypes.Document,
34
+ schema: DocumentSchema
35
+ },
36
+ {
37
+ type: FoafTypes.Group,
38
+ schema: GroupSchema
39
+ },
40
+ {
41
+ type: FoafTypes.Image,
42
+ schema: ImageSchema
43
+ },
44
+ {
45
+ type: FoafTypes.Organization,
46
+ schema: OrganizationSchema
47
+ },
48
+ {
49
+ type: FoafTypes.Person,
50
+ schema: PersonSchema
51
+ }
52
+ ];
53
+ DataTypeHelper.registerTypes(FoafContexts.Namespace, FoafContexts.JsonLdContext, types);
54
+ DataTypeHelper.registerTypes(FoafContexts.JsonSchemaNamespace, FoafContexts.JsonLdContext, types);
63
55
  }
64
56
  }
65
57
  //# sourceMappingURL=foafDataTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"foafDataTypes.js","sourceRoot":"","sources":["../../../src/dataTypes/foafDataTypes.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { DataTypeHandlerFactory } from \"@twin.org/data-core\";\nimport { JsonLdProcessor } from \"@twin.org/data-json-ld\";\nimport type { JSONSchema7 } from \"json-schema\";\nimport { FoafContexts } from \"../models/foafContexts.js\";\nimport { FoafTypes } from \"../models/foafTypes.js\";\nimport AgentSchema from \"../schemas/Agent.json\" with { type: \"json\" };\nimport DocumentSchema from \"../schemas/Document.json\" with { type: \"json\" };\nimport GroupSchema from \"../schemas/Group.json\" with { type: \"json\" };\nimport ImageSchema from \"../schemas/Image.json\" with { type: \"json\" };\nimport OrganizationSchema from \"../schemas/Organization.json\" with { type: \"json\" };\nimport PersonSchema from \"../schemas/Person.json\" with { type: \"json\" };\n\n/**\n * Data Type registration for FOAF\n */\nexport abstract class FoafDataTypes {\n\t/**\n\t * Register redirects for FOAF namespace to enable offline JSON-LD processing.\n\t */\n\tpublic static registerRedirects(): void {\n\t\tJsonLdProcessor.addRedirect(/https?:\\/\\/xmlns.com\\/foaf\\/0.1\\//, FoafContexts.ContextRedirect);\n\t}\n\n\t/**\n\t * Register all the data types.\n\t */\n\tpublic static registerTypes(): void {\n\t\tDataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Agent}`, () => ({\n\t\t\tcontext: FoafContexts.TwinContext,\n\t\t\ttype: FoafTypes.Agent,\n\t\t\tdefaultValue: {},\n\t\t\tjsonSchema: async () => AgentSchema as JSONSchema7\n\t\t}));\n\n\t\tDataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Document}`, () => ({\n\t\t\tcontext: FoafContexts.TwinContext,\n\t\t\ttype: FoafTypes.Document,\n\t\t\tdefaultValue: {},\n\t\t\tjsonSchema: async () => DocumentSchema as JSONSchema7\n\t\t}));\n\n\t\tDataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Group}`, () => ({\n\t\t\tcontext: FoafContexts.TwinContext,\n\t\t\ttype: FoafTypes.Group,\n\t\t\tdefaultValue: {},\n\t\t\tjsonSchema: async () => GroupSchema as JSONSchema7\n\t\t}));\n\n\t\tDataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Image}`, () => ({\n\t\t\tcontext: FoafContexts.TwinContext,\n\t\t\ttype: FoafTypes.Image,\n\t\t\tdefaultValue: {},\n\t\t\tjsonSchema: async () => ImageSchema as JSONSchema7\n\t\t}));\n\n\t\tDataTypeHandlerFactory.register(\n\t\t\t`${FoafContexts.TwinContext}/${FoafTypes.Organization}`,\n\t\t\t() => ({\n\t\t\t\tcontext: FoafContexts.TwinContext,\n\t\t\t\ttype: FoafTypes.Organization,\n\t\t\t\tdefaultValue: {},\n\t\t\t\tjsonSchema: async () => OrganizationSchema as JSONSchema7\n\t\t\t})\n\t\t);\n\n\t\tDataTypeHandlerFactory.register(`${FoafContexts.TwinContext}/${FoafTypes.Person}`, () => ({\n\t\t\tcontext: FoafContexts.TwinContext,\n\t\t\ttype: FoafTypes.Person,\n\t\t\tdefaultValue: {},\n\t\t\tjsonSchema: async () => PersonSchema as JSONSchema7\n\t\t}));\n\t}\n}\n"]}
1
+ {"version":3,"file":"foafDataTypes.js","sourceRoot":"","sources":["../../../src/dataTypes/foafDataTypes.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,WAAW,MAAM,2BAA2B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1E,OAAO,cAAc,MAAM,8BAA8B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAChF,OAAO,WAAW,MAAM,2BAA2B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1E,OAAO,WAAW,MAAM,2BAA2B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1E,OAAO,kBAAkB,MAAM,kCAAkC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACxF,OAAO,YAAY,MAAM,4BAA4B,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE5E;;GAEG;AACH,MAAM,OAAgB,aAAa;IAClC;;OAEG;IACI,MAAM,CAAC,iBAAiB;QAC9B,eAAe,CAAC,WAAW,CAAC,mCAAmC,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IAC9F,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,aAAa;QAC1B,MAAM,KAAK,GAAG;YACb;gBACC,IAAI,EAAE,SAAS,CAAC,KAAK;gBACrB,MAAM,EAAE,WAAW;aACnB;YACD;gBACC,IAAI,EAAE,SAAS,CAAC,QAAQ;gBACxB,MAAM,EAAE,cAAc;aACtB;YACD;gBACC,IAAI,EAAE,SAAS,CAAC,KAAK;gBACrB,MAAM,EAAE,WAAW;aACnB;YACD;gBACC,IAAI,EAAE,SAAS,CAAC,KAAK;gBACrB,MAAM,EAAE,WAAW;aACnB;YACD;gBACC,IAAI,EAAE,SAAS,CAAC,YAAY;gBAC5B,MAAM,EAAE,kBAAkB;aAC1B;YACD;gBACC,IAAI,EAAE,SAAS,CAAC,MAAM;gBACtB,MAAM,EAAE,YAAY;aACpB;SACD,CAAC;QAEF,cAAc,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QACxF,cAAc,CAAC,aAAa,CAC3B,YAAY,CAAC,mBAAmB,EAChC,YAAY,CAAC,aAAa,EAC1B,KAAK,CACL,CAAC;IACH,CAAC;CACD","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { DataTypeHelper } from \"@twin.org/data-core\";\nimport { JsonLdProcessor } from \"@twin.org/data-json-ld\";\nimport { FoafContexts } from \"../models/foafContexts.js\";\nimport { FoafTypes } from \"../models/foafTypes.js\";\nimport AgentSchema from \"../schemas/FoafAgent.json\" with { type: \"json\" };\nimport DocumentSchema from \"../schemas/FoafDocument.json\" with { type: \"json\" };\nimport GroupSchema from \"../schemas/FoafGroup.json\" with { type: \"json\" };\nimport ImageSchema from \"../schemas/FoafImage.json\" with { type: \"json\" };\nimport OrganizationSchema from \"../schemas/FoafOrganization.json\" with { type: \"json\" };\nimport PersonSchema from \"../schemas/FoafPerson.json\" with { type: \"json\" };\n\n/**\n * Data Type registration for FOAF\n */\nexport abstract class FoafDataTypes {\n\t/**\n\t * Register redirects for FOAF namespace to enable offline JSON-LD processing.\n\t */\n\tpublic static registerRedirects(): void {\n\t\tJsonLdProcessor.addRedirect(/https?:\\/\\/xmlns.com\\/foaf\\/0.1\\//, FoafContexts.JsonLdContext);\n\t}\n\n\t/**\n\t * Register all the data types.\n\t */\n\tpublic static registerTypes(): void {\n\t\tconst types = [\n\t\t\t{\n\t\t\t\ttype: FoafTypes.Agent,\n\t\t\t\tschema: AgentSchema\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: FoafTypes.Document,\n\t\t\t\tschema: DocumentSchema\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: FoafTypes.Group,\n\t\t\t\tschema: GroupSchema\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: FoafTypes.Image,\n\t\t\t\tschema: ImageSchema\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: FoafTypes.Organization,\n\t\t\t\tschema: OrganizationSchema\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: FoafTypes.Person,\n\t\t\t\tschema: PersonSchema\n\t\t\t}\n\t\t];\n\n\t\tDataTypeHelper.registerTypes(FoafContexts.Namespace, FoafContexts.JsonLdContext, types);\n\t\tDataTypeHelper.registerTypes(\n\t\t\tFoafContexts.JsonSchemaNamespace,\n\t\t\tFoafContexts.JsonLdContext,\n\t\t\ttypes\n\t\t);\n\t}\n}\n"]}
package/dist/es/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  // Copyright 2025 IOTA Stiftung.
2
2
  // SPDX-License-Identifier: Apache-2.0.
3
3
  export * from "./dataTypes/foafDataTypes.js";
4
- export * from "./models/IAgent.js";
5
- export * from "./models/IBaseObject.js";
6
- export * from "./models/IDocument.js";
7
- export * from "./models/IGroup.js";
8
- export * from "./models/IImage.js";
9
- export * from "./models/IOrganization.js";
10
- export * from "./models/IPerson.js";
4
+ export * from "./models/IFoafAgent.js";
5
+ export * from "./models/IFoafBaseObject.js";
6
+ export * from "./models/IFoafDocument.js";
7
+ export * from "./models/IFoafGroup.js";
8
+ export * from "./models/IFoafImage.js";
9
+ export * from "./models/IFoafOrganization.js";
10
+ export * from "./models/IFoafPerson.js";
11
11
  export * from "./models/foafContexts.js";
12
12
  export * from "./models/foafContextType.js";
13
13
  export * from "./models/foafTypes.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nexport * from \"./dataTypes/foafDataTypes.js\";\nexport * from \"./models/IAgent.js\";\nexport * from \"./models/IBaseObject.js\";\nexport * from \"./models/IDocument.js\";\nexport * from \"./models/IGroup.js\";\nexport * from \"./models/IImage.js\";\nexport * from \"./models/IOrganization.js\";\nexport * from \"./models/IPerson.js\";\nexport * from \"./models/foafContexts.js\";\nexport * from \"./models/foafContextType.js\";\nexport * from \"./models/foafTypes.js\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nexport * from \"./dataTypes/foafDataTypes.js\";\nexport * from \"./models/IFoafAgent.js\";\nexport * from \"./models/IFoafBaseObject.js\";\nexport * from \"./models/IFoafDocument.js\";\nexport * from \"./models/IFoafGroup.js\";\nexport * from \"./models/IFoafImage.js\";\nexport * from \"./models/IFoafOrganization.js\";\nexport * from \"./models/IFoafPerson.js\";\nexport * from \"./models/foafContexts.js\";\nexport * from \"./models/foafContextType.js\";\nexport * from \"./models/foafTypes.js\";\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafAgent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafAgent.js","sourceRoot":"","sources":["../../../src/models/IFoafAgent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { FoafTypes } from \"./foafTypes.js\";\nimport type { IFoafBaseObject } from \"./IFoafBaseObject.js\";\nimport type { IFoafDocument } from \"./IFoafDocument.js\";\n\n/**\n * A FOAF Agent.\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafAgent extends IFoafBaseObject {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * Type.\n\t */\n\t\"@type\":\n\t\t| typeof FoafTypes.Agent\n\t\t| typeof FoafTypes.Person\n\t\t| typeof FoafTypes.Organization\n\t\t| typeof FoafTypes.Group\n\t\t| string;\n\n\t/**\n\t * The age in years of some agent.\n\t * @see http://xmlns.com/foaf/spec/#term_age\n\t */\n\tage?: number;\n\n\t/**\n\t * Something that was made by this agent.\n\t * @see http://xmlns.com/foaf/spec/#term_made\n\t */\n\tmade?: ObjectOrArray<IJsonLdNodeObject>;\n\n\t/**\n\t * A weblog of some thing (whether person, group, company etc.).\n\t * @see http://xmlns.com/foaf/spec/#term_weblog\n\t */\n\tweblog?: IFoafDocument;\n\n\t/**\n\t * An OpenID for an agent.\n\t * @see http://xmlns.com/foaf/spec/#term_openid\n\t */\n\topenid?: IFoafDocument;\n\n\t/**\n\t * A page about a topic of interest to this person.\n\t * @see http://xmlns.com/foaf/spec/#term_interest\n\t */\n\tinterest?: IFoafDocument;\n\n\t/**\n\t * A thing of interest to this person.\n\t * @see http://xmlns.com/foaf/spec/#term_topic_interest\n\t */\n\ttopic_interest?: IJsonLdNodeObject;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafBaseObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafBaseObject.js","sourceRoot":"","sources":["../../../src/models/IFoafBaseObject.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { IFoafImage } from \"./IFoafImage.js\";\n\n/**\n * Core FOAF Properties\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafBaseObject extends IJsonLdNodeObject {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * A name for some thing.\n\t * @see http://xmlns.com/foaf/spec/#term_name\n\t */\n\tname?: string;\n\n\t/**\n\t * Title (Mr, Mrs, Ms, Dr. etc)\n\t * @see http://xmlns.com/foaf/spec/#term_title\n\t */\n\ttitle?: string;\n\n\t/**\n\t * A personal mailbox, ie. an Internet mailbox associated with exactly one owner, the first owner of this mailbox\n\t * @see http://xmlns.com/foaf/spec/#term_mbox\n\t */\n\tmbox?: string;\n\n\t/**\n\t * A homepage for some thing.\n\t * @see http://xmlns.com/foaf/spec/#term_homepage\n\t */\n\thomepage?: string;\n\n\t/**\n\t * A depiction of some thing.\n\t * @see http://xmlns.com/foaf/spec/#term_depiction\n\t */\n\tdepiction?: IFoafImage;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafDocument.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafDocument.js","sourceRoot":"","sources":["../../../src/models/IFoafDocument.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { FoafTypes } from \"./foafTypes.js\";\nimport type { IFoafBaseObject } from \"./IFoafBaseObject.js\";\n\n/**\n * A FOAF Document\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafDocument extends IFoafBaseObject {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * Type.\n\t */\n\t\"@type\": typeof FoafTypes.Document | typeof FoafTypes.Image;\n\n\t/**\n\t * A topic of some page or document.\n\t * @see http://xmlns.com/foaf/spec/#term_topic\n\t */\n\ttopic?: string;\n\n\t/**\n\t * The primary topic of some page or document.\n\t * @see http://xmlns.com/foaf/spec/#term_primaryTopic\n\t */\n\tprimaryTopic?: ObjectOrArray<IJsonLdNodeObject>;\n\n\t/**\n\t * A sha1sum hash, in hex.\n\t * @see http://xmlns.com/foaf/spec/#term_sha1sum\n\t */\n\tsha1?: string;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafGroup.js","sourceRoot":"","sources":["../../../src/models/IFoafGroup.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { FoafTypes } from \"./foafTypes.js\";\nimport type { IFoafAgent } from \"./IFoafAgent.js\";\n\n/**\n * A FOAF Group.\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafGroup extends IFoafAgent {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * Type.\n\t */\n\t\"@type\": typeof FoafTypes.Group;\n\n\t/**\n\t * Indicates a member of a Group\n\t * @see http://xmlns.com/foaf/spec/#term_member\n\t */\n\tmember?: ObjectOrArray<IFoafAgent>;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafImage.js","sourceRoot":"","sources":["../../../src/models/IFoafImage.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { FoafTypes } from \"./foafTypes.js\";\nimport type { IFoafDocument } from \"./IFoafDocument.js\";\n\n/**\n * A FOAF image.\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafImage extends IFoafDocument {\n\t/**\n\t * The LD Context.\n\t *\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * Type.\n\t */\n\t\"@type\": typeof FoafTypes.Image;\n\n\t/**\n\t * A thing depicted in this representation.\n\t * @see http://xmlns.com/foaf/spec/#term_depicts\n\t */\n\tdepicts?: IJsonLdNodeObject;\n\n\t/**\n\t * A derived thumbnail image.\n\t * @see http://xmlns.com/foaf/spec/#term_thumbnail\n\t */\n\tthumbnail?: IFoafImage;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafOrganization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafOrganization.js","sourceRoot":"","sources":["../../../src/models/IFoafOrganization.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { FoafTypes } from \"./foafTypes.js\";\nimport type { IFoafAgent } from \"./IFoafAgent.js\";\n\n/**\n * A FOAF Organization.\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafOrganization extends IFoafAgent {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * Type.\n\t */\n\t\"@type\": typeof FoafTypes.Organization;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IFoafPerson.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IFoafPerson.js","sourceRoot":"","sources":["../../../src/models/IFoafPerson.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { FoafContextType } from \"./foafContextType.js\";\nimport type { FoafTypes } from \"./foafTypes.js\";\nimport type { IFoafAgent } from \"./IFoafAgent.js\";\nimport type { IFoafImage } from \"./IFoafImage.js\";\n\n/**\n * A FOAF Person.\n * @see http://xmlns.com/foaf/0.1/\n */\nexport interface IFoafPerson extends IFoafAgent {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * Type.\n\t */\n\t\"@type\": typeof FoafTypes.Person;\n\n\t/**\n\t * The family name of some person.\n\t * @see http://xmlns.com/foaf/spec/#term_familyName\n\t */\n\tfamilyName?: string;\n\n\t/**\n\t * The given name of some person.\n\t * @see http://xmlns.com/foaf/spec/#term_givenName\n\t */\n\tgivenName?: string;\n\n\t/**\n\t * A person known by this person (indicating some level of reciprocated interaction between the parties).\n\t * @see http://xmlns.com/foaf/spec/#term_knows\n\t */\n\tknows?: ObjectOrArray<IFoafAgent>;\n\n\t/**\n\t * An image that can be used to represent some thing.\n\t * @see http://xmlns.com/foaf/spec/#term_img\n\t */\n\timg?: IFoafImage;\n\n\t/**\n\t * A short informal nickname characterizing an agent (includes login identifiers, IRC and other chat nicknames).\n\t * @see http://xmlns.com/foaf/spec/#term_nick\n\t */\n\tnick?: string;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"foafContextType.js","sourceRoot":"","sources":["../../../src/models/foafContextType.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IJsonLdContextDefinitionElement } from \"@twin.org/data-json-ld\";\nimport type { FoafContexts } from \"./foafContexts.js\";\n\n/**\n * The FOAF JSON-LD context type.\n */\nexport type FoafContextType =\n\t| typeof FoafContexts.ContextRoot\n\t| [typeof FoafContexts.ContextRoot]\n\t| [...IJsonLdContextDefinitionElement[], typeof FoafContexts.ContextRoot];\n"]}
1
+ {"version":3,"file":"foafContextType.js","sourceRoot":"","sources":["../../../src/models/foafContextType.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IJsonLdContextDefinitionElement } from \"@twin.org/data-json-ld\";\nimport type { FoafContexts } from \"./foafContexts.js\";\n\n/**\n * The FOAF JSON-LD context type.\n */\nexport type FoafContextType =\n\t| typeof FoafContexts.Context\n\t| [typeof FoafContexts.Context]\n\t| [...IJsonLdContextDefinitionElement[], typeof FoafContexts.Context];\n"]}
@@ -6,16 +6,22 @@
6
6
  // eslint-disable-next-line @typescript-eslint/naming-convention
7
7
  export const FoafContexts = {
8
8
  /**
9
- * The FOAF LD Context.
9
+ * The canonical RDF namespace URI.
10
10
  */
11
- ContextRoot: "https://xmlns.com/foaf/0.1/",
11
+ Namespace: "https://xmlns.com/foaf/0.1/",
12
12
  /**
13
- * The TWIN context for FOAF.
13
+ * The value to use in @context.
14
+ * Note: Context matches Namespace (both include trailing slash) as per FOAF specification.
15
+ * The FOAF JSON-LD context URL format includes a trailing slash.
14
16
  */
15
- TwinContext: "https://schema.twindev.org/foaf/",
17
+ Context: "https://xmlns.com/foaf/0.1/",
16
18
  /**
17
- * The TWIN context redirect for JSON-LD.
19
+ * The JSON-LD Context URL.
18
20
  */
19
- ContextRedirect: "https://schema.twindev.org/foaf/types.jsonld"
21
+ JsonLdContext: "https://schema.twindev.org/foaf/types.jsonld",
22
+ /**
23
+ * The namespace location of the hosted version of the JSON Schema.
24
+ */
25
+ JsonSchemaNamespace: "https://schema.twindev.org/foaf/"
20
26
  };
21
27
  //# sourceMappingURL=foafContexts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"foafContexts.js","sourceRoot":"","sources":["../../../src/models/foafContexts.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AAEvC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC3B;;OAEG;IACH,WAAW,EAAE,6BAA6B;IAE1C;;OAEG;IACH,WAAW,EAAE,kCAAkC;IAE/C;;OAEG;IACH,eAAe,EAAE,8CAA8C;CACtD,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\n\n/**\n * The LD Contexts concerning FOAF.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const FoafContexts = {\n\t/**\n\t * The FOAF LD Context.\n\t */\n\tContextRoot: \"https://xmlns.com/foaf/0.1/\",\n\n\t/**\n\t * The TWIN context for FOAF.\n\t */\n\tTwinContext: \"https://schema.twindev.org/foaf/\",\n\n\t/**\n\t * The TWIN context redirect for JSON-LD.\n\t */\n\tContextRedirect: \"https://schema.twindev.org/foaf/types.jsonld\"\n} as const;\n\n/**\n * The LD Contexts concerning FOAF.\n */\nexport type FoafContexts = (typeof FoafContexts)[keyof typeof FoafContexts];\n"]}
1
+ {"version":3,"file":"foafContexts.js","sourceRoot":"","sources":["../../../src/models/foafContexts.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AAEvC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC3B;;OAEG;IACH,SAAS,EAAE,6BAA6B;IAExC;;;;OAIG;IACH,OAAO,EAAE,6BAA6B;IAEtC;;OAEG;IACH,aAAa,EAAE,8CAA8C;IAE7D;;OAEG;IACH,mBAAmB,EAAE,kCAAkC;CAC9C,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\n\n/**\n * The LD Contexts concerning FOAF.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const FoafContexts = {\n\t/**\n\t * The canonical RDF namespace URI.\n\t */\n\tNamespace: \"https://xmlns.com/foaf/0.1/\",\n\n\t/**\n\t * The value to use in @context.\n\t * Note: Context matches Namespace (both include trailing slash) as per FOAF specification.\n\t * The FOAF JSON-LD context URL format includes a trailing slash.\n\t */\n\tContext: \"https://xmlns.com/foaf/0.1/\",\n\n\t/**\n\t * The JSON-LD Context URL.\n\t */\n\tJsonLdContext: \"https://schema.twindev.org/foaf/types.jsonld\",\n\n\t/**\n\t * The namespace location of the hosted version of the JSON Schema.\n\t */\n\tJsonSchemaNamespace: \"https://schema.twindev.org/foaf/\"\n} as const;\n\n/**\n * The LD Contexts concerning FOAF.\n */\nexport type FoafContexts = (typeof FoafContexts)[keyof typeof FoafContexts];\n"]}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://schema.twindev.org/foaf/Agent",
3
+ "$id": "https://schema.twindev.org/foaf/FoafAgent",
4
4
  "description": "A FOAF Agent.",
5
5
  "type": "object",
6
6
  "properties": {
@@ -107,7 +107,7 @@
107
107
  "description": "A homepage for some thing."
108
108
  },
109
109
  "depiction": {
110
- "$ref": "https://schema.twindev.org/foaf/Image",
110
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
111
111
  "description": "A depiction of some thing."
112
112
  },
113
113
  "age": {
@@ -129,15 +129,15 @@
129
129
  ]
130
130
  },
131
131
  "weblog": {
132
- "$ref": "https://schema.twindev.org/foaf/Document",
132
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
133
133
  "description": "A weblog of some thing (whether person, group, company etc.)."
134
134
  },
135
135
  "openid": {
136
- "$ref": "https://schema.twindev.org/foaf/Document",
136
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
137
137
  "description": "An OpenID for an agent."
138
138
  },
139
139
  "interest": {
140
- "$ref": "https://schema.twindev.org/foaf/Document",
140
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
141
141
  "description": "A page about a topic of interest to this person."
142
142
  },
143
143
  "topic_interest": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://schema.twindev.org/foaf/Document",
3
+ "$id": "https://schema.twindev.org/foaf/FoafDocument",
4
4
  "description": "A FOAF Document",
5
5
  "type": "object",
6
6
  "properties": {
@@ -111,7 +111,7 @@
111
111
  "description": "A homepage for some thing."
112
112
  },
113
113
  "depiction": {
114
- "$ref": "https://schema.twindev.org/foaf/Image",
114
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
115
115
  "description": "A depiction of some thing."
116
116
  },
117
117
  "topic": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://schema.twindev.org/foaf/Group",
3
+ "$id": "https://schema.twindev.org/foaf/FoafGroup",
4
4
  "description": "A FOAF Group.",
5
5
  "type": "object",
6
6
  "properties": {
@@ -108,7 +108,7 @@
108
108
  "description": "A homepage for some thing."
109
109
  },
110
110
  "depiction": {
111
- "$ref": "https://schema.twindev.org/foaf/Image",
111
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
112
  "description": "A depiction of some thing."
113
113
  },
114
114
  "age": {
@@ -130,15 +130,15 @@
130
130
  ]
131
131
  },
132
132
  "weblog": {
133
- "$ref": "https://schema.twindev.org/foaf/Document",
133
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
134
134
  "description": "A weblog of some thing (whether person, group, company etc.)."
135
135
  },
136
136
  "openid": {
137
- "$ref": "https://schema.twindev.org/foaf/Document",
137
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
138
138
  "description": "An OpenID for an agent."
139
139
  },
140
140
  "interest": {
141
- "$ref": "https://schema.twindev.org/foaf/Document",
141
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
142
142
  "description": "A page about a topic of interest to this person."
143
143
  },
144
144
  "topic_interest": {
@@ -149,12 +149,12 @@
149
149
  "description": "Object or array data type",
150
150
  "anyOf": [
151
151
  {
152
- "$ref": "https://schema.twindev.org/foaf/Agent"
152
+ "$ref": "https://schema.twindev.org/foaf/FoafAgent"
153
153
  },
154
154
  {
155
155
  "type": "array",
156
156
  "items": {
157
- "$ref": "https://schema.twindev.org/foaf/Agent"
157
+ "$ref": "https://schema.twindev.org/foaf/FoafAgent"
158
158
  }
159
159
  }
160
160
  ]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://schema.twindev.org/foaf/Image",
3
+ "$id": "https://schema.twindev.org/foaf/FoafImage",
4
4
  "description": "A FOAF image.",
5
5
  "type": "object",
6
6
  "properties": {
@@ -108,7 +108,7 @@
108
108
  "description": "A homepage for some thing."
109
109
  },
110
110
  "depiction": {
111
- "$ref": "https://schema.twindev.org/foaf/Image",
111
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
112
  "description": "A depiction of some thing."
113
113
  },
114
114
  "topic": {
@@ -138,7 +138,7 @@
138
138
  "description": "A thing depicted in this representation."
139
139
  },
140
140
  "thumbnail": {
141
- "$ref": "https://schema.twindev.org/foaf/Image",
141
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
142
142
  "description": "A derived thumbnail image."
143
143
  }
144
144
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://schema.twindev.org/foaf/Organization",
3
+ "$id": "https://schema.twindev.org/foaf/FoafOrganization",
4
4
  "description": "A FOAF Organization.",
5
5
  "type": "object",
6
6
  "properties": {
@@ -108,7 +108,7 @@
108
108
  "description": "A homepage for some thing."
109
109
  },
110
110
  "depiction": {
111
- "$ref": "https://schema.twindev.org/foaf/Image",
111
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
112
  "description": "A depiction of some thing."
113
113
  },
114
114
  "age": {
@@ -130,15 +130,15 @@
130
130
  ]
131
131
  },
132
132
  "weblog": {
133
- "$ref": "https://schema.twindev.org/foaf/Document",
133
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
134
134
  "description": "A weblog of some thing (whether person, group, company etc.)."
135
135
  },
136
136
  "openid": {
137
- "$ref": "https://schema.twindev.org/foaf/Document",
137
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
138
138
  "description": "An OpenID for an agent."
139
139
  },
140
140
  "interest": {
141
- "$ref": "https://schema.twindev.org/foaf/Document",
141
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
142
142
  "description": "A page about a topic of interest to this person."
143
143
  },
144
144
  "topic_interest": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://schema.twindev.org/foaf/Person",
3
+ "$id": "https://schema.twindev.org/foaf/FoafPerson",
4
4
  "description": "A FOAF Person.",
5
5
  "type": "object",
6
6
  "properties": {
@@ -108,7 +108,7 @@
108
108
  "description": "A homepage for some thing."
109
109
  },
110
110
  "depiction": {
111
- "$ref": "https://schema.twindev.org/foaf/Image",
111
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
112
  "description": "A depiction of some thing."
113
113
  },
114
114
  "age": {
@@ -130,15 +130,15 @@
130
130
  ]
131
131
  },
132
132
  "weblog": {
133
- "$ref": "https://schema.twindev.org/foaf/Document",
133
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
134
134
  "description": "A weblog of some thing (whether person, group, company etc.)."
135
135
  },
136
136
  "openid": {
137
- "$ref": "https://schema.twindev.org/foaf/Document",
137
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
138
138
  "description": "An OpenID for an agent."
139
139
  },
140
140
  "interest": {
141
- "$ref": "https://schema.twindev.org/foaf/Document",
141
+ "$ref": "https://schema.twindev.org/foaf/FoafDocument",
142
142
  "description": "A page about a topic of interest to this person."
143
143
  },
144
144
  "topic_interest": {
@@ -157,18 +157,18 @@
157
157
  "description": "Object or array data type",
158
158
  "anyOf": [
159
159
  {
160
- "$ref": "https://schema.twindev.org/foaf/Agent"
160
+ "$ref": "https://schema.twindev.org/foaf/FoafAgent"
161
161
  },
162
162
  {
163
163
  "type": "array",
164
164
  "items": {
165
- "$ref": "https://schema.twindev.org/foaf/Agent"
165
+ "$ref": "https://schema.twindev.org/foaf/FoafAgent"
166
166
  }
167
167
  }
168
168
  ]
169
169
  },
170
170
  "img": {
171
- "$ref": "https://schema.twindev.org/foaf/Image",
171
+ "$ref": "https://schema.twindev.org/foaf/FoafImage",
172
172
  "description": "An image that can be used to represent some thing."
173
173
  },
174
174
  "nick": {
@@ -1,11 +1,11 @@
1
1
  export * from "./dataTypes/foafDataTypes.js";
2
- export * from "./models/IAgent.js";
3
- export * from "./models/IBaseObject.js";
4
- export * from "./models/IDocument.js";
5
- export * from "./models/IGroup.js";
6
- export * from "./models/IImage.js";
7
- export * from "./models/IOrganization.js";
8
- export * from "./models/IPerson.js";
2
+ export * from "./models/IFoafAgent.js";
3
+ export * from "./models/IFoafBaseObject.js";
4
+ export * from "./models/IFoafDocument.js";
5
+ export * from "./models/IFoafGroup.js";
6
+ export * from "./models/IFoafImage.js";
7
+ export * from "./models/IFoafOrganization.js";
8
+ export * from "./models/IFoafPerson.js";
9
9
  export * from "./models/foafContexts.js";
10
10
  export * from "./models/foafContextType.js";
11
11
  export * from "./models/foafTypes.js";
@@ -2,13 +2,13 @@ import type { ObjectOrArray } from "@twin.org/core";
2
2
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
3
3
  import type { FoafContextType } from "./foafContextType.js";
4
4
  import type { FoafTypes } from "./foafTypes.js";
5
- import type { IBaseObject } from "./IBaseObject.js";
6
- import type { IDocument } from "./IDocument.js";
5
+ import type { IFoafBaseObject } from "./IFoafBaseObject.js";
6
+ import type { IFoafDocument } from "./IFoafDocument.js";
7
7
  /**
8
8
  * A FOAF Agent.
9
9
  * @see http://xmlns.com/foaf/0.1/
10
10
  */
11
- export interface IAgent extends IBaseObject {
11
+ export interface IFoafAgent extends IFoafBaseObject {
12
12
  /**
13
13
  * The LD Context.
14
14
  */
@@ -31,17 +31,17 @@ export interface IAgent extends IBaseObject {
31
31
  * A weblog of some thing (whether person, group, company etc.).
32
32
  * @see http://xmlns.com/foaf/spec/#term_weblog
33
33
  */
34
- weblog?: IDocument;
34
+ weblog?: IFoafDocument;
35
35
  /**
36
36
  * An OpenID for an agent.
37
37
  * @see http://xmlns.com/foaf/spec/#term_openid
38
38
  */
39
- openid?: IDocument;
39
+ openid?: IFoafDocument;
40
40
  /**
41
41
  * A page about a topic of interest to this person.
42
42
  * @see http://xmlns.com/foaf/spec/#term_interest
43
43
  */
44
- interest?: IDocument;
44
+ interest?: IFoafDocument;
45
45
  /**
46
46
  * A thing of interest to this person.
47
47
  * @see http://xmlns.com/foaf/spec/#term_topic_interest
@@ -1,11 +1,11 @@
1
1
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
2
  import type { FoafContextType } from "./foafContextType.js";
3
- import type { IImage } from "./IImage.js";
3
+ import type { IFoafImage } from "./IFoafImage.js";
4
4
  /**
5
5
  * Core FOAF Properties
6
6
  * @see http://xmlns.com/foaf/0.1/
7
7
  */
8
- export interface IBaseObject extends IJsonLdNodeObject {
8
+ export interface IFoafBaseObject extends IJsonLdNodeObject {
9
9
  /**
10
10
  * The LD Context.
11
11
  */
@@ -34,5 +34,5 @@ export interface IBaseObject extends IJsonLdNodeObject {
34
34
  * A depiction of some thing.
35
35
  * @see http://xmlns.com/foaf/spec/#term_depiction
36
36
  */
37
- depiction?: IImage;
37
+ depiction?: IFoafImage;
38
38
  }
@@ -2,12 +2,12 @@ import type { ObjectOrArray } from "@twin.org/core";
2
2
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
3
3
  import type { FoafContextType } from "./foafContextType.js";
4
4
  import type { FoafTypes } from "./foafTypes.js";
5
- import type { IBaseObject } from "./IBaseObject.js";
5
+ import type { IFoafBaseObject } from "./IFoafBaseObject.js";
6
6
  /**
7
7
  * A FOAF Document
8
8
  * @see http://xmlns.com/foaf/0.1/
9
9
  */
10
- export interface IDocument extends IBaseObject {
10
+ export interface IFoafDocument extends IFoafBaseObject {
11
11
  /**
12
12
  * The LD Context.
13
13
  */