GS1 · Schema
Gs1 Resolver Description File
The JSON schema for a conformant GS1 resolver description file to be placed at /.well-known/gs1resolver
LogisticsSupply ChainBelgiumStandardsTrack and TraceTraceabilityIdentifiersBarcodesFreight ForwardingRetail
Properties
| Name | Type | Description |
|---|---|---|
| resolverRoot | string | The root URL of the resolver |
| supportedPrimaryKeys | array | An array of primary keys supported by the resolver, provided as their numeric AI. The value 'all' indicates that all GS1 primary identification keys are supported |
| name | string | The name of the resolver |
| supportedLinkType | array | |
| linkTypeDefaultCanBeLinkset | boolean | Boolean flag stating whether the resolver supports the option to make 'linkset' the default linkType. |
| supportedContextValuesEnumerated | array | Enumerated list of values for context supported by this resolver |
| supportedContextValuesExternal | array | External lists of supported values for context recognised by this resolver |
| contact | object | Contact details for the resolver operator, uses VCard |
| extensionProfile | string | A link to a document that describes any extended key=value pairs supported by the resolver and/or an additional supported compression/decompression capability |
| jsonLdContextLocation | string | The location of the JSON-LD context file referenced when serving linksets as JSON |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://ref.gs1.org/standards/resolver/1.2.0/description-file-schema",
"description": "The JSON schema for a conformant GS1 resolver description file to be placed at /.well-known/gs1resolver",
"type": "object",
"properties": {
"resolverRoot": {
"description": "The root URL of the resolver",
"type": "string",
"format": "uri"
},
"supportedPrimaryKeys": {
"description": "An array of primary keys supported by the resolver, provided as their numeric AI. The value 'all' indicates that all GS1 primary identification keys are supported",
"type": "array",
"items": {
"type": "string",
"enum": ["all", "01", "8006", "8013", "8010", "410", "411", "412", "413", "414", "415", "417", "8017", "8018", "255", "00", "253", "401", "402", "8003", "8004"]
}
},
"name": {
"description": "The name of the resolver",
"type": "string"
},
"supportedLinkType": {
"type": "array",
"items": {
"properties": {
"namespace": {
"description": "A namespace URI recognised by the resolver",
"type": "string",
"format": "uri"
},
"prefix": {
"description": "The prefix assigned to this URI for use in CURIEs, including the colon",
"type": "string",
"pattern": "^[a-zA-Z_][A-Za-z0-9_-]*?:$"
}
}
}
},
"linkTypeDefaultCanBeLinkset": {
"description": "Boolean flag stating whether the resolver supports the option to make 'linkset' the default linkType.",
"type": "boolean",
"default": false
},
"supportedContextValuesEnumerated": {
"description": "Enumerated list of values for context supported by this resolver",
"type": "array",
"items": {
"type": "string"
}
},
"supportedContextValuesExternal": {
"description": "External lists of supported values for context recognised by this resolver",
"type": "array",
"items": {
"type": "object",
"properties": {
"nameOfList": {
"description": "The name of the list of values",
"type": "string"
},
"url": {
"description": "The URL of the external list",
"type": "string",
"format": "uri"
}
}
}
},
"contact": {
"description": "Contact details for the resolver operator, uses VCard",
"type": "object",
"properties": {
"fn": {
"description": "Full name",
"type": "string"
},
"hasAddress": {
"description": "Address info for the resolver operator",
"type": "object",
"properties": {
"streetAddress": {
"description": "Street address of hte operator",
"type": "string"
},
"locality": {
"description": "locality of the operator",
"type": "string"
},
"region": {
"description": "region of the operator",
"type": "string"
},
"postal-code": {
"decription": "post code of the operator",
"type": "string"
}
}
}
},
"hasTelephone": {
"description": "A contact telephone number",
"type": "string",
"format": "uri"
}
},
"extensionProfile": {
"description": "A link to a document that describes any extended key=value pairs supported by the resolver and/or an additional supported compression/decompression capability",
"type": "string",
"format": "uri"
},
"jsonLdContextLocation": {
"description": "The location of the JSON-LD context file referenced when serving linksets as JSON",
"type": "string",
"format": "uri"
}
},
"required": ["resolverRoot", "supportedPrimaryKeys"]
}