code: void populate(ModelNode modelNode, PathAddress addressPrefix) {
          for (ModelNode item : modelNode.asList()) {
              PathAddress absAddr = addressPrefix.append(PathAddress.pathAddress(item.get(ABSOLUTE_ADDRESS)));
              if (item.hasDefined(FILTERED_ATTRIBUTES)) {
                  for (ModelNode node : item.get(FILTERED_ATTRIBUTES).asList()) {
                      addReadRestrictedAttribute(absAddr, node.asString());
                  }
              }
              if (item.hasDefined(UNREADABLE_CHILDREN)) {
                  for (Property prop : item.get(UNREADABLE_CHILDREN).asPropertyList()) {
                      PathElement pe = PathElement.pathElement(prop.getName(), prop.getValue().asString());
                      addReadRestrictedResource(PathAddress.pathAddress(absAddr, pe));
                  }
              }
              if (item.hasDefined(FILTERED_CHILDREN_TYPES)) {
                  for (ModelNode type : item.get(FILTERED_CHILDREN_TYPES).asList()) {
                      PathElement pe = PathElement.pathElement(type.asString());
                      addAccessRestrictedResource(PathAddress.pathAddress(absAddr, pe));
                  }
              }
          }
      }
docs: Take data exported via {@link #toModelNode()} and store it locally. This is so filtering
  information from a remote process can be incorporated with local data.
  
  @param modelNode a defined node of type LIST
  @param addressPrefix address that should be added as a prefix to absolute addresses in {@code modelNode}