@twin.org/standards-foaf 0.0.3-next.41 → 0.0.3-next.43

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 (36) hide show
  1. package/dist/es/models/IFoafAgent.js.map +1 -1
  2. package/dist/es/models/IFoafBaseObject.js.map +1 -1
  3. package/dist/es/models/IFoafDocument.js.map +1 -1
  4. package/dist/es/models/IFoafGroup.js.map +1 -1
  5. package/dist/es/models/IFoafImage.js.map +1 -1
  6. package/dist/es/models/IFoafOrganization.js.map +1 -1
  7. package/dist/es/models/IFoafPerson.js.map +1 -1
  8. package/dist/es/schemas/FoafAgent.json +6 -78
  9. package/dist/es/schemas/FoafDocument.json +10 -82
  10. package/dist/es/schemas/FoafGroup.json +7 -79
  11. package/dist/es/schemas/FoafImage.json +7 -79
  12. package/dist/es/schemas/FoafOrganization.json +7 -79
  13. package/dist/es/schemas/FoafPerson.json +7 -79
  14. package/dist/types/models/IFoafAgent.d.ts +6 -1
  15. package/dist/types/models/IFoafBaseObject.d.ts +5 -2
  16. package/dist/types/models/IFoafDocument.d.ts +6 -1
  17. package/dist/types/models/IFoafGroup.d.ts +6 -0
  18. package/dist/types/models/IFoafImage.d.ts +6 -1
  19. package/dist/types/models/IFoafOrganization.d.ts +6 -0
  20. package/dist/types/models/IFoafPerson.d.ts +6 -0
  21. package/docs/changelog.md +14 -0
  22. package/docs/reference/index.md +6 -0
  23. package/docs/reference/interfaces/IFoafAgent.md +12 -8
  24. package/docs/reference/interfaces/IFoafBaseObject.md +6 -10
  25. package/docs/reference/interfaces/IFoafDocument.md +11 -7
  26. package/docs/reference/interfaces/IFoafGroup.md +12 -4
  27. package/docs/reference/interfaces/IFoafImage.md +11 -3
  28. package/docs/reference/interfaces/IFoafOrganization.md +12 -4
  29. package/docs/reference/interfaces/IFoafPerson.md +12 -4
  30. package/docs/reference/type-aliases/IFoafAgentWithAliases.md +12 -0
  31. package/docs/reference/type-aliases/IFoafDocumentWithAliases.md +12 -0
  32. package/docs/reference/type-aliases/IFoafGroupWithAliases.md +12 -0
  33. package/docs/reference/type-aliases/IFoafImageWithAliases.md +12 -0
  34. package/docs/reference/type-aliases/IFoafOrganizationWithAliases.md +12 -0
  35. package/docs/reference/type-aliases/IFoafPersonWithAliases.md +12 -0
  36. package/package.json +1 -1
@@ -1 +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"]}
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, JsonLdObjectWithAliases } 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\n/**\n * A FOAF Agent with FOAF-prefixed aliases for non-JSON-LD keys.\n * This allows using either prefixed aliases (e.g., \"foaf:name\") when defining a FOAF Agent.\n */\nexport type IFoafAgentWithAliases<T extends string = \"foaf\"> = JsonLdObjectWithAliases<\n\tIFoafAgent,\n\tT\n>;\n"]}
@@ -1 +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"]}
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 { 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 {\n\t/**\n\t * The LD Context.\n\t */\n\t\"@context\"?: FoafContextType;\n\n\t/**\n\t * The unique identifier for the FOAF object.\n\t */\n\t\"@id\"?: string;\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"]}
@@ -1 +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"]}
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, JsonLdObjectWithAliases } 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\n/**\n * A FOAF Document with FOAF-prefixed aliases for non-JSON-LD keys.\n * This allows using either prefixed aliases (e.g., \"foaf:name\") when defining a FOAF Document.\n */\nexport type IFoafDocumentWithAliases<T extends string = \"foaf\"> = JsonLdObjectWithAliases<\n\tIFoafDocument,\n\tT\n>;\n"]}
@@ -1 +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"]}
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 { JsonLdObjectWithAliases } from \"@twin.org/data-json-ld\";\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\n/**\n * A FOAF Group with FOAF-prefixed aliases for non-JSON-LD keys.\n * This allows using either prefixed aliases (e.g., \"foaf:name\") when defining a FOAF Group.\n */\nexport type IFoafGroupWithAliases<T extends string = \"foaf\"> = JsonLdObjectWithAliases<\n\tIFoafGroup,\n\tT\n>;\n"]}
@@ -1 +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"]}
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, JsonLdObjectWithAliases } 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\n/**\n * A FOAF Image with FOAF-prefixed aliases for non-JSON-LD keys.\n * This allows using either prefixed aliases (e.g., \"foaf:name\") when defining a FOAF Image.\n */\nexport type IFoafImageWithAliases<T extends string = \"foaf\"> = JsonLdObjectWithAliases<\n\tIFoafImage,\n\tT\n>;\n"]}
@@ -1 +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"]}
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 { JsonLdObjectWithAliases } from \"@twin.org/data-json-ld\";\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\n/**\n * A FOAF Organization with FOAF-prefixed aliases for non-JSON-LD keys.\n * This allows using either prefixed aliases (e.g., \"foaf:name\") when defining a FOAF Organization.\n */\nexport type IFoafOrganizationWithAliases<T extends string = \"foaf\"> = JsonLdObjectWithAliases<\n\tIFoafOrganization,\n\tT\n>;\n"]}
@@ -1 +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
+ {"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 { JsonLdObjectWithAliases } from \"@twin.org/data-json-ld\";\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\n/**\n * A FOAF Person with FOAF-prefixed aliases for non-JSON-LD keys.\n * This allows using either prefixed aliases (e.g., \"foaf:name\") when defining a FOAF Person.\n */\nexport type IFoafPersonWithAliases<T extends string = \"foaf\"> = JsonLdObjectWithAliases<\n\tIFoafPerson,\n\tT\n>;\n"]}
@@ -36,59 +36,8 @@
36
36
  ]
37
37
  },
38
38
  "@id": {
39
- "anyOf": [
40
- {
41
- "type": "string"
42
- },
43
- {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- }
49
- ]
50
- },
51
- "@included": {
52
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
53
- },
54
- "@graph": {
55
- "anyOf": [
56
- {
57
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
58
- },
59
- {
60
- "type": "array",
61
- "items": {
62
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
63
- }
64
- }
65
- ]
66
- },
67
- "@nest": {
68
- "anyOf": [
69
- {
70
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
71
- },
72
- {
73
- "type": "array",
74
- "items": {
75
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
76
- }
77
- }
78
- ]
79
- },
80
- "@type": {
81
39
  "type": "string",
82
- "description": "Type."
83
- },
84
- "@reverse": {
85
- "type": "object",
86
- "additionalProperties": {
87
- "type": "string"
88
- }
89
- },
90
- "@index": {
91
- "type": "string"
40
+ "description": "The unique identifier for the FOAF object."
92
41
  },
93
42
  "name": {
94
43
  "type": "string",
@@ -110,6 +59,10 @@
110
59
  "$ref": "https://schema.twindev.org/foaf/FoafImage",
111
60
  "description": "A depiction of some thing."
112
61
  },
62
+ "@type": {
63
+ "type": "string",
64
+ "description": "Type."
65
+ },
113
66
  "age": {
114
67
  "type": "number",
115
68
  "description": "The age in years of some agent."
@@ -147,30 +100,5 @@
147
100
  },
148
101
  "required": [
149
102
  "@type"
150
- ],
151
- "additionalProperties": {
152
- "anyOf": [
153
- {
154
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
155
- },
156
- {
157
- "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
158
- },
159
- {
160
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
161
- },
162
- {
163
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
164
- },
165
- {
166
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
167
- },
168
- {
169
- "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
170
- },
171
- {
172
- "type": "array"
173
- }
174
- ]
175
- }
103
+ ]
176
104
  }
@@ -36,63 +36,8 @@
36
36
  ]
37
37
  },
38
38
  "@id": {
39
- "anyOf": [
40
- {
41
- "type": "string"
42
- },
43
- {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- }
49
- ]
50
- },
51
- "@included": {
52
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
53
- },
54
- "@graph": {
55
- "anyOf": [
56
- {
57
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
58
- },
59
- {
60
- "type": "array",
61
- "items": {
62
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
63
- }
64
- }
65
- ]
66
- },
67
- "@nest": {
68
- "anyOf": [
69
- {
70
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
71
- },
72
- {
73
- "type": "array",
74
- "items": {
75
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
76
- }
77
- }
78
- ]
79
- },
80
- "@type": {
81
39
  "type": "string",
82
- "enum": [
83
- "Document",
84
- "Image"
85
- ],
86
- "description": "Type."
87
- },
88
- "@reverse": {
89
- "type": "object",
90
- "additionalProperties": {
91
- "type": "string"
92
- }
93
- },
94
- "@index": {
95
- "type": "string"
40
+ "description": "The unique identifier for the FOAF object."
96
41
  },
97
42
  "name": {
98
43
  "type": "string",
@@ -114,6 +59,14 @@
114
59
  "$ref": "https://schema.twindev.org/foaf/FoafImage",
115
60
  "description": "A depiction of some thing."
116
61
  },
62
+ "@type": {
63
+ "type": "string",
64
+ "enum": [
65
+ "Document",
66
+ "Image"
67
+ ],
68
+ "description": "Type."
69
+ },
117
70
  "topic": {
118
71
  "type": "string",
119
72
  "description": "A topic of some page or document."
@@ -139,30 +92,5 @@
139
92
  },
140
93
  "required": [
141
94
  "@type"
142
- ],
143
- "additionalProperties": {
144
- "anyOf": [
145
- {
146
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
147
- },
148
- {
149
- "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
150
- },
151
- {
152
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
153
- },
154
- {
155
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
156
- },
157
- {
158
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
159
- },
160
- {
161
- "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
162
- },
163
- {
164
- "type": "array"
165
- }
166
- ]
167
- }
95
+ ]
168
96
  }
@@ -36,60 +36,8 @@
36
36
  ]
37
37
  },
38
38
  "@id": {
39
- "anyOf": [
40
- {
41
- "type": "string"
42
- },
43
- {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- }
49
- ]
50
- },
51
- "@included": {
52
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
53
- },
54
- "@graph": {
55
- "anyOf": [
56
- {
57
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
58
- },
59
- {
60
- "type": "array",
61
- "items": {
62
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
63
- }
64
- }
65
- ]
66
- },
67
- "@nest": {
68
- "anyOf": [
69
- {
70
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
71
- },
72
- {
73
- "type": "array",
74
- "items": {
75
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
76
- }
77
- }
78
- ]
79
- },
80
- "@type": {
81
39
  "type": "string",
82
- "const": "Group",
83
- "description": "Type."
84
- },
85
- "@reverse": {
86
- "type": "object",
87
- "additionalProperties": {
88
- "type": "string"
89
- }
90
- },
91
- "@index": {
92
- "type": "string"
40
+ "description": "The unique identifier for the FOAF object."
93
41
  },
94
42
  "name": {
95
43
  "type": "string",
@@ -111,6 +59,11 @@
111
59
  "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
60
  "description": "A depiction of some thing."
113
61
  },
62
+ "@type": {
63
+ "type": "string",
64
+ "const": "Group",
65
+ "description": "Type."
66
+ },
114
67
  "age": {
115
68
  "type": "number",
116
69
  "description": "The age in years of some agent."
@@ -162,30 +115,5 @@
162
115
  },
163
116
  "required": [
164
117
  "@type"
165
- ],
166
- "additionalProperties": {
167
- "anyOf": [
168
- {
169
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
170
- },
171
- {
172
- "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
173
- },
174
- {
175
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
176
- },
177
- {
178
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
179
- },
180
- {
181
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
182
- },
183
- {
184
- "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
185
- },
186
- {
187
- "type": "array"
188
- }
189
- ]
190
- }
118
+ ]
191
119
  }
@@ -36,60 +36,8 @@
36
36
  ]
37
37
  },
38
38
  "@id": {
39
- "anyOf": [
40
- {
41
- "type": "string"
42
- },
43
- {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- }
49
- ]
50
- },
51
- "@included": {
52
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
53
- },
54
- "@graph": {
55
- "anyOf": [
56
- {
57
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
58
- },
59
- {
60
- "type": "array",
61
- "items": {
62
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
63
- }
64
- }
65
- ]
66
- },
67
- "@nest": {
68
- "anyOf": [
69
- {
70
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
71
- },
72
- {
73
- "type": "array",
74
- "items": {
75
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
76
- }
77
- }
78
- ]
79
- },
80
- "@type": {
81
39
  "type": "string",
82
- "const": "Image",
83
- "description": "Type."
84
- },
85
- "@reverse": {
86
- "type": "object",
87
- "additionalProperties": {
88
- "type": "string"
89
- }
90
- },
91
- "@index": {
92
- "type": "string"
40
+ "description": "The unique identifier for the FOAF object."
93
41
  },
94
42
  "name": {
95
43
  "type": "string",
@@ -111,6 +59,11 @@
111
59
  "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
60
  "description": "A depiction of some thing."
113
61
  },
62
+ "@type": {
63
+ "type": "string",
64
+ "const": "Image",
65
+ "description": "Type."
66
+ },
114
67
  "topic": {
115
68
  "type": "string",
116
69
  "description": "A topic of some page or document."
@@ -144,30 +97,5 @@
144
97
  },
145
98
  "required": [
146
99
  "@type"
147
- ],
148
- "additionalProperties": {
149
- "anyOf": [
150
- {
151
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
152
- },
153
- {
154
- "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
155
- },
156
- {
157
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
158
- },
159
- {
160
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
161
- },
162
- {
163
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
164
- },
165
- {
166
- "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
167
- },
168
- {
169
- "type": "array"
170
- }
171
- ]
172
- }
100
+ ]
173
101
  }
@@ -36,60 +36,8 @@
36
36
  ]
37
37
  },
38
38
  "@id": {
39
- "anyOf": [
40
- {
41
- "type": "string"
42
- },
43
- {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- }
49
- ]
50
- },
51
- "@included": {
52
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
53
- },
54
- "@graph": {
55
- "anyOf": [
56
- {
57
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
58
- },
59
- {
60
- "type": "array",
61
- "items": {
62
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
63
- }
64
- }
65
- ]
66
- },
67
- "@nest": {
68
- "anyOf": [
69
- {
70
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
71
- },
72
- {
73
- "type": "array",
74
- "items": {
75
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
76
- }
77
- }
78
- ]
79
- },
80
- "@type": {
81
39
  "type": "string",
82
- "const": "Organization",
83
- "description": "Type."
84
- },
85
- "@reverse": {
86
- "type": "object",
87
- "additionalProperties": {
88
- "type": "string"
89
- }
90
- },
91
- "@index": {
92
- "type": "string"
40
+ "description": "The unique identifier for the FOAF object."
93
41
  },
94
42
  "name": {
95
43
  "type": "string",
@@ -111,6 +59,11 @@
111
59
  "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
60
  "description": "A depiction of some thing."
113
61
  },
62
+ "@type": {
63
+ "type": "string",
64
+ "const": "Organization",
65
+ "description": "Type."
66
+ },
114
67
  "age": {
115
68
  "type": "number",
116
69
  "description": "The age in years of some agent."
@@ -148,30 +101,5 @@
148
101
  },
149
102
  "required": [
150
103
  "@type"
151
- ],
152
- "additionalProperties": {
153
- "anyOf": [
154
- {
155
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
156
- },
157
- {
158
- "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
159
- },
160
- {
161
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
162
- },
163
- {
164
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
165
- },
166
- {
167
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
168
- },
169
- {
170
- "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
171
- },
172
- {
173
- "type": "array"
174
- }
175
- ]
176
- }
104
+ ]
177
105
  }
@@ -36,60 +36,8 @@
36
36
  ]
37
37
  },
38
38
  "@id": {
39
- "anyOf": [
40
- {
41
- "type": "string"
42
- },
43
- {
44
- "type": "array",
45
- "items": {
46
- "type": "string"
47
- }
48
- }
49
- ]
50
- },
51
- "@included": {
52
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
53
- },
54
- "@graph": {
55
- "anyOf": [
56
- {
57
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
58
- },
59
- {
60
- "type": "array",
61
- "items": {
62
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
63
- }
64
- }
65
- ]
66
- },
67
- "@nest": {
68
- "anyOf": [
69
- {
70
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
71
- },
72
- {
73
- "type": "array",
74
- "items": {
75
- "$ref": "https://schema.twindev.org/json-ld/JsonLdJsonObject"
76
- }
77
- }
78
- ]
79
- },
80
- "@type": {
81
39
  "type": "string",
82
- "const": "Person",
83
- "description": "Type."
84
- },
85
- "@reverse": {
86
- "type": "object",
87
- "additionalProperties": {
88
- "type": "string"
89
- }
90
- },
91
- "@index": {
92
- "type": "string"
40
+ "description": "The unique identifier for the FOAF object."
93
41
  },
94
42
  "name": {
95
43
  "type": "string",
@@ -111,6 +59,11 @@
111
59
  "$ref": "https://schema.twindev.org/foaf/FoafImage",
112
60
  "description": "A depiction of some thing."
113
61
  },
62
+ "@type": {
63
+ "type": "string",
64
+ "const": "Person",
65
+ "description": "Type."
66
+ },
114
67
  "age": {
115
68
  "type": "number",
116
69
  "description": "The age in years of some agent."
@@ -178,30 +131,5 @@
178
131
  },
179
132
  "required": [
180
133
  "@type"
181
- ],
182
- "additionalProperties": {
183
- "anyOf": [
184
- {
185
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodePrimitive"
186
- },
187
- {
188
- "$ref": "https://schema.twindev.org/json-ld/JsonLdLanguageMap"
189
- },
190
- {
191
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIndexMap"
192
- },
193
- {
194
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIncludedBlock"
195
- },
196
- {
197
- "$ref": "https://schema.twindev.org/json-ld/JsonLdIdMap"
198
- },
199
- {
200
- "$ref": "https://schema.twindev.org/json-ld/JsonLdTypeMap"
201
- },
202
- {
203
- "type": "array"
204
- }
205
- ]
206
- }
134
+ ]
207
135
  }
@@ -1,5 +1,5 @@
1
1
  import type { ObjectOrArray } from "@twin.org/core";
2
- import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
+ import type { IJsonLdNodeObject, JsonLdObjectWithAliases } from "@twin.org/data-json-ld";
3
3
  import type { FoafContextType } from "./foafContextType.js";
4
4
  import type { FoafTypes } from "./foafTypes.js";
5
5
  import type { IFoafBaseObject } from "./IFoafBaseObject.js";
@@ -48,3 +48,8 @@ export interface IFoafAgent extends IFoafBaseObject {
48
48
  */
49
49
  topic_interest?: IJsonLdNodeObject;
50
50
  }
51
+ /**
52
+ * A FOAF Agent with FOAF-prefixed aliases for non-JSON-LD keys.
53
+ * This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Agent.
54
+ */
55
+ export type IFoafAgentWithAliases<T extends string = "foaf"> = JsonLdObjectWithAliases<IFoafAgent, T>;
@@ -1,15 +1,18 @@
1
- import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
1
  import type { FoafContextType } from "./foafContextType.js";
3
2
  import type { IFoafImage } from "./IFoafImage.js";
4
3
  /**
5
4
  * Core FOAF Properties
6
5
  * @see http://xmlns.com/foaf/0.1/
7
6
  */
8
- export interface IFoafBaseObject extends IJsonLdNodeObject {
7
+ export interface IFoafBaseObject {
9
8
  /**
10
9
  * The LD Context.
11
10
  */
12
11
  "@context"?: FoafContextType;
12
+ /**
13
+ * The unique identifier for the FOAF object.
14
+ */
15
+ "@id"?: string;
13
16
  /**
14
17
  * A name for some thing.
15
18
  * @see http://xmlns.com/foaf/spec/#term_name
@@ -1,5 +1,5 @@
1
1
  import type { ObjectOrArray } from "@twin.org/core";
2
- import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
+ import type { IJsonLdNodeObject, JsonLdObjectWithAliases } from "@twin.org/data-json-ld";
3
3
  import type { FoafContextType } from "./foafContextType.js";
4
4
  import type { FoafTypes } from "./foafTypes.js";
5
5
  import type { IFoafBaseObject } from "./IFoafBaseObject.js";
@@ -32,3 +32,8 @@ export interface IFoafDocument extends IFoafBaseObject {
32
32
  */
33
33
  sha1?: string;
34
34
  }
35
+ /**
36
+ * A FOAF Document with FOAF-prefixed aliases for non-JSON-LD keys.
37
+ * This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Document.
38
+ */
39
+ export type IFoafDocumentWithAliases<T extends string = "foaf"> = JsonLdObjectWithAliases<IFoafDocument, T>;
@@ -1,4 +1,5 @@
1
1
  import type { ObjectOrArray } from "@twin.org/core";
2
+ import type { JsonLdObjectWithAliases } from "@twin.org/data-json-ld";
2
3
  import type { FoafContextType } from "./foafContextType.js";
3
4
  import type { FoafTypes } from "./foafTypes.js";
4
5
  import type { IFoafAgent } from "./IFoafAgent.js";
@@ -21,3 +22,8 @@ export interface IFoafGroup extends IFoafAgent {
21
22
  */
22
23
  member?: ObjectOrArray<IFoafAgent>;
23
24
  }
25
+ /**
26
+ * A FOAF Group with FOAF-prefixed aliases for non-JSON-LD keys.
27
+ * This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Group.
28
+ */
29
+ export type IFoafGroupWithAliases<T extends string = "foaf"> = JsonLdObjectWithAliases<IFoafGroup, T>;
@@ -1,4 +1,4 @@
1
- import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
1
+ import type { IJsonLdNodeObject, JsonLdObjectWithAliases } from "@twin.org/data-json-ld";
2
2
  import type { FoafContextType } from "./foafContextType.js";
3
3
  import type { FoafTypes } from "./foafTypes.js";
4
4
  import type { IFoafDocument } from "./IFoafDocument.js";
@@ -27,3 +27,8 @@ export interface IFoafImage extends IFoafDocument {
27
27
  */
28
28
  thumbnail?: IFoafImage;
29
29
  }
30
+ /**
31
+ * A FOAF Image with FOAF-prefixed aliases for non-JSON-LD keys.
32
+ * This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Image.
33
+ */
34
+ export type IFoafImageWithAliases<T extends string = "foaf"> = JsonLdObjectWithAliases<IFoafImage, T>;
@@ -1,3 +1,4 @@
1
+ import type { JsonLdObjectWithAliases } from "@twin.org/data-json-ld";
1
2
  import type { FoafContextType } from "./foafContextType.js";
2
3
  import type { FoafTypes } from "./foafTypes.js";
3
4
  import type { IFoafAgent } from "./IFoafAgent.js";
@@ -15,3 +16,8 @@ export interface IFoafOrganization extends IFoafAgent {
15
16
  */
16
17
  "@type": typeof FoafTypes.Organization;
17
18
  }
19
+ /**
20
+ * A FOAF Organization with FOAF-prefixed aliases for non-JSON-LD keys.
21
+ * This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Organization.
22
+ */
23
+ export type IFoafOrganizationWithAliases<T extends string = "foaf"> = JsonLdObjectWithAliases<IFoafOrganization, T>;
@@ -1,4 +1,5 @@
1
1
  import type { ObjectOrArray } from "@twin.org/core";
2
+ import type { JsonLdObjectWithAliases } from "@twin.org/data-json-ld";
2
3
  import type { FoafContextType } from "./foafContextType.js";
3
4
  import type { FoafTypes } from "./foafTypes.js";
4
5
  import type { IFoafAgent } from "./IFoafAgent.js";
@@ -42,3 +43,8 @@ export interface IFoafPerson extends IFoafAgent {
42
43
  */
43
44
  nick?: string;
44
45
  }
46
+ /**
47
+ * A FOAF Person with FOAF-prefixed aliases for non-JSON-LD keys.
48
+ * This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Person.
49
+ */
50
+ export type IFoafPersonWithAliases<T extends string = "foaf"> = JsonLdObjectWithAliases<IFoafPerson, T>;
package/docs/changelog.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.3-next.43](https://github.com/twinfoundation/standards/compare/standards-foaf-v0.0.3-next.42...standards-foaf-v0.0.3-next.43) (2026-02-25)
4
+
5
+
6
+ ### Features
7
+
8
+ * update schemas to support additional properties ([4679e21](https://github.com/twinfoundation/standards/commit/4679e21728a54cb587f120874841c3d1ed3771de))
9
+
10
+ ## [0.0.3-next.42](https://github.com/twinfoundation/standards/compare/standards-foaf-v0.0.3-next.41...standards-foaf-v0.0.3-next.42) (2026-02-25)
11
+
12
+
13
+ ### Features
14
+
15
+ * remove IJsonLdNodeObject base interfaces ([#172](https://github.com/twinfoundation/standards/issues/172)) ([8ff8d7a](https://github.com/twinfoundation/standards/commit/8ff8d7a2892d626879b76ba5da912469ff899954))
16
+
3
17
  ## [0.0.3-next.41](https://github.com/twinfoundation/standards/compare/standards-foaf-v0.0.3-next.40...standards-foaf-v0.0.3-next.41) (2026-02-23)
4
18
 
5
19
 
@@ -16,6 +16,12 @@
16
16
 
17
17
  ## Type Aliases
18
18
 
19
+ - [IFoafAgentWithAliases](type-aliases/IFoafAgentWithAliases.md)
20
+ - [IFoafDocumentWithAliases](type-aliases/IFoafDocumentWithAliases.md)
21
+ - [IFoafGroupWithAliases](type-aliases/IFoafGroupWithAliases.md)
22
+ - [IFoafImageWithAliases](type-aliases/IFoafImageWithAliases.md)
23
+ - [IFoafOrganizationWithAliases](type-aliases/IFoafOrganizationWithAliases.md)
24
+ - [IFoafPersonWithAliases](type-aliases/IFoafPersonWithAliases.md)
19
25
  - [FoafContextType](type-aliases/FoafContextType.md)
20
26
  - [FoafContexts](type-aliases/FoafContexts.md)
21
27
  - [FoafTypes](type-aliases/FoafTypes.md)
@@ -16,10 +16,6 @@ http://xmlns.com/foaf/0.1/
16
16
  - [`IFoafOrganization`](IFoafOrganization.md)
17
17
  - [`IFoafPerson`](IFoafPerson.md)
18
18
 
19
- ## Indexable
20
-
21
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
22
-
23
19
  ## Properties
24
20
 
25
21
  ### @context?
@@ -40,10 +36,6 @@ The LD Context.
40
36
 
41
37
  Type.
42
38
 
43
- #### Overrides
44
-
45
- `IFoafBaseObject.@type`
46
-
47
39
  ***
48
40
 
49
41
  ### age?
@@ -118,6 +110,18 @@ http://xmlns.com/foaf/spec/#term_topic_interest
118
110
 
119
111
  ***
120
112
 
113
+ ### @id?
114
+
115
+ > `optional` **@id**: `string`
116
+
117
+ The unique identifier for the FOAF object.
118
+
119
+ #### Inherited from
120
+
121
+ [`IFoafBaseObject`](IFoafBaseObject.md).[`@id`](IFoafBaseObject.md#id)
122
+
123
+ ***
124
+
121
125
  ### name?
122
126
 
123
127
  > `optional` **name**: `string`
@@ -6,19 +6,11 @@ Core FOAF Properties
6
6
 
7
7
  http://xmlns.com/foaf/0.1/
8
8
 
9
- ## Extends
10
-
11
- - `IJsonLdNodeObject`
12
-
13
9
  ## Extended by
14
10
 
15
11
  - [`IFoafAgent`](IFoafAgent.md)
16
12
  - [`IFoafDocument`](IFoafDocument.md)
17
13
 
18
- ## Indexable
19
-
20
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
21
-
22
14
  ## Properties
23
15
 
24
16
  ### @context?
@@ -27,9 +19,13 @@ http://xmlns.com/foaf/0.1/
27
19
 
28
20
  The LD Context.
29
21
 
30
- #### Overrides
22
+ ***
23
+
24
+ ### @id?
25
+
26
+ > `optional` **@id**: `string`
31
27
 
32
- `IJsonLdNodeObject.@context`
28
+ The unique identifier for the FOAF object.
33
29
 
34
30
  ***
35
31
 
@@ -14,11 +14,19 @@ http://xmlns.com/foaf/0.1/
14
14
 
15
15
  - [`IFoafImage`](IFoafImage.md)
16
16
 
17
- ## Indexable
17
+ ## Properties
18
18
 
19
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
19
+ ### @id?
20
20
 
21
- ## Properties
21
+ > `optional` **@id**: `string`
22
+
23
+ The unique identifier for the FOAF object.
24
+
25
+ #### Inherited from
26
+
27
+ [`IFoafBaseObject`](IFoafBaseObject.md).[`@id`](IFoafBaseObject.md#id)
28
+
29
+ ***
22
30
 
23
31
  ### name?
24
32
 
@@ -118,10 +126,6 @@ The LD Context.
118
126
 
119
127
  Type.
120
128
 
121
- #### Overrides
122
-
123
- `IFoafBaseObject.@type`
124
-
125
129
  ***
126
130
 
127
131
  ### topic?
@@ -10,10 +10,6 @@ http://xmlns.com/foaf/0.1/
10
10
 
11
11
  - [`IFoafAgent`](IFoafAgent.md)
12
12
 
13
- ## Indexable
14
-
15
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
16
-
17
13
  ## Properties
18
14
 
19
15
  ### age?
@@ -112,6 +108,18 @@ http://xmlns.com/foaf/spec/#term_topic_interest
112
108
 
113
109
  ***
114
110
 
111
+ ### @id?
112
+
113
+ > `optional` **@id**: `string`
114
+
115
+ The unique identifier for the FOAF object.
116
+
117
+ #### Inherited from
118
+
119
+ [`IFoafAgent`](IFoafAgent.md).[`@id`](IFoafAgent.md#id)
120
+
121
+ ***
122
+
115
123
  ### name?
116
124
 
117
125
  > `optional` **name**: `string`
@@ -10,11 +10,19 @@ http://xmlns.com/foaf/0.1/
10
10
 
11
11
  - [`IFoafDocument`](IFoafDocument.md)
12
12
 
13
- ## Indexable
13
+ ## Properties
14
14
 
15
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
15
+ ### @id?
16
16
 
17
- ## Properties
17
+ > `optional` **@id**: `string`
18
+
19
+ The unique identifier for the FOAF object.
20
+
21
+ #### Inherited from
22
+
23
+ [`IFoafDocument`](IFoafDocument.md).[`@id`](IFoafDocument.md#id)
24
+
25
+ ***
18
26
 
19
27
  ### name?
20
28
 
@@ -10,10 +10,6 @@ http://xmlns.com/foaf/0.1/
10
10
 
11
11
  - [`IFoafAgent`](IFoafAgent.md)
12
12
 
13
- ## Indexable
14
-
15
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
16
-
17
13
  ## Properties
18
14
 
19
15
  ### age?
@@ -112,6 +108,18 @@ http://xmlns.com/foaf/spec/#term_topic_interest
112
108
 
113
109
  ***
114
110
 
111
+ ### @id?
112
+
113
+ > `optional` **@id**: `string`
114
+
115
+ The unique identifier for the FOAF object.
116
+
117
+ #### Inherited from
118
+
119
+ [`IFoafAgent`](IFoafAgent.md).[`@id`](IFoafAgent.md#id)
120
+
121
+ ***
122
+
115
123
  ### name?
116
124
 
117
125
  > `optional` **name**: `string`
@@ -10,10 +10,6 @@ http://xmlns.com/foaf/0.1/
10
10
 
11
11
  - [`IFoafAgent`](IFoafAgent.md)
12
12
 
13
- ## Indexable
14
-
15
- \[`key`: `string`\]: `string` \| `number` \| `boolean` \| `string`[] \| `IJsonLdContextDefinition` \| `IJsonLdNodeObject` \| `IJsonLdGraphObject` \| `object` & `object` \| `object` & `object` \| `object` & `object` \| `IJsonLdListObject` \| `IJsonLdSetObject` \| `IJsonLdNodePrimitive`[] \| `IJsonLdLanguageMap` \| `IJsonLdIndexMap` \| `IJsonLdNodeObject`[] \| `IJsonLdIdMap` \| `IJsonLdTypeMap` \| `IJsonLdContextDefinitionElement`[] \| `IJsonLdJsonObject` \| `IJsonLdJsonObject`[] \| \{\[`key`: `string`\]: `string`; \} \| `null` \| `undefined`
16
-
17
13
  ## Properties
18
14
 
19
15
  ### age?
@@ -112,6 +108,18 @@ http://xmlns.com/foaf/spec/#term_topic_interest
112
108
 
113
109
  ***
114
110
 
111
+ ### @id?
112
+
113
+ > `optional` **@id**: `string`
114
+
115
+ The unique identifier for the FOAF object.
116
+
117
+ #### Inherited from
118
+
119
+ [`IFoafAgent`](IFoafAgent.md).[`@id`](IFoafAgent.md#id)
120
+
121
+ ***
122
+
115
123
  ### name?
116
124
 
117
125
  > `optional` **name**: `string`
@@ -0,0 +1,12 @@
1
+ # Type Alias: IFoafAgentWithAliases\<T\>
2
+
3
+ > **IFoafAgentWithAliases**\<`T`\> = `JsonLdObjectWithAliases`\<[`IFoafAgent`](../interfaces/IFoafAgent.md), `T`\>
4
+
5
+ A FOAF Agent with FOAF-prefixed aliases for non-JSON-LD keys.
6
+ This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Agent.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` *extends* `string` = `"foaf"`
@@ -0,0 +1,12 @@
1
+ # Type Alias: IFoafDocumentWithAliases\<T\>
2
+
3
+ > **IFoafDocumentWithAliases**\<`T`\> = `JsonLdObjectWithAliases`\<[`IFoafDocument`](../interfaces/IFoafDocument.md), `T`\>
4
+
5
+ A FOAF Document with FOAF-prefixed aliases for non-JSON-LD keys.
6
+ This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Document.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` *extends* `string` = `"foaf"`
@@ -0,0 +1,12 @@
1
+ # Type Alias: IFoafGroupWithAliases\<T\>
2
+
3
+ > **IFoafGroupWithAliases**\<`T`\> = `JsonLdObjectWithAliases`\<[`IFoafGroup`](../interfaces/IFoafGroup.md), `T`\>
4
+
5
+ A FOAF Group with FOAF-prefixed aliases for non-JSON-LD keys.
6
+ This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Group.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` *extends* `string` = `"foaf"`
@@ -0,0 +1,12 @@
1
+ # Type Alias: IFoafImageWithAliases\<T\>
2
+
3
+ > **IFoafImageWithAliases**\<`T`\> = `JsonLdObjectWithAliases`\<[`IFoafImage`](../interfaces/IFoafImage.md), `T`\>
4
+
5
+ A FOAF Image with FOAF-prefixed aliases for non-JSON-LD keys.
6
+ This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Image.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` *extends* `string` = `"foaf"`
@@ -0,0 +1,12 @@
1
+ # Type Alias: IFoafOrganizationWithAliases\<T\>
2
+
3
+ > **IFoafOrganizationWithAliases**\<`T`\> = `JsonLdObjectWithAliases`\<[`IFoafOrganization`](../interfaces/IFoafOrganization.md), `T`\>
4
+
5
+ A FOAF Organization with FOAF-prefixed aliases for non-JSON-LD keys.
6
+ This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Organization.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` *extends* `string` = `"foaf"`
@@ -0,0 +1,12 @@
1
+ # Type Alias: IFoafPersonWithAliases\<T\>
2
+
3
+ > **IFoafPersonWithAliases**\<`T`\> = `JsonLdObjectWithAliases`\<[`IFoafPerson`](../interfaces/IFoafPerson.md), `T`\>
4
+
5
+ A FOAF Person with FOAF-prefixed aliases for non-JSON-LD keys.
6
+ This allows using either prefixed aliases (e.g., "foaf:name") when defining a FOAF Person.
7
+
8
+ ## Type Parameters
9
+
10
+ ### T
11
+
12
+ `T` *extends* `string` = `"foaf"`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/standards-foaf",
3
- "version": "0.0.3-next.41",
3
+ "version": "0.0.3-next.43",
4
4
  "description": "Models which define the structure of FOAF",
5
5
  "repository": {
6
6
  "type": "git",