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 service
  • srv_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:

  • scheme String (mandatory): The scheme for the external identifier.
  • value String (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 guidance
  • identifiers — list of scheme/value objects referencing the topic in external vocabularies
  • labels — multilingual object; keys are ISO 639-1 language codes, with none as special key when the language is unknown
  • entity_type — fixed to topic

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"
    }
]

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"
    }
]

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_by List (optional): Research products documenting this service.
  • srv_is_cited_by List (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_services on Research products: There is a use case for extending the core research_product entity with a reciprocal related_services nested property, supporting the following relation types from the research product side:

  • cites — a publication cites a service
  • documents — a publication documents a service
  • is_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 an skg: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, and relevant_organisations properties 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_contributions has been removed.



This site uses Just the Docs, a documentation theme for Jekyll.