You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The StructureDefinition model generates validation errors for the element.id elements due to the regex defined in the model. The regex is based on the FHIR id datatype. However, the element.id element is a string datatype and should not use the id datatype regex.
from fhir.resources.structuredefinition import StructureDefinition
for i in us_core_files:
#print(i.name)
constraints = {}
#sd_dict = loads(i.read_text())
sd = StructureDefinition.parse_file(i)
---------------------------------------------------------------------------
ValidationError Traceback (most recent call last)
Input In [30], in <cell line: 2>()
4 constraints = {}
5 #sd_dict = loads(i.read_text())
----> 6 sd = StructureDefinition.parse_file(i)
7 #print(sd_dict['type'])
9 if sd.type =="Observation":
File ~/.pyenv/versions/3.10.2/envs/jupyter/lib/python3.10/site-packages/fhir/resources/fhirabstractmodel.py:243, in FHIRAbstractModel.parse_file(cls, path, content_type, encoding, proto, allow_pickle, **extra)
233 extra.update({"cls": cls})
234 obj = load_file(
235 path,
236 proto=proto,
(...)
241 **extra,
242 )
--> 243 return cls.parse_obj(obj)
File ~/.pyenv/versions/3.10.2/envs/jupyter/lib/python3.10/site-packages/pydantic/main.py:511, in pydantic.main.BaseModel.parse_obj()
File ~/.pyenv/versions/3.10.2/envs/jupyter/lib/python3.10/site-packages/fhir/resources/fhirabstractmodel.py:105, in FHIRAbstractModel.__init__(__pydantic_self__, **data)
102 if errors:
103 raise ValidationError(errors, __pydantic_self__.__class__)
--> 105 BaseModel.__init__(__pydantic_self__, **data)
File ~/.pyenv/versions/3.10.2/envs/jupyter/lib/python3.10/site-packages/pydantic/main.py:331, in pydantic.main.BaseModel.__init__()
ValidationError: 23 validation errors for StructureDefinition
snapshot -> element -> 14 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 15 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 16 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 17 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 18 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 19 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 20 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 21 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 22 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 23 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 24 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 25 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 30 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 33 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 34 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 35 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 36 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 37 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 38 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 39 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 40 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 41 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
snapshot -> element -> 66 -> id
string does not match regex "^[A-Za-z0-9\-.]+$" (type=value_error.str.regex; pattern=^[A-Za-z0-9\-.]+$)
The text was updated successfully, but these errors were encountered:
Healthedata1
changed the title
ElementDefintion.id typing is incorrect
ElementDefinition.id typing is incorrect
May 9, 2022
Description
The StructureDefinition model generates validation errors for the element.id elements due to the regex defined in the model. The regex is based on the FHIR id datatype. However, the element.id element is a string datatype and should not use the id datatype regex.
See the element definition here http://hl7.org/fhir/element.html#Element, and Element.id definition here : http://hl7.org/fhir/elementdefinition.html#id
What I Did
The text was updated successfully, but these errors were encountered: