code: public ChronoEntity<?> parseRaw(
          CharSequence text,
          int offset
      ) {
  
          if (offset >= text.length()) {
              return new ParsedValues(0, false);
          }
  
          // Phase 1: elementweise Interpretation und Sammeln der Elementwerte
          ParseLog status = new ParseLog(offset);
          ChronoEntity<?> parsed = null;
  
          try {
              parsed = this.parseElements(text, status, this.globalAttributes, true, this.countOfElements);
              status.setRawValues(parsed);
          } catch (AmbivalentValueException ex) {
              if (!status.isError()) {
                  status.setError(status.getPosition(), ex.getMessage());
              }
          }
  
          if ((parsed == null) || status.isError()) {
              return new ParsedValues(0, false);
          }
  
          // Phase 2: Anreicherung mit Default-Werten
          for (ChronoElement<?> e : this.defaults.keySet()) {
              if (!parsed.contains(e)) {
                  setValue(parsed, e, this.getDefaultValue(e, parsed));
              }
          }
  
          return parsed;
  
      }
docs: /*[deutsch]
  <p>Interpretiert den angegebenen Text zu Rohdaten, ohne eine
  Typkonversion vorzunehmen. </p>
  
  @param   text        text to be parsed
  @param   offset      start position
  @return  new map-like mutable entity (empty if parsing does not work)
  @since	2.0