@@ -126,9 +126,13 @@ def validate(self, value, ignore=None):
126126 for item in value :
127127 if not (isinstance (item , self .types ) or _could_be_instance (item , self .types )):
128128 if "type" not in ignore :
129+ if isinstance (item , Link ):
130+ item_type = f"value contains a link to { item .allowed_types } "
131+ else :
132+ item_type = f"value contains { type (item )} "
129133 failures ["type" ].append (
130- f"{ self .name } : Expected { ', ' .join (t .__name__ for t in self .types )} , "
131- f"value contains { type ( item ) } "
134+ f"{ self .name } : Expected { ', ' .join (t .__name__ for t in self .types )} , " +
135+ item_type
132136 )
133137 elif isinstance (item , (Node , IRI )):
134138 failures .update (item .validate (ignore = ignore ))
@@ -158,9 +162,13 @@ def validate(self, value, ignore=None):
158162 )
159163 elif not (isinstance (value , self .types ) or _could_be_instance (value , self .types )):
160164 if "type" not in ignore :
165+ if isinstance (value , Link ):
166+ value_type = f"value contains a link to { value .allowed_types } "
167+ else :
168+ value_type = f"value contains { type (value )} "
161169 failures ["type" ].append (
162- f"{ self .name } : Expected { ', ' .join (t .__name__ for t in self .types )} , "
163- f"value is { type ( value ) } "
170+ f"{ self .name } : Expected { ', ' .join (t .__name__ for t in self .types )} , " +
171+ value_type
164172 )
165173 elif isinstance (value , (Node , IRI )):
166174 failures .update (value .validate (ignore = ignore ))
0 commit comments