Please note that the Service extension is still work in progress. Please follow the issue tracker here.
Generic service
A Service is a type of software application or component that provides specific functionality or operations over a network, often via the internet, and is typically accessed through an interface such as an API or a web application.
Properties
Properties introduced by this extension that are not defined by an authoritative external vocabulary (such as Schema.org) or by the SKG-IF core entities are prefixed with srv_ to avoid clashes with properties of the same name potentially introduced by other extensions.
Extensions to core entities
This extension introduces new types of the core Organisation and Venue entities, expressed by values of the types property:
Organisation
New types for modelling service operations:
srv_hosting_organisation(“hosting organisation”) — organisation responsible for hosting and operating a servicesrv_research_infrastructure(“research infrastructure”) — organisation providing facilities, resources and services for research communities
Venue
A new type for modelling portal functionality:
srv_portal(“portal”) — a portal/catalogue through which services are discoverable and accessible
Properties
local_identifier
String (mandatory): Unique code identifying a Service in the SKG. Suggestion: Use a URL as a string to make this entity dereferenceable on the Web. For additional information, see the section ‘Local identifiers of entities’ of the Interoperability Framework.
"local_identifier": "https://hdl.handle.net/11234/1-4816"
identifiers
List (recommended): Objects representing external identifiers for the entity.
Each identifier is structured as follows:
schemeString (mandatory): The scheme for the external identifier.valueString (mandatory): The external identifier.
Note: the current version of SKG-IF includes the following types of identifiers (to be specified as strings in the field “scheme”): doi, handle, pmid, url, omid, … For a complete list see external identifiers of entities.
"identifiers": [
{
"scheme": "handle",
"value": "11234/1-4816"
},
{
"scheme": "doi",
"value": "10.18653/v1/K18-2020"
}
]
entity_type
String (mandatory): Field stating what kind of entity is being serialised.
Needed for parsing purposes; fixed to srv_service.
"entity_type": "srv_service"
name
String (mandatory): The canonical name of the service in English. Maps to foaf:name.
"name": "UDPipe"
other_names
List (optional): Accepted alternative names, e.g. native language names or short codes. Maps to skos:altLabel.
"other_names": ["UDPipe 工具", "UDPipe 2"]
srv_descriptions
Object (optional): The descriptions of a [Service] (multiple for multilingualism).
The object is a dictionary, the keys represent language codes following ISO 639-1; the special key none is reserved whenever the information about the language is not available or cannot be shared.
"srv_descriptions": {
"en": ["UDPipe 2 is a Python prototype, capable of performing tagging, lemmatization and syntactic analysis of CoNLL-U input. It took part in several competitions, reaching excellent results in all of them", "Summary"],
"cs": ["UDPipe je trénovatelný nástroj pro tokenizaci, tagging, lemmatizaci a závislostní parsing CoNLL-U souborů. UDPipe je jazykově nezávislý a pro natrénování modelů využívá anotovaná data ve formátu Universal Dependencies"],
"none": ["ontaligestring"]
}
srv_audience_by_role
List (optional): The audience(s) that the service is intended to be used by. This can both express desire and/or design of the service operators. Values must be taken from the https://vocabs.sshopencloud.eu/vocabularies/sshoc-audience/audienceScheme
NOTE: Bare terms are the recommended form — the JSON-LD context expands them to full IRIs via the vocabulary URL above. Alternatively, prefixed CURIEs (e.g. "sshocaudience:public") make the vocabulary source explicit in the value itself.
"srv_audience_by_role": ["public", "student"]
srv_audience_by_jurisdiction
List (optional): The jurisdiction that is given by the service operator’s legal status limits the audience. Values from the EOSC Service Profile DS_JURISDICTION vocabulary: Global, National, Regional, Institution, Research Infrastructure, e-Infrastructure.
"srv_audience_by_jurisdiction": ["Institution", "National" ]
disciplines
List (optional): The disciplines to which this service is dedicated. The disciplines must be specified using the Library of Congress Classification codes, available at https://id.loc.gov/authorities/classification (e.g. PA3000-PA3049 for classical literature). In case the service is discipline-agnostic, the string “all” should be specified.
"disciplines": [
"QC790.95-QC791.8"
]
"disciplines": ["all"]
srv_is_accessible_for_free
Boolean (optional): Flag indicating whether the Service is accessible for free (true) or subject to access restrictions or payment (false). If omitted, accessibility status is not specified.
"srv_is_accessible_for_free": true
srv_invocation_type
List (optional): The way the service is used or called. Multiple values are possible, access conditions are assumed to be the same. Values are specified by vocabulary: https://vocabs.sshopencloud.eu/vocabularies/invocation-type/invocationTypeScheme
"srv_invocation_type": ["restfulWebservice", "webApplication"]
srv_life_cycle_status
List (optional): Indicates the development cycle and/or maturity status of the service. Values are by vocabulary: https://vocabs.sshopencloud.eu/vocabularies/eosc-life-cycle-status/ Originally specified in the EOSC Service Profile. TRL classifications are planned to be added to this vocabulary.
"srv_life_cycle_status": ["life_cycle_status_production", "trl-6"]
srv_availability_geographic
List (optional): list of countries and regions where the service is made available, eg. for legal or contractual reasons. Values are by the vocabulary: https://vocabs.sshopencloud.eu/vocabularies/eosc-geographical-availability/
"srv_availability_geographic": ["eu", "uk"]
website
String (optional): Landingpage for the service. Preferably one maintained by the service operator
"website": "https://ufal.mff.cuni.cz/udpipe/2"
srv_api_profile
Object (optional): Endpoint and documentation URLs for the service API. At least one of srv_api_endpoint or srv_api_specification_uri should be provided.
Minimal form (documentation URL only):
"srv_api_profile": {
"srv_api_specification_uri": "https://lindat.mff.cuni.cz/services/udpipe/api-reference.php"
}
Full form (endpoint + documentation URLs):
"srv_api_profile": {
"srv_api_endpoint": ["https://lindat.mff.cuni.cz/services/udpipe/api/process"],
"srv_api_specification_uri": [
"https://lindat.mff.cuni.cz/services/udpipe/",
"https://lindat.mff.cuni.cz/services/udpipe/api-reference.php",
"https://ufal.mff.cuni.cz/udpipe"
]
}
srv_supported_language
List (optional): The language(s) the service is able to process, as ISO 639-3 language codes. Values are CURIEs using the iso639-3: prefix, which resolves to the ACDH-CH/DARIAH ISO 639-3 vocabulary (hosted by the Austrian Academy of Sciences on ACONET infrastructure).
NOTE: Unlike other vocabulary properties, bare codes (e.g. "deu") are not recommended here — the bare code alone does not distinguish ISO 639-3 from ISO 639-2. Use the prefixed CURIE form.
"srv_supported_language": ["iso639-3:deu", "iso639-3:nld"]
topics
List (optional): [Topic] entities relevant for the scope of a service. Each entry wraps a Topic reference via the term key:
local_identifier— we recommend a Wikidata IRI or an IRI from another authoritative topic vocabulary (e.g. ELSST, CSD Linguistic Subjects); see the core [Topic] entity for guidanceidentifiers— list of scheme/value objects referencing the topic in external vocabularieslabels— multilingual object; keys are ISO 639-1 language codes, withnoneas special key when the language is unknownentity_type— fixed totopic
NOTE: Unlike research products, services assert topics directly — no provenance or trust scores apply here.
"topics": [
{
"term": {
"local_identifier": "https://www.wikidata.org/wiki/Q8162",
"entity_type": "topic",
"identifiers": [
{
"scheme": "wikidata",
"value": "https://www.wikidata.org/wiki/Q8162"
}
],
"labels": {
"en": "Linguistics"
}
}
},
{
"term": {
"local_identifier": "https://www.wikidata.org/wiki/Q97377656",
"entity_type": "topic",
"identifiers": [
{
"scheme": "wikidata",
"value": "https://www.wikidata.org/wiki/Q97377656"
},
{
"scheme": "elsst",
"value": "https://elsst.cessda.eu/id/6/1951407b-586e-422a-92d7-7551e93e9277"
}
],
"labels": {
"en": "Linguistic Analysis"
}
}
},
{
"term": {
"local_identifier": "https://www.wikidata.org/wiki/Q35395",
"entity_type": "topic",
"identifiers": [
{
"scheme": "wikidata",
"value": "https://www.wikidata.org/wiki/Q35395"
},
{
"scheme": "csd-linguistic-subjects",
"value": "https://vocabs.sshopencloud.eu/vocabularies/csd-linguistic-subjects/0027"
}
],
"labels": {
"en": "Phonetics"
}
}
}
]
srv_has_research_infrastructure
List (optional): An [Organisation] that provides facilities, resources and services for the research communities to conduct research. NOTE: Each item may be a local_identifier for an Organisation or an Organisation object. API responses may expand identifiers to Organisation objects. Also include each organisation’s local_identifier in relevant_organisations (see below). Simple form (local_identifier, preferred for input/storage):
"srv_has_research_infrastructure": [
"https://ror.org/03wp25384"
]
Expanded form (Organisation object, as returned by API with embedding=true):
"srv_has_research_infrastructure": [
{
"local_identifier": "https://ror.org/03wp25384",
"entity_type": "organisation",
"name": "CLARIN ERIC",
"types": [
"facility",
"srv_research_infrastructure"
],
"country": "NL"
}
]
srv_has_hosting_organisation
List (optional): An [Organisation] responsible for hosting a service or infrastructure component. NOTE: Each item may be a local_identifier for an Organisation or an Organisation object. API responses may expand identifiers to Organisation objects. Also include each organisation’s local_identifier in relevant_organisations (see below).
Simple form (local_identifier, preferred for input/storage):
"srv_has_hosting_organisation": [
"https://ror.org/00dd4fz34"
]
Expanded form (Organisation object, as returned by API with embedding=true):
"srv_has_hosting_organisation": [
{
"local_identifier": "https://ror.org/00dd4fz34",
"entity_type": "organisation",
"name": "Digital Research Infrastructure for Language Technologies, Arts and Humanities",
"short_name": "LINDAT",
"types": [
"facility",
"srv_hosting_organisation"
],
"country": "CZ"
}
]
srv_has_hosting_legal_entity
String (optional): The specific [Organisation] legally responsible for the service operation and publishing. NOTE: The value may be a local_identifier for an Organisation or an Organisation object. API responses may expand the identifier to an Organisation object. Also include this organisation’s local_identifier in relevant_organisations (see below).
Simple form (local_identifier, preferred for input/storage):
"srv_has_hosting_legal_entity": "https://ror.org/024d6js02"
Expanded form (Organisation object, as returned by API with embedding=true):
"srv_has_hosting_legal_entity": {
"local_identifier": "https://ror.org/024d6js02",
"entity_type": "organisation",
"name": "Charles University",
"types": [
"education",
"research"
],
"country": "CZ"
}
srv_venues
List (optional): Portals or catalogues through which the service is advertised and accessible. Each entry references a [Venue] of type “portal” (value srv_portal). NOTE: Each item may be a local_identifier for a Venue or a Venue object. API responses may expand identifiers to Venue objects.
Simple form (local_identifier, preferred for input/storage):
"srv_venues": [
"https://ror.org/03sj9b840",
"https://portal.ariadne-infrastructure.eu"
]
Expanded form (Venue objects, as returned by API with embedding=true):
"srv_venues": [
{
"local_identifier": "https://ror.org/03sj9b840",
"entity_type": "venue",
"name": "EOSC node",
"types": ["srv_portal"],
"website": "https://open-science-cloud.ec.europa.eu/support/getting-started-eosc-eu-node"
},
{
"local_identifier": "https://portal.ariadne-infrastructure.eu",
"entity_type": "venue",
"name": "Ariadne portal",
"types": ["srv_portal"],
"website": "https://portal.ariadne-infrastructure.eu/about"
}
]
relevant_organisations
List (optional): Generic queryable index of all [Organisation] identifiers associated with and relevant for a service. Identifiers can be of local or global identifier system type e.g. ror, uri. Organisations can be given additional types: "srv_research_infrastructure" and "srv_hosting_organisation" to indicate their role.
NOTE: Each item may be a plain identifier string or an Organisation object. API responses may expand identifiers to Organisation objects.
For semantically typed roles use the specific srv_has_* properties and include their local_identifier here for completeness.
Simple form (flat identifier strings, preferred for input/storage):
"relevant_organisations": ["https://ror.org/024d6js02", "https://ror.org/03wp25384"]
Expanded form (as may be returned by the API):
"relevant_organisations": [
{
"local_identifier": "https://ror.org/024d6js02",
"entity_type": "organisation",
"name": "Charles University",
"types": ["education", "research"],
"country": "CZ"
},
{
"local_identifier": "https://ror.org/03wp25384",
"entity_type": "organisation"
}
]
related_products
Object (optional): JSON-LD grouping collecting typed relations to [Research products]. The key is the relation type; values are lists of identifiers.
Applicable relation types:
is_documented_byList (optional): Research products documenting this service.srv_is_cited_byList (optional): Research products citing this service.
"related_products": {
"is_documented_by": ["https://doi.org/10.1007/s10579-010-9130-z"],
"srv_is_cited_by": ["https://doi.org/10.18653/v1/2020.acl-main.1"]
}
Future extension —
related_serviceson Research products: There is a use case for extending the coreresearch_productentity with a reciprocalrelated_servicesnested property, supporting the following relation types from the research product side:
cites— a publication cites a servicedocuments— a publication documents a serviceis_created_by— a dataset was created by a service
srv_keywords
List (optional): List of keywords relevant for service discovery, values may be simple strings or concept URIs. Maps to schema:keyword.
"srv_keywords": ["https://www.wikidata.org/wiki/Q30642","parsing"]
srv_deployment_of
List (optional): The software that this service is a running instance of.
Can be:
- A plain string
local_identifier— treated as a cross-reference to anskg:research_product(type software) in the SKG-IF graph - A typed external reference using a GitHub/GitLab URL, DOI, or handle — use this when no local SKG-IF record exists for the software.
"srv_deployment_of": [
"local-id-of-udpipe-software",
{ "@id": "https://github.com/ufal/udpipe", "@type": "schema:SoftwareSourceCode" },
{ "@id": "https://hdl.handle.net/11234/1-1452", "@type": "fabio:Software" }
]
srv_contributions
Removed: The
srv_has_hosting_organisation,srv_has_research_infrastructure, andrelevant_organisationsproperties are considered sufficient to capture the organisational relationships of a service. A general agent+role contribution pattern (as used for research products) is for now not recommended for services, as operational contributions are difficult to track at that level of granularity.srv_contributionshas been removed.