Skip to main content
Version: Next

Developing with the AI Service KIT

Introduction​

Note: this development view is still a draft.

This KIT defines a standardized method for dataspace member organizations to expose their AI systems as APIs on the dataspace. Users of these APIs exposed on the dataspace can discover the AI system's API using the EDC Connector API, then access it via HTTP after completing the access procedure.

While the existing EDC Connector could expose APIs accessible via HTTP, two challenges existed:

  • There was no standardized format for the information that helps consumers find the desired AI system, making it difficult for applications to search automatically.

  • Using an AI system required writing a contract to comply with each country's regulations and rules, but these rules were not defined.

The following two sections describe the proposed methods to address these challenges.

The configuration assumed in the following description is as follows:

The roles of each element in this diagram are as follows:

Provider AppRegisters information to EDC Connector to expose the AI system. This may be integrated with the Provider AI.
Provider AIProvides the AI system's functionality via an API
Provider EDCThe EDC Connector of the organization publishing the AI system
Consumer AppAn application from another organization, which wants to use the exposed AI system
Consumer ClientThe client connecting to the Provider AI. This may be integrated with the Consumer App
Consumer EDCThe EDC Connector of the organization, which wants to use the AI system

For the Consumer App to use Provider AI in this configuration, the Provider App needs to publish Provider AI to the dataspace, and the Consumer App needs to follow the steps to discover and gain access to it. Refer to the Management API Overview for general procedures and the functionality of individual API calls.

The parts of this procedure relevant to this KIT are as follows:

By adding these properties and definition, consumer will be able to find AI system it wants, and then to agree to the Provider's request that it should follow the EU AI Act, for example.

concept

The figure shown above shows how the Provider and Consumer can use the definitions discussed in this KIT.

Note: data plane in the figure goes through http proxy, but this is not a requirement.

Sample Data​

Creating an Asset of AI System​

To register an AI system to EDC Connector, Provider App needs to POST a JSON object to /v3/assets. The JSON object needs the following property added to properties section:

    "serviceOffering":{
"type": "AI Agent",
"subType": "Custom",
"details": {
"provider": "Company A",
"agentSkill": "provide product data of Company A",
"description": "Answer infromation regarding all products"
}

Example of making a POST request to /v3/assets.

The management-api-walkthrough page shows an example of registering an HTTP dataplane. Add the serviceOffering shown above to this properties section:

{
"@context": {
"@vocab": "https://w3id.org/edc/v0.0.1/ns/",
"cx-common": "https://w3id.org/catenax/ontology/common#",
"cx-taxo": "https://w3id.org/catenax/taxonomy#",
"dct": "http://purl.org/dc/terms/"
},
"@type": "Asset",
"@id": "{% uuid 'v4' %}",
"properties": {
"dct:type": {
"@id": "{{ _.asset_type }}"
},
"cx-common:version": "{{ _.asset_version }}",
"serviceOffering":{
"type": "AI Agent",
"subType": "Custom",
"details": {
"provider": "Company A",
"agentSkill": "provide product data of Company A",
"description": "Answer infromation regarding all products"
}
}
},
"dataAddress": {
"@type": "DataAddress",
"type": "HttpData",
"baseUrl": "https://mycorp.org/api",
"oauth2:tokenUrl": "{{ _.url_keycl_backend }}",
"oauth2:clientId": "{{ _.client_id_backend }}",
"oauth2:clientSecretKey": "{{ _.sec_name_vault }}",
"proxyQueryParams": "true",
"proxyPath": "false",
"proxyMethod": "true",
"header:customHeaderKey": "custom-header-value"
}
}

When a Consumer App requests a catalog, it receives a catalog containing AI assets. The asset includes the following information, which can be used by the application to find the AI application:

    "serviceOffering": {
"type": "AI Agent",
"subType": "Custom",
"details": {
"provider": "Company A",
"agentSkill": "provide product data of Company A",
"description": "Answer infromation regarding all products"
}
}

The keywords used for this serviceOffering should utilize the W3C Data Catalog Vocabulary (DCAT) - Version 3 as much as possible.

The serviceOffering property includes these properties:

keyJSON data types of its valuepossible values
typestring“AI Agent” in case of AI Agent. Future can be “Fed Learning”
subTypestring“Custom”, “MCP”, “A2A”, etc.
detailsobject

The type property can have one of the following values:

valuepurpose
AI AgentAI Agent
Fed LearningFederated Learning

The subType property can have one of the following values:

valuepurpose
Customfor a custom protocol
MCPModel Context Protocol (MCP)
A2AAgent2Agent (A2A) Protocol

details property may have an object containing any kinds of properties.

Creating a Usage Policy for AI System​

When utilizing AI, aspects such as safety, transparency, ethics, and privacy protection are of critical importance, and AI regulations addressing these concerns are established across different regions and countries. These regulations must be observed by all parties involved, including data providers, data users (AI system developers and AI users). Therefore, compliance with AI regulations is essential when using the AI Service KIT. Below is an explanation of how AI regulations are applied within EDC.

Region/CountryLaw / Policy Name
EUArtificial Intelligence Act (AI Act)
USAI Bill of Rights (2022)
CNCyberspace Administration of China (CAC): Interim Measures (2023)
JPSocial Principles of Human-Centric AI
GBPro-innovation AI Regulation Framework

Registration in EDC Connector​

When offering AI-related services through EDC Connector, it is necessary to define and register the application of AI regulations from various countries within the Usage Policies section of the EDC Connector contract. Below is an example of how such Usage Policies can be defined.

Usage Policies​

The following is a sample policy using the EU AI Regulation (AI Act) as an example. This policy does not detail the specific contents of the AI regulations, but rather indicates compliance with them. The detailed requirements must be defined by system developers and other stakeholders in accordance with the regulations of each respective country.

Here's an example

{
"@context": [
"http://www.w3.org/ns/odrl.jsonld",
"https://w3id.org/catenax/2025/9/policy/context.jsonld",
{
"@vocab": "https://w3id.org/edc/v0.0.1/ns/"
}
],
"@type": "PolicyDefinition",
"@id": "CHANGE-ME",
"policy": {
"@type": "Set",
"permission": [
{
"action": "use",
"constraint": [
{
"and": [
{
"leftOperand": "Membership",
"operator": "eq",
"rightOperand": "active"
},
{
"leftOperand": "UsagePurpose",
"operator": "isAnyOf",
"rightOperand": "cx.euaiact.base:1"

},
{
"leftOperand": "FrameworkAgreement",
"operator": "eq",
"rightOperand": "DataExchangeGovernance:1.0"
}
]
}
]
}
],
"obligation": [],
"prohibition": []
}
}

The expression rightOperand: "cx.euaiact.base:1" indicates that data usage is permitted only when it aligns with the purpose defined as "cx.euaiact.base:1". This purpose requires the data consumer to comply with the obligations of "deployer" as stipulated in the AI Act.

Note: the "cx.euaiact.base:1" mentioned in the example and the description above is under discussion and not defined yet. Please be reminded that you may not use this value at the moment.

Notice​

This work is licensed under the CC-BY-4.0.

  • SPDX-License-Identifier: CC-BY-4.0
  • SPDX-FileCopyrightText: 2026 FUJITSU LIMITED
  • SPDX-FileCopyrightText: 2026 Contributors to the Eclipse Foundation