For now, think of these attributes as the "magic incantation" you use to validate a simple XML file that doesn't use them.
Once you've learned more about namespaces, you'll see how to use XML Schema to validate complex documents that use them.
In addition to the error handling you've already learned about, there is one error that can occur when you are configuring the parser for schema-based validation.
If the parser is not 1.2 compliant, and therefore does not support XML Schema, it could throw a The first attribute defines the XML Name Space (xmlns) prefix, "xsi", where "xsi" stands for "XML Schema Instance".
In this project a different approach is taken: a schema is parsed offline, and validating code is generated out of it.
That way we Instead of presenting a generic DOM (document object model) to the user, the XML data are presented in auto-generated Go types matching the data structure, just like you would do it manually if you want to input the XML data to Go's parser.
For now, understand that schema validation is a namespace-oriented process.