index_metadb¶
IndexInfoAttributes
¶
Bases: BaseInfoAttributes
Attributes for Base URL Info endpoint for an Index Meta-Database
Source code in optimade/models/index_metadb.py
17 18 19 20 21 22 23 24 25 |
|
api_version: Annotated[SemanticVersion, StrictField(description='Presently used full version of the OPTIMADE API.\nThe version number string MUST NOT be prefixed by, e.g., "v".\nExamples: `1.0.0`, `1.0.0-rc.2`.')]
instance-attribute
¶
available_api_versions: Annotated[list[AvailableApiVersion], StrictField(description='A list of dictionaries of available API versions at other base URLs')]
instance-attribute
¶
available_endpoints: Annotated[list[str], StrictField(description='List of available endpoints (i.e., the string to be appended to the versioned base URL).')]
instance-attribute
¶
entry_types_by_format: Annotated[dict[str, list[str]], StrictField(description='Available entry endpoints as a function of output formats.')]
instance-attribute
¶
formats: Annotated[list[str], StrictField(description='List of available output formats.')] = ['json']
class-attribute
instance-attribute
¶
is_index: Annotated[bool, StrictField(description='This must be `true` since this is an index meta-database (see section Index Meta-Database).')] = True
class-attribute
instance-attribute
¶
formats_and_endpoints_must_be_valid()
¶
Source code in optimade/models/baseinfo.py
112 113 114 115 116 117 118 119 120 121 122 |
|
IndexInfoResource
¶
Bases: BaseInfoResource
Index Meta-Database Base URL Info endpoint resource
Source code in optimade/models/index_metadb.py
46 47 48 49 50 51 52 53 54 55 56 57 |
|
attributes: IndexInfoAttributes
instance-attribute
¶
id: Literal['/'] = '/'
class-attribute
instance-attribute
¶
links: Annotated[ResourceLinks | None, StrictField(description='a links object containing links related to the resource.')] = None
class-attribute
instance-attribute
¶
meta: Annotated[Meta | None, StrictField(description='a meta object containing non-standard meta-information about a resource that can not be represented as an attribute or relationship.')] = None
class-attribute
instance-attribute
¶
model_config = ConfigDict(json_schema_extra=resource_json_schema_extra)
class-attribute
instance-attribute
¶
relationships: Annotated[dict[Literal['default'], IndexRelationship] | None, StrictField(title=Relationships, description="Reference to the Links identifier object under the `links` endpoint that the provider has chosen as their 'default' OPTIMADE API database.\nA client SHOULD present this database as the first choice when an end-user chooses this provider.")]
instance-attribute
¶
type: Literal['info'] = 'info'
class-attribute
instance-attribute
¶
IndexRelationship
¶
Bases: BaseModel
Index Meta-Database relationship
Source code in optimade/models/index_metadb.py
34 35 36 37 38 39 40 41 42 43 |
|
data: Annotated[RelatedLinksResource | None, StrictField(description='[JSON API resource linkage](http://jsonapi.org/format/1.0/#document-links).\nIt MUST be either `null` or contain a single Links identifier object with the fields `id` and `type`')]
instance-attribute
¶
RelatedLinksResource
¶
Bases: BaseResource
A related Links resource object
Source code in optimade/models/index_metadb.py
28 29 30 31 |
|