@@ -77,6 +77,18 @@ message GetJSONSchemaResponse {
7777 google.protobuf.Struct schema = 1 ;
7878}
7979
80+ // TaxonomyItem represents a single node in a nested OASF taxonomy tree.
81+ message TaxonomyItem {
82+ int32 id = 1 ;
83+ string name = 2 ;
84+ string caption = 3 ;
85+ string description = 4 ;
86+ bool category = 5 ;
87+ bool deprecated = 6 ;
88+ // Child items keyed by their slug (for example "natural_language_processing").
89+ map <string , TaxonomyItem > classes = 7 ;
90+ }
91+
8092message GetSchemaSkillsRequest {
8193 // URL of the OASF schema server (for example https://schema.oasf.outshift.com).
8294 string schema_url = 1 ;
@@ -86,8 +98,8 @@ message GetSchemaSkillsRequest {
8698}
8799
88100message GetSchemaSkillsResponse {
89- // Nested skill categories represented as structured JSON .
90- google.protobuf.Struct data = 1 ;
101+ // Top-level skill categories keyed by slug .
102+ map < string , TaxonomyItem > items = 1 ;
91103}
92104
93105message GetSchemaDomainsRequest {
@@ -99,8 +111,8 @@ message GetSchemaDomainsRequest {
99111}
100112
101113message GetSchemaDomainsResponse {
102- // Nested domain categories represented as structured JSON .
103- google.protobuf.Struct data = 1 ;
114+ // Top-level domain categories keyed by slug .
115+ map < string , TaxonomyItem > items = 1 ;
104116}
105117
106118message GetSchemaModulesRequest {
@@ -112,8 +124,8 @@ message GetSchemaModulesRequest {
112124}
113125
114126message GetSchemaModulesResponse {
115- // Nested module categories represented as structured JSON .
116- google.protobuf.Struct data = 1 ;
127+ // Top-level module categories keyed by slug .
128+ map < string , TaxonomyItem > items = 1 ;
117129}
118130
119131message ClearSchemaCacheRequest {
0 commit comments