docs: protected CmsXmlContentDefinition getContentDefinition(EntityResolver resolver) throws CmsRuntimeException {
  
          String schemaLocation = m_document.getRootElement().attributeValue(
              I_CmsXmlSchemaType.XSI_NAMESPACE_ATTRIBUTE_NO_SCHEMA_LOCATION);
          // Note regarding exception handling:
          // Since this object already is a valid XML content object,
          // it must have a valid schema, otherwise it would not exist.
          // Therefore the exceptions should never be really thrown.
          if (schemaLocation == null) {
              throw new CmsRuntimeException(Messages.get().container(Messages.ERR_XMLCONTENT_MISSING_SCHEMA_0));
          }
  
          try {
              return CmsXmlContentDefinition.unmarshal(schemaLocation, resolver);
          } catch (SAXException e) {
              throw new CmsRuntimeException(Messages.get().container(Messages.ERR_XML_SCHEMA_PARSE_1, schemaLocation), e);
          } catch (IOException e) {
              throw new CmsRuntimeException(Messages.get().container(Messages.ERR_XML_SCHEMA_IO_1, schemaLocation), e);
          } catch (CmsXmlException e) {
              throw new CmsRuntimeException(
                  Messages.get().container(Messages.ERR_XMLCONTENT_UNMARSHAL_1, schemaLocation),
                  e);
          }
      }