code: def from_raw(self, rval: RawObject, jptr: JSONPointer = "") -> ObjectValue:
          
          if not isinstance(rval, dict):
              raise RawTypeError(jptr, "object")
          res = ObjectValue()
          for qn in rval:
              if qn.startswith("@"):
                  if qn != "@":
                      tgt = qn[1:]
                      if tgt not in rval:
                          raise MissingAnnotationTarget(jptr, tgt)
                      jptr += '/' + tgt
                  res[qn] = self._process_metadata(rval[qn], jptr)
              else:
                  cn = self._iname2qname(qn)
                  ch = self.get_data_child(*cn)
                  npath = jptr + "/" + qn
                  if ch is None:
                      raise RawMemberError(npath)
                  res[ch.iname()] = ch.from_raw(rval[qn], npath)
          return res
docs: Override the superclass method.