2525import copy
2626
2727from flask import url_for
28- from invenio_jsonschemas .proxies import current_jsonschemas
29- from marshmallow import Schema , ValidationError , fields , pre_load , validate
3028
3129from cap .utils import url_to_api_url
30+ from invenio_jsonschemas .proxies import current_jsonschemas
31+ from marshmallow import Schema , ValidationError , fields , pre_load , validate
3232
3333from .validators import JSONSchemaValidator
3434
@@ -102,6 +102,15 @@ def filter_out_fields_that_cannot_be_updated(self, data, **kwargs):
102102 return data
103103
104104
105+ class SimplifiedSchemaSerializer (Schema ):
106+ """Simplified serializer for schema."""
107+
108+ name = fields .Str (dump_only = True , required = True )
109+ version = fields .Str (dump_only = True , required = True ,
110+ validate = validate .Regexp (regex = r"(\d+).(\d+).(\d+)" ))
111+ fullname = fields .Str (dump_only = True )
112+
113+
105114class ResolvedSchemaSerializer (SchemaSerializer ):
106115 """Schema serializer with resolved jsonschemas."""
107116
@@ -125,5 +134,6 @@ def get_resolved_record_schema(self, obj):
125134
126135
127136schema_serializer = SchemaSerializer ()
137+ simplified_schema_serializer = SimplifiedSchemaSerializer ()
128138update_schema_serializer = UpdateSchemaSerializer ()
129139resolved_schemas_serializer = ResolvedSchemaSerializer ()
0 commit comments