== ontology-complete schema
{
  "$defs": {
    "Agent": {
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        },
        "ex:label": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@list": {
                      "type": "array"
                    }
                  },
                  "required": [
                    "@list"
                  ],
                  "type": "object"
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:name": {
          "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:normalizedString"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:token"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:language"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:Name"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NCName"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NMTOKEN"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            }
          ]
        },
        "ex:nick": {
          "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:normalizedString"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:token"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:language"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:Name"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NCName"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NMTOKEN"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            }
          ]
        }
      },
      "type": "object"
    },
    "Annotation": {
      "additionalProperties": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "boolean"
          },
          {
            "properties": {
              "@id": {
                "type": "string"
              }
            },
            "required": [
              "@id"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "type": "string"
              },
              "@value": {}
            },
            "required": [
              "@value"
            ],
            "type": "object"
          }
        ]
      },
      "description": "Free-form metadata about an asserted triple (e.g. meta:accordingTo, meta:confidence, meta:assertedAt). Permissive.",
      "title": "RDF-1.2 statement metadata (reifier annotation)",
      "type": "object"
    },
    "Group": {
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        },
        "ex:label": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@list": {
                      "type": "array"
                    }
                  },
                  "required": [
                    "@list"
                  ],
                  "type": "object"
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        }
      },
      "type": "object"
    },
    "Literal": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "boolean"
        },
        {
          "properties": {
            "@direction": {
              "enum": [
                "ltr",
                "rtl"
              ]
            },
            "@language": {
              "pattern": "^[a-zA-Z]{1,8}(?:-[a-zA-Z0-9]{1,8})*$",
              "type": "string"
            },
            "@value": {
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@language"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:boolean"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:true|false|1|0)[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:decimal"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0+\\.(?:|[0-9]+)|\\.(?:[0-9]+)|0*(?:[1-9][0-9]*)|0*(?:[1-9][0-9]*)\\.(?:|[0-9]+)))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:double"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?|-?INF|NaN)[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:float"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?|-?INF|NaN)[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:integer"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0*(?:[1-9][0-9]*)))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:nonPositiveInteger"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:negativeInteger"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:-(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:long"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-7][0-9]{0})|0*(?:9223372036854775808)))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6][0-9]{0})|0*(?:9223372036854775807)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:int"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-7][0-9]{0})|0*(?:2147483648)))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-6][0-9]{0})|0*(?:2147483647)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:short"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-7][0-9]{0})|0*(?:32768)))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-6][0-9]{0})|0*(?:32767)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:byte"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-7][0-9]{0})|0*(?:128)))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-6][0-9]{0})|0*(?:127)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:nonNegativeInteger"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:unsignedLong"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,18}|1[0-7][0-9]{18}|18[0-3][0-9]{17}|184[0-3][0-9]{16}|1844[0-5][0-9]{15}|18446[0-6][0-9]{14}|184467[0-3][0-9]{13}|1844674[0-3][0-9]{12}|184467440[0-6][0-9]{10}|1844674407[0-2][0-9]{9}|18446744073[0-6][0-9]{8}|1844674407370[0-8][0-9]{6}|18446744073709[0-4][0-9]{5}|184467440737095[0-4][0-9]{4}|18446744073709550[0-9]{3}|18446744073709551[0-5][0-9]{2}|1844674407370955160[0-9]{1}|1844674407370955161[0-4][0-9]{0})|0*(?:18446744073709551615)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:unsignedInt"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|[1-3][0-9]{9}|4[0-1][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[0-1][0-9]{2}|42949672[0-8][0-9]{1}|429496729[0-4][0-9]{0})|0*(?:4294967295)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:unsignedShort"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-4][0-9]{0})|0*(?:65535)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:unsignedByte"
            },
            "@value": {
              "allOf": [
                {
                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                  "type": "string"
                },
                {
                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]{1}|25[0-4][0-9]{0})|0*(?:255)))[\\t\\n\\r ]*$",
                  "type": "string"
                }
              ],
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:positiveInteger"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:string"
            },
            "@value": {
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:normalizedString"
            },
            "@value": {
              "pattern": "^(?:[^\\t\\n\\r]*)$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:token"
            },
            "@value": {
              "pattern": "^(?:([^\\t\\n\\r ]+( [^\\t\\n\\r ]+)*)?)$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:language"
            },
            "@value": {
              "pattern": "^(?:[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*)$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:Name"
            },
            "@value": {
              "pattern": "^(?:[:A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿][:A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿\\-.0-9·̀-ͯ‿-⁀]*)$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:NCName"
            },
            "@value": {
              "pattern": "^(?:[A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿][A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿\\-.0-9·̀-ͯ‿-⁀]*)$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:NMTOKEN"
            },
            "@value": {
              "pattern": "^(?:[:A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿\\-.0-9·̀-ͯ‿-⁀]+)$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:dateTime"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:-?(?:[1-9][0-9]{3,}|0[0-9]{3})-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12][0-9]|3[01])|(?:0[469]|11)-(?:0[1-9]|[12][0-9]|30)|02-(?:0[1-9]|1[0-9]|2[0-9]))T(?:(?:[01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](?:\\.[0-9]+)?|24:00:00(?:\\.0+)?)(?:Z|[+\\-](?:(?:0[0-9]|1[0-3]):[0-5][0-9]|14:00))?)[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:dateTimeStamp"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:-?(?:[1-9][0-9]{3,}|0[0-9]{3})-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12][0-9]|3[01])|(?:0[469]|11)-(?:0[1-9]|[12][0-9]|30)|02-(?:0[1-9]|1[0-9]|2[0-9]))T(?:(?:[01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](?:\\.[0-9]+)?|24:00:00(?:\\.0+)?)(?:Z|[+\\-](?:(?:0[0-9]|1[0-3]):[0-5][0-9]|14:00)))[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:hexBinary"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:(?:[0-9a-fA-F]{2})*)[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:base64Binary"
            },
            "@value": {
              "pattern": "^[\\t\\n\\r ]*(?:(?:(?:[A-Za-z0-9+/] ?){4})*(?:(?:[A-Za-z0-9+/] ?){3}[A-Za-z0-9+/]|(?:[A-Za-z0-9+/] ?){2}[AEIMQUYcgkosw048] ?=|[A-Za-z0-9+/] ?[AQgw] ?= ?=)?)[\\t\\n\\r ]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "xsd:anyURI"
            },
            "@value": {
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "owl:rational"
            },
            "@value": {
              "pattern": "^[+\\-]?[0-9]+/[0-9]*[1-9][0-9]*$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "const": "rdf:PlainLiteral"
            },
            "@value": {
              "pattern": "@(?:[a-zA-Z]{1,8}(?:-[a-zA-Z0-9]{1,8})*)?$",
              "type": "string"
            }
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        },
        {
          "properties": {
            "@type": {
              "not": {
                "enum": [
                  "xsd:boolean",
                  "xsd:decimal",
                  "xsd:double",
                  "xsd:float",
                  "xsd:integer",
                  "xsd:nonPositiveInteger",
                  "xsd:negativeInteger",
                  "xsd:long",
                  "xsd:int",
                  "xsd:short",
                  "xsd:byte",
                  "xsd:nonNegativeInteger",
                  "xsd:unsignedLong",
                  "xsd:unsignedInt",
                  "xsd:unsignedShort",
                  "xsd:unsignedByte",
                  "xsd:positiveInteger",
                  "xsd:string",
                  "xsd:normalizedString",
                  "xsd:token",
                  "xsd:language",
                  "xsd:Name",
                  "xsd:NCName",
                  "xsd:NMTOKEN",
                  "xsd:dateTime",
                  "xsd:dateTimeStamp",
                  "xsd:hexBinary",
                  "xsd:base64Binary",
                  "xsd:anyURI",
                  "owl:rational",
                  "owl:real",
                  "rdf:PlainLiteral",
                  "rdf:langString",
                  "rdf:dirLangString"
                ]
              },
              "type": "string"
            },
            "@value": {}
          },
          "required": [
            "@value",
            "@type"
          ],
          "type": "object"
        }
      ]
    },
    "Node": {
      "allOf": [
        {
          "if": {
            "properties": {
              "@type": {
                "anyOf": [
                  {
                    "const": "ex:Agent"
                  },
                  {
                    "contains": {
                      "const": "ex:Agent"
                    },
                    "type": "array"
                  }
                ]
              }
            },
            "required": [
              "@type"
            ]
          },
          "then": {
            "$ref": "#/$defs/Agent"
          }
        },
        {
          "if": {
            "properties": {
              "@type": {
                "anyOf": [
                  {
                    "const": "ex:Group"
                  },
                  {
                    "contains": {
                      "const": "ex:Group"
                    },
                    "type": "array"
                  }
                ]
              }
            },
            "required": [
              "@type"
            ]
          },
          "then": {
            "$ref": "#/$defs/Group"
          }
        },
        {
          "if": {
            "properties": {
              "@type": {
                "anyOf": [
                  {
                    "const": "ex:Org"
                  },
                  {
                    "contains": {
                      "const": "ex:Org"
                    },
                    "type": "array"
                  }
                ]
              }
            },
            "required": [
              "@type"
            ]
          },
          "then": {
            "$ref": "#/$defs/Org"
          }
        },
        {
          "if": {
            "properties": {
              "@type": {
                "anyOf": [
                  {
                    "const": "ex:Person"
                  },
                  {
                    "contains": {
                      "const": "ex:Person"
                    },
                    "type": "array"
                  }
                ]
              }
            },
            "required": [
              "@type"
            ]
          },
          "then": {
            "$ref": "#/$defs/Person"
          }
        },
        {
          "if": {
            "properties": {
              "@type": {
                "anyOf": [
                  {
                    "const": "ex:Team"
                  },
                  {
                    "contains": {
                      "const": "ex:Team"
                    },
                    "type": "array"
                  }
                ]
              }
            },
            "required": [
              "@type"
            ]
          },
          "then": {
            "$ref": "#/$defs/Team"
          }
        }
      ],
      "description": "Validated by @type: a node typed ex:Foo MUST satisfy #/$defs/Foo (closed-world). Nodes typed only by unmodeled classes are permissively allowed.",
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        }
      },
      "title": "A single discriminated PURRDF instance node",
      "type": "object"
    },
    "Org": {
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        },
        "ex:code": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@type": {
                      "const": "ex:Code"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@type": {
                        "const": "ex:Code"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:label": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@list": {
                      "type": "array"
                    }
                  },
                  "required": [
                    "@list"
                  ],
                  "type": "object"
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:member": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/$defs/Person",
                      "properties": {
                        "@value": false
                      }
                    }
                  ]
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "properties": {
                          "@id": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@id"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@list": {
                            "type": "array"
                          }
                        },
                        "required": [
                          "@list"
                        ],
                        "type": "object"
                      },
                      {
                        "$ref": "#/$defs/Person",
                        "properties": {
                          "@value": false
                        }
                      }
                    ]
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:name": {
          "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:normalizedString"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:token"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:language"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:Name"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NCName"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NMTOKEN"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            }
          ]
        },
        "ex:nick": {
          "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:normalizedString"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:token"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:language"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:Name"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NCName"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NMTOKEN"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            }
          ]
        },
        "ex:payload": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@type": {
                      "const": "rdf:JSON"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@type": {
                        "const": "rdf:JSON"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  }
                ]
              },
              "type": "array"
            }
          ]
        }
      },
      "type": "object"
    },
    "Person": {
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        },
        "ex:age": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "anyOf": [
                    {
                      "not": {
                        "properties": {
                          "@value": {
                            "not": {
                              "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$"
                            },
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value"
                        ],
                        "type": "object"
                      },
                      "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$",
                      "properties": {
                        "@type": {
                          "const": "xsd:decimal"
                        },
                        "@value": {
                          "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0+\\.(?:|[0-9]+)|\\.(?:[0-9]+)|0*(?:[1-9][0-9]*)|0*(?:[1-9][0-9]*)\\.(?:|[0-9]+)))[\\t\\n\\r ]*$",
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "anyOf": [
                        {
                          "type": "integer"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:integer"
                            },
                            "@value": {
                              "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0*(?:[1-9][0-9]*)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        }
                      ]
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:nonPositiveInteger"
                        },
                        "@value": {
                          "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+))[\\t\\n\\r ]*$",
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:negativeInteger"
                        },
                        "@value": {
                          "pattern": "^[\\t\\n\\r ]*(?:-(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:long"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-7][0-9]{0})|0*(?:9223372036854775808)))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6][0-9]{0})|0*(?:9223372036854775807)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:int"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-7][0-9]{0})|0*(?:2147483648)))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-6][0-9]{0})|0*(?:2147483647)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:short"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-7][0-9]{0})|0*(?:32768)))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-6][0-9]{0})|0*(?:32767)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:byte"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-7][0-9]{0})|0*(?:128)))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-6][0-9]{0})|0*(?:127)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:nonNegativeInteger"
                        },
                        "@value": {
                          "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:unsignedLong"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,18}|1[0-7][0-9]{18}|18[0-3][0-9]{17}|184[0-3][0-9]{16}|1844[0-5][0-9]{15}|18446[0-6][0-9]{14}|184467[0-3][0-9]{13}|1844674[0-3][0-9]{12}|184467440[0-6][0-9]{10}|1844674407[0-2][0-9]{9}|18446744073[0-6][0-9]{8}|1844674407370[0-8][0-9]{6}|18446744073709[0-4][0-9]{5}|184467440737095[0-4][0-9]{4}|18446744073709550[0-9]{3}|18446744073709551[0-5][0-9]{2}|1844674407370955160[0-9]{1}|1844674407370955161[0-4][0-9]{0})|0*(?:18446744073709551615)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:unsignedInt"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|[1-3][0-9]{9}|4[0-1][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[0-1][0-9]{2}|42949672[0-8][0-9]{1}|429496729[0-4][0-9]{0})|0*(?:4294967295)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:unsignedShort"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-4][0-9]{0})|0*(?:65535)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:unsignedByte"
                        },
                        "@value": {
                          "allOf": [
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                              "type": "string"
                            },
                            {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]{1}|25[0-4][0-9]{0})|0*(?:255)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          ],
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "xsd:positiveInteger"
                        },
                        "@value": {
                          "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@type": {
                          "const": "owl:rational"
                        },
                        "@value": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    }
                  ]
                },
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "not": {
                          "properties": {
                            "@value": {
                              "not": {
                                "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$"
                              },
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value"
                          ],
                          "type": "object"
                        },
                        "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$",
                        "properties": {
                          "@type": {
                            "const": "xsd:decimal"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0+\\.(?:|[0-9]+)|\\.(?:[0-9]+)|0*(?:[1-9][0-9]*)|0*(?:[1-9][0-9]*)\\.(?:|[0-9]+)))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "anyOf": [
                          {
                            "type": "integer"
                          },
                          {
                            "properties": {
                              "@type": {
                                "const": "xsd:integer"
                              },
                              "@value": {
                                "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0*(?:[1-9][0-9]*)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            },
                            "required": [
                              "@value",
                              "@type"
                            ],
                            "type": "object"
                          }
                        ]
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:nonPositiveInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:negativeInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:-(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:long"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-7][0-9]{0})|0*(?:9223372036854775808)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6][0-9]{0})|0*(?:9223372036854775807)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:int"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-7][0-9]{0})|0*(?:2147483648)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-6][0-9]{0})|0*(?:2147483647)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:short"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-7][0-9]{0})|0*(?:32768)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-6][0-9]{0})|0*(?:32767)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:byte"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-7][0-9]{0})|0*(?:128)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-6][0-9]{0})|0*(?:127)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:nonNegativeInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedLong"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,18}|1[0-7][0-9]{18}|18[0-3][0-9]{17}|184[0-3][0-9]{16}|1844[0-5][0-9]{15}|18446[0-6][0-9]{14}|184467[0-3][0-9]{13}|1844674[0-3][0-9]{12}|184467440[0-6][0-9]{10}|1844674407[0-2][0-9]{9}|18446744073[0-6][0-9]{8}|1844674407370[0-8][0-9]{6}|18446744073709[0-4][0-9]{5}|184467440737095[0-4][0-9]{4}|18446744073709550[0-9]{3}|18446744073709551[0-5][0-9]{2}|1844674407370955160[0-9]{1}|1844674407370955161[0-4][0-9]{0})|0*(?:18446744073709551615)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedInt"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|[1-3][0-9]{9}|4[0-1][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[0-1][0-9]{2}|42949672[0-8][0-9]{1}|429496729[0-4][0-9]{0})|0*(?:4294967295)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedShort"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-4][0-9]{0})|0*(?:65535)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedByte"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]{1}|25[0-4][0-9]{0})|0*(?:255)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:positiveInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "owl:rational"
                          },
                          "@value": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      }
                    ]
                  },
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:knows": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/$defs/Person",
                      "properties": {
                        "@value": false
                      }
                    }
                  ]
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "properties": {
                          "@id": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@id"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@list": {
                            "type": "array"
                          }
                        },
                        "required": [
                          "@list"
                        ],
                        "type": "object"
                      },
                      {
                        "$ref": "#/$defs/Person",
                        "properties": {
                          "@value": false
                        }
                      }
                    ]
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:label": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@list": {
                      "type": "array"
                    }
                  },
                  "required": [
                    "@list"
                  ],
                  "type": "object"
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:memberOf": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/$defs/Org",
                      "properties": {
                        "@value": false
                      }
                    }
                  ]
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "properties": {
                          "@id": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@id"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@list": {
                            "type": "array"
                          }
                        },
                        "required": [
                          "@list"
                        ],
                        "type": "object"
                      },
                      {
                        "$ref": "#/$defs/Org",
                        "properties": {
                          "@value": false
                        }
                      }
                    ]
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        },
        "ex:name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "minItems": 1,
              "type": "array"
            }
          ]
        },
        "ex:nick": {
          "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:normalizedString"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:token"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:language"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:Name"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NCName"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@type": {
                      "const": "xsd:NMTOKEN"
                    },
                    "@value": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@value",
                    "@type"
                  ],
                  "type": "object"
                }
              ]
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            }
          ]
        }
      },
      "required": [
        "ex:name"
      ],
      "type": "object"
    },
    "Team": {
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        },
        "ex:label": {
          "anyOf": [
            {
              "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
              "anyOf": [
                {
                  "properties": {
                    "@id": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "@id"
                  ],
                  "type": "object"
                },
                {
                  "properties": {
                    "@list": {
                      "type": "array"
                    }
                  },
                  "required": [
                    "@list"
                  ],
                  "type": "object"
                },
                {
                  "$ref": "#/$defs/Literal"
                }
              ]
            },
            {
              "items": {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/$defs/Literal"
                  }
                ]
              },
              "type": "array"
            }
          ]
        }
      },
      "type": "object"
    }
  },
  "$id": "https://example.org/schema/schema/instance.schema.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "anyOf": [
    {
      "properties": {
        "@context": true,
        "@graph": {
          "items": {
            "$ref": "#/$defs/Node"
          },
          "type": "array"
        }
      },
      "required": [
        "@graph"
      ],
      "type": "object"
    },
    {
      "$ref": "#/$defs/Node"
    }
  ],
  "properties": {
    "@context": true,
    "@graph": {
      "items": {
        "$ref": "#/$defs/Node"
      },
      "type": "array"
    }
  },
  "title": "PURRDF instance schema (SHACL-derived, closed-world)",
  "type": "object"
}

== ontology-complete openapi
{
  "components": {
    "schemas": {
      "Agent": {
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "ex:label": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:name": {
            "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:normalizedString"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:token"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:language"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:Name"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NCName"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NMTOKEN"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "properties": {
                  "@id": {
                    "type": "string"
                  }
                },
                "required": [
                  "@id"
                ],
                "type": "object"
              }
            ]
          },
          "ex:nick": {
            "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:normalizedString"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:token"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:language"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:Name"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NCName"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NMTOKEN"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "properties": {
                  "@id": {
                    "type": "string"
                  }
                },
                "required": [
                  "@id"
                ],
                "type": "object"
              }
            ]
          }
        },
        "type": "object"
      },
      "Annotation": {
        "additionalProperties": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "boolean"
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            },
            {
              "properties": {
                "@type": {
                  "type": "string"
                },
                "@value": {}
              },
              "required": [
                "@value"
              ],
              "type": "object"
            }
          ]
        },
        "description": "Free-form metadata about an asserted triple (e.g. meta:accordingTo, meta:confidence, meta:assertedAt). Permissive.",
        "title": "RDF-1.2 statement metadata (reifier annotation)",
        "type": "object"
      },
      "Group": {
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "ex:label": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          }
        },
        "type": "object"
      },
      "Literal": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "boolean"
          },
          {
            "properties": {
              "@direction": {
                "enum": [
                  "ltr",
                  "rtl"
                ]
              },
              "@language": {
                "pattern": "^[a-zA-Z]{1,8}(?:-[a-zA-Z0-9]{1,8})*$",
                "type": "string"
              },
              "@value": {
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@language"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:boolean"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:true|false|1|0)[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:decimal"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0+\\.(?:|[0-9]+)|\\.(?:[0-9]+)|0*(?:[1-9][0-9]*)|0*(?:[1-9][0-9]*)\\.(?:|[0-9]+)))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:double"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?|-?INF|NaN)[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:float"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?|-?INF|NaN)[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:integer"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0*(?:[1-9][0-9]*)))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:nonPositiveInteger"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:negativeInteger"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:-(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:long"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-7][0-9]{0})|0*(?:9223372036854775808)))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6][0-9]{0})|0*(?:9223372036854775807)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:int"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-7][0-9]{0})|0*(?:2147483648)))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-6][0-9]{0})|0*(?:2147483647)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:short"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-7][0-9]{0})|0*(?:32768)))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-6][0-9]{0})|0*(?:32767)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:byte"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-7][0-9]{0})|0*(?:128)))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-6][0-9]{0})|0*(?:127)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:nonNegativeInteger"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:unsignedLong"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,18}|1[0-7][0-9]{18}|18[0-3][0-9]{17}|184[0-3][0-9]{16}|1844[0-5][0-9]{15}|18446[0-6][0-9]{14}|184467[0-3][0-9]{13}|1844674[0-3][0-9]{12}|184467440[0-6][0-9]{10}|1844674407[0-2][0-9]{9}|18446744073[0-6][0-9]{8}|1844674407370[0-8][0-9]{6}|18446744073709[0-4][0-9]{5}|184467440737095[0-4][0-9]{4}|18446744073709550[0-9]{3}|18446744073709551[0-5][0-9]{2}|1844674407370955160[0-9]{1}|1844674407370955161[0-4][0-9]{0})|0*(?:18446744073709551615)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:unsignedInt"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|[1-3][0-9]{9}|4[0-1][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[0-1][0-9]{2}|42949672[0-8][0-9]{1}|429496729[0-4][0-9]{0})|0*(?:4294967295)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:unsignedShort"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-4][0-9]{0})|0*(?:65535)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:unsignedByte"
              },
              "@value": {
                "allOf": [
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                    "type": "string"
                  },
                  {
                    "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]{1}|25[0-4][0-9]{0})|0*(?:255)))[\\t\\n\\r ]*$",
                    "type": "string"
                  }
                ],
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:positiveInteger"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:string"
              },
              "@value": {
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:normalizedString"
              },
              "@value": {
                "pattern": "^(?:[^\\t\\n\\r]*)$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:token"
              },
              "@value": {
                "pattern": "^(?:([^\\t\\n\\r ]+( [^\\t\\n\\r ]+)*)?)$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:language"
              },
              "@value": {
                "pattern": "^(?:[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*)$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:Name"
              },
              "@value": {
                "pattern": "^(?:[:A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿][:A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿\\-.0-9·̀-ͯ‿-⁀]*)$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:NCName"
              },
              "@value": {
                "pattern": "^(?:[A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿][A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿\\-.0-9·̀-ͯ‿-⁀]*)$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:NMTOKEN"
              },
              "@value": {
                "pattern": "^(?:[:A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿\\-.0-9·̀-ͯ‿-⁀]+)$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:dateTime"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:-?(?:[1-9][0-9]{3,}|0[0-9]{3})-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12][0-9]|3[01])|(?:0[469]|11)-(?:0[1-9]|[12][0-9]|30)|02-(?:0[1-9]|1[0-9]|2[0-9]))T(?:(?:[01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](?:\\.[0-9]+)?|24:00:00(?:\\.0+)?)(?:Z|[+\\-](?:(?:0[0-9]|1[0-3]):[0-5][0-9]|14:00))?)[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:dateTimeStamp"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:-?(?:[1-9][0-9]{3,}|0[0-9]{3})-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12][0-9]|3[01])|(?:0[469]|11)-(?:0[1-9]|[12][0-9]|30)|02-(?:0[1-9]|1[0-9]|2[0-9]))T(?:(?:[01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](?:\\.[0-9]+)?|24:00:00(?:\\.0+)?)(?:Z|[+\\-](?:(?:0[0-9]|1[0-3]):[0-5][0-9]|14:00)))[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:hexBinary"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:(?:[0-9a-fA-F]{2})*)[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:base64Binary"
              },
              "@value": {
                "pattern": "^[\\t\\n\\r ]*(?:(?:(?:[A-Za-z0-9+/] ?){4})*(?:(?:[A-Za-z0-9+/] ?){3}[A-Za-z0-9+/]|(?:[A-Za-z0-9+/] ?){2}[AEIMQUYcgkosw048] ?=|[A-Za-z0-9+/] ?[AQgw] ?= ?=)?)[\\t\\n\\r ]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "xsd:anyURI"
              },
              "@value": {
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "owl:rational"
              },
              "@value": {
                "pattern": "^[+\\-]?[0-9]+/[0-9]*[1-9][0-9]*$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "const": "rdf:PlainLiteral"
              },
              "@value": {
                "pattern": "@(?:[a-zA-Z]{1,8}(?:-[a-zA-Z0-9]{1,8})*)?$",
                "type": "string"
              }
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "not": {
                  "enum": [
                    "xsd:boolean",
                    "xsd:decimal",
                    "xsd:double",
                    "xsd:float",
                    "xsd:integer",
                    "xsd:nonPositiveInteger",
                    "xsd:negativeInteger",
                    "xsd:long",
                    "xsd:int",
                    "xsd:short",
                    "xsd:byte",
                    "xsd:nonNegativeInteger",
                    "xsd:unsignedLong",
                    "xsd:unsignedInt",
                    "xsd:unsignedShort",
                    "xsd:unsignedByte",
                    "xsd:positiveInteger",
                    "xsd:string",
                    "xsd:normalizedString",
                    "xsd:token",
                    "xsd:language",
                    "xsd:Name",
                    "xsd:NCName",
                    "xsd:NMTOKEN",
                    "xsd:dateTime",
                    "xsd:dateTimeStamp",
                    "xsd:hexBinary",
                    "xsd:base64Binary",
                    "xsd:anyURI",
                    "owl:rational",
                    "owl:real",
                    "rdf:PlainLiteral",
                    "rdf:langString",
                    "rdf:dirLangString"
                  ]
                },
                "type": "string"
              },
              "@value": {}
            },
            "required": [
              "@value",
              "@type"
            ],
            "type": "object"
          }
        ]
      },
      "Node": {
        "allOf": [
          {
            "if": {
              "properties": {
                "@type": {
                  "anyOf": [
                    {
                      "const": "ex:Agent"
                    },
                    {
                      "contains": {
                        "const": "ex:Agent"
                      },
                      "type": "array"
                    }
                  ]
                }
              },
              "required": [
                "@type"
              ]
            },
            "then": {
              "$ref": "#/components/schemas/Agent"
            }
          },
          {
            "if": {
              "properties": {
                "@type": {
                  "anyOf": [
                    {
                      "const": "ex:Group"
                    },
                    {
                      "contains": {
                        "const": "ex:Group"
                      },
                      "type": "array"
                    }
                  ]
                }
              },
              "required": [
                "@type"
              ]
            },
            "then": {
              "$ref": "#/components/schemas/Group"
            }
          },
          {
            "if": {
              "properties": {
                "@type": {
                  "anyOf": [
                    {
                      "const": "ex:Org"
                    },
                    {
                      "contains": {
                        "const": "ex:Org"
                      },
                      "type": "array"
                    }
                  ]
                }
              },
              "required": [
                "@type"
              ]
            },
            "then": {
              "$ref": "#/components/schemas/Org"
            }
          },
          {
            "if": {
              "properties": {
                "@type": {
                  "anyOf": [
                    {
                      "const": "ex:Person"
                    },
                    {
                      "contains": {
                        "const": "ex:Person"
                      },
                      "type": "array"
                    }
                  ]
                }
              },
              "required": [
                "@type"
              ]
            },
            "then": {
              "$ref": "#/components/schemas/Person"
            }
          },
          {
            "if": {
              "properties": {
                "@type": {
                  "anyOf": [
                    {
                      "const": "ex:Team"
                    },
                    {
                      "contains": {
                        "const": "ex:Team"
                      },
                      "type": "array"
                    }
                  ]
                }
              },
              "required": [
                "@type"
              ]
            },
            "then": {
              "$ref": "#/components/schemas/Team"
            }
          }
        ],
        "description": "Validated by @type: a node typed ex:Foo MUST satisfy #/$defs/Foo (closed-world). Nodes typed only by unmodeled classes are permissively allowed.",
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          }
        },
        "title": "A single discriminated PURRDF instance node",
        "type": "object"
      },
      "Org": {
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "ex:code": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@type": {
                        "const": "ex:Code"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@type": {
                          "const": "ex:Code"
                        },
                        "@value": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:label": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:member": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "properties": {
                          "@id": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@id"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@list": {
                            "type": "array"
                          }
                        },
                        "required": [
                          "@list"
                        ],
                        "type": "object"
                      },
                      {
                        "$ref": "#/components/schemas/Person",
                        "properties": {
                          "@value": false
                        }
                      }
                    ]
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "anyOf": [
                        {
                          "properties": {
                            "@id": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "@id"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@list": {
                              "type": "array"
                            }
                          },
                          "required": [
                            "@list"
                          ],
                          "type": "object"
                        },
                        {
                          "$ref": "#/components/schemas/Person",
                          "properties": {
                            "@value": false
                          }
                        }
                      ]
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:name": {
            "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:normalizedString"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:token"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:language"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:Name"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NCName"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NMTOKEN"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "properties": {
                  "@id": {
                    "type": "string"
                  }
                },
                "required": [
                  "@id"
                ],
                "type": "object"
              }
            ]
          },
          "ex:nick": {
            "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:normalizedString"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:token"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:language"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:Name"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NCName"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NMTOKEN"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "properties": {
                  "@id": {
                    "type": "string"
                  }
                },
                "required": [
                  "@id"
                ],
                "type": "object"
              }
            ]
          },
          "ex:payload": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@type": {
                        "const": "rdf:JSON"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@type": {
                          "const": "rdf:JSON"
                        },
                        "@value": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@value",
                        "@type"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          }
        },
        "type": "object"
      },
      "Person": {
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "ex:age": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "not": {
                          "properties": {
                            "@value": {
                              "not": {
                                "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$"
                              },
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value"
                          ],
                          "type": "object"
                        },
                        "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$",
                        "properties": {
                          "@type": {
                            "const": "xsd:decimal"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0+\\.(?:|[0-9]+)|\\.(?:[0-9]+)|0*(?:[1-9][0-9]*)|0*(?:[1-9][0-9]*)\\.(?:|[0-9]+)))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "anyOf": [
                          {
                            "type": "integer"
                          },
                          {
                            "properties": {
                              "@type": {
                                "const": "xsd:integer"
                              },
                              "@value": {
                                "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0*(?:[1-9][0-9]*)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            },
                            "required": [
                              "@value",
                              "@type"
                            ],
                            "type": "object"
                          }
                        ]
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:nonPositiveInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:negativeInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:-(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:long"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-7][0-9]{0})|0*(?:9223372036854775808)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6][0-9]{0})|0*(?:9223372036854775807)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:int"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-7][0-9]{0})|0*(?:2147483648)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-6][0-9]{0})|0*(?:2147483647)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:short"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-7][0-9]{0})|0*(?:32768)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-6][0-9]{0})|0*(?:32767)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:byte"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-7][0-9]{0})|0*(?:128)))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-6][0-9]{0})|0*(?:127)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:nonNegativeInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedLong"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,18}|1[0-7][0-9]{18}|18[0-3][0-9]{17}|184[0-3][0-9]{16}|1844[0-5][0-9]{15}|18446[0-6][0-9]{14}|184467[0-3][0-9]{13}|1844674[0-3][0-9]{12}|184467440[0-6][0-9]{10}|1844674407[0-2][0-9]{9}|18446744073[0-6][0-9]{8}|1844674407370[0-8][0-9]{6}|18446744073709[0-4][0-9]{5}|184467440737095[0-4][0-9]{4}|18446744073709550[0-9]{3}|18446744073709551[0-5][0-9]{2}|1844674407370955160[0-9]{1}|1844674407370955161[0-4][0-9]{0})|0*(?:18446744073709551615)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedInt"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|[1-3][0-9]{9}|4[0-1][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[0-1][0-9]{2}|42949672[0-8][0-9]{1}|429496729[0-4][0-9]{0})|0*(?:4294967295)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedShort"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-4][0-9]{0})|0*(?:65535)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:unsignedByte"
                          },
                          "@value": {
                            "allOf": [
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                "type": "string"
                              },
                              {
                                "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]{1}|25[0-4][0-9]{0})|0*(?:255)))[\\t\\n\\r ]*$",
                                "type": "string"
                              }
                            ],
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "xsd:positiveInteger"
                          },
                          "@value": {
                            "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@type": {
                            "const": "owl:rational"
                          },
                          "@value": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@value",
                          "@type"
                        ],
                        "type": "object"
                      }
                    ]
                  },
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "anyOf": [
                        {
                          "not": {
                            "properties": {
                              "@value": {
                                "not": {
                                  "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$"
                                },
                                "type": "string"
                              }
                            },
                            "required": [
                              "@value"
                            ],
                            "type": "object"
                          },
                          "pattern": "^(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*(?:[\\u{2b}\\u{2d}])?((?:(?:[0-9])+(?:(\\u{2e}(?:0)*))?|\\u{2e}(?:0)+))(?:[\\u{9}-\\u{a}\\u{d}\\u{20}])*$",
                          "properties": {
                            "@type": {
                              "const": "xsd:decimal"
                            },
                            "@value": {
                              "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0+\\.(?:|[0-9]+)|\\.(?:[0-9]+)|0*(?:[1-9][0-9]*)|0*(?:[1-9][0-9]*)\\.(?:|[0-9]+)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "properties": {
                                "@type": {
                                  "const": "xsd:integer"
                                },
                                "@value": {
                                  "pattern": "^[\\t\\n\\r ]*(?:[+\\-]?(?:0+|0*(?:[1-9][0-9]*)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              },
                              "required": [
                                "@value",
                                "@type"
                              ],
                              "type": "object"
                            }
                          ]
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:nonPositiveInteger"
                            },
                            "@value": {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:negativeInteger"
                            },
                            "@value": {
                              "pattern": "^[\\t\\n\\r ]*(?:-(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:long"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-7][0-9]{0})|0*(?:9223372036854775808)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6][0-9]{0})|0*(?:9223372036854775807)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:int"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-7][0-9]{0})|0*(?:2147483648)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|1[0-9]{9}|20[0-9]{8}|21[0-3][0-9]{7}|214[0-6][0-9]{6}|2147[0-3][0-9]{5}|21474[0-7][0-9]{4}|214748[0-2][0-9]{3}|2147483[0-5][0-9]{2}|21474836[0-3][0-9]{1}|214748364[0-6][0-9]{0})|0*(?:2147483647)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:short"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-7][0-9]{0})|0*(?:32768)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-2][0-9]{4}|3[0-1][0-9]{3}|32[0-6][0-9]{2}|327[0-5][0-9]{1}|3276[0-6][0-9]{0})|0*(?:32767)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:byte"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-7][0-9]{0})|0*(?:128)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-1][0-9]{1}|12[0-6][0-9]{0})|0*(?:127)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:nonNegativeInteger"
                            },
                            "@value": {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:unsignedLong"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,18}|1[0-7][0-9]{18}|18[0-3][0-9]{17}|184[0-3][0-9]{16}|1844[0-5][0-9]{15}|18446[0-6][0-9]{14}|184467[0-3][0-9]{13}|1844674[0-3][0-9]{12}|184467440[0-6][0-9]{10}|1844674407[0-2][0-9]{9}|18446744073[0-6][0-9]{8}|1844674407370[0-8][0-9]{6}|18446744073709[0-4][0-9]{5}|184467440737095[0-4][0-9]{4}|18446744073709550[0-9]{3}|18446744073709551[0-5][0-9]{2}|1844674407370955160[0-9]{1}|1844674407370955161[0-4][0-9]{0})|0*(?:18446744073709551615)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:unsignedInt"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,8}|[1-3][0-9]{9}|4[0-1][0-9]{8}|42[0-8][0-9]{7}|429[0-3][0-9]{6}|4294[0-8][0-9]{5}|42949[0-5][0-9]{4}|429496[0-6][0-9]{3}|4294967[0-1][0-9]{2}|42949672[0-8][0-9]{1}|429496729[0-4][0-9]{0})|0*(?:4294967295)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:unsignedShort"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]{1}|6553[0-4][0-9]{0})|0*(?:65535)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:unsignedByte"
                            },
                            "@value": {
                              "allOf": [
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0+|0*(?:[1-9][0-9]*))|-(?:0+))[\\t\\n\\r ]*$",
                                  "type": "string"
                                },
                                {
                                  "pattern": "^[\\t\\n\\r ]*(?:-(?:0+|0*(?:[1-9][0-9]*))|\\+?(?:0+|0*(?:[1-9][0-9]{0,1}|1[0-9]{2}|2[0-4][0-9]{1}|25[0-4][0-9]{0})|0*(?:255)))[\\t\\n\\r ]*$",
                                  "type": "string"
                                }
                              ],
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "xsd:positiveInteger"
                            },
                            "@value": {
                              "pattern": "^[\\t\\n\\r ]*(?:\\+?(?:0*(?:[1-9][0-9]{1,}|[2-9][0-9]{0})|0*(?:1)))[\\t\\n\\r ]*$",
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@type": {
                              "const": "owl:rational"
                            },
                            "@value": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "@value",
                            "@type"
                          ],
                          "type": "object"
                        }
                      ]
                    },
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:knows": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "properties": {
                          "@id": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@id"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@list": {
                            "type": "array"
                          }
                        },
                        "required": [
                          "@list"
                        ],
                        "type": "object"
                      },
                      {
                        "$ref": "#/components/schemas/Person",
                        "properties": {
                          "@value": false
                        }
                      }
                    ]
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "anyOf": [
                        {
                          "properties": {
                            "@id": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "@id"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@list": {
                              "type": "array"
                            }
                          },
                          "required": [
                            "@list"
                          ],
                          "type": "object"
                        },
                        {
                          "$ref": "#/components/schemas/Person",
                          "properties": {
                            "@value": false
                          }
                        }
                      ]
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:label": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:memberOf": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "anyOf": [
                      {
                        "properties": {
                          "@id": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "@id"
                        ],
                        "type": "object"
                      },
                      {
                        "properties": {
                          "@list": {
                            "type": "array"
                          }
                        },
                        "required": [
                          "@list"
                        ],
                        "type": "object"
                      },
                      {
                        "$ref": "#/components/schemas/Org",
                        "properties": {
                          "@value": false
                        }
                      }
                    ]
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "anyOf": [
                        {
                          "properties": {
                            "@id": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "@id"
                          ],
                          "type": "object"
                        },
                        {
                          "properties": {
                            "@list": {
                              "type": "array"
                            }
                          },
                          "required": [
                            "@list"
                          ],
                          "type": "object"
                        },
                        {
                          "$ref": "#/components/schemas/Org",
                          "properties": {
                            "@value": false
                          }
                        }
                      ]
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          },
          "ex:name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "minItems": 1,
                "type": "array"
              }
            ]
          },
          "ex:nick": {
            "$comment": "Optional OWL/RDFS-derived property; owl:FunctionalProperty is represented as a scalar approximation.",
            "anyOf": [
              {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:normalizedString"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:token"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:language"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:Name"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NCName"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@type": {
                        "const": "xsd:NMTOKEN"
                      },
                      "@value": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@value",
                      "@type"
                    ],
                    "type": "object"
                  }
                ]
              },
              {
                "properties": {
                  "@id": {
                    "type": "string"
                  }
                },
                "required": [
                  "@id"
                ],
                "type": "object"
              }
            ]
          }
        },
        "required": [
          "ex:name"
        ],
        "type": "object"
      },
      "Team": {
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "ex:label": {
            "anyOf": [
              {
                "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                "anyOf": [
                  {
                    "properties": {
                      "@id": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "@id"
                    ],
                    "type": "object"
                  },
                  {
                    "properties": {
                      "@list": {
                        "type": "array"
                      }
                    },
                    "required": [
                      "@list"
                    ],
                    "type": "object"
                  },
                  {
                    "$ref": "#/components/schemas/Literal"
                  }
                ]
              },
              {
                "items": {
                  "$comment": "Optional OWL/RDFS-derived property; multiple values remain permitted.",
                  "anyOf": [
                    {
                      "properties": {
                        "@id": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "@id"
                      ],
                      "type": "object"
                    },
                    {
                      "properties": {
                        "@list": {
                          "type": "array"
                        }
                      },
                      "required": [
                        "@list"
                      ],
                      "type": "object"
                    },
                    {
                      "$ref": "#/components/schemas/Literal"
                    }
                  ]
                },
                "type": "array"
              }
            ]
          }
        },
        "type": "object"
      }
    }
  },
  "info": {
    "title": "PURRDF",
    "version": "4.0.0"
  },
  "openapi": "3.1.0",
  "paths": {
    "/entities/{id}": {
      "get": {
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/ld+json": {
                "schema": {
                  "type": "object"
                }
              }
            },
            "description": "The requested entity as a JSON-LD node."
          }
        },
        "summary": "Fetch a single PURRDF entity by id"
      }
    }
  }
}

== ontology-complete coverage
{
  "mode": "ontology_complete",
  "properties": [
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#DatatypeProperty"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/age"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#DatatypeProperty"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/code"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#ObjectProperty"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/knows"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2002/07/owl#AnnotationProperty"
      ],
      "outcomes": [
        "included_unshaped"
      ],
      "property_iri": "https://example.org/schema/label"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2002/07/owl#ObjectProperty",
        "http://www.w3.org/2002/07/owl#inverseOf:object"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/member"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#ObjectProperty",
        "http://www.w3.org/2002/07/owl#inverseOf:subject"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/memberOf"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "has_shape",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2000/01/rdf-schema#subPropertyOf:object",
        "http://www.w3.org/2002/07/owl#DatatypeProperty",
        "http://www.w3.org/2002/07/owl#FunctionalProperty",
        "sh:path"
      ],
      "outcomes": [
        "has_shape",
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/name"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#subPropertyOf:subject"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/nick"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "representation_approximation",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "included_unshaped",
          "synthesized_open_class": true
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_domain",
          "synthesized_open_class": true
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#ObjectProperty"
      ],
      "outcomes": [
        "included_unshaped",
        "excluded_domain"
      ],
      "property_iri": "https://example.org/schema/payload"
    }
  ]
}

== shaped-only schema
{
  "$defs": {
    "Annotation": {
      "additionalProperties": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "number"
          },
          {
            "type": "boolean"
          },
          {
            "properties": {
              "@id": {
                "type": "string"
              }
            },
            "required": [
              "@id"
            ],
            "type": "object"
          },
          {
            "properties": {
              "@type": {
                "type": "string"
              },
              "@value": {}
            },
            "required": [
              "@value"
            ],
            "type": "object"
          }
        ]
      },
      "description": "Free-form metadata about an asserted triple (e.g. meta:accordingTo, meta:confidence, meta:assertedAt). Permissive.",
      "title": "RDF-1.2 statement metadata (reifier annotation)",
      "type": "object"
    },
    "Node": {
      "allOf": [
        {
          "if": {
            "properties": {
              "@type": {
                "anyOf": [
                  {
                    "const": "ex:Person"
                  },
                  {
                    "contains": {
                      "const": "ex:Person"
                    },
                    "type": "array"
                  }
                ]
              }
            },
            "required": [
              "@type"
            ]
          },
          "then": {
            "$ref": "#/$defs/Person"
          }
        }
      ],
      "description": "Validated by @type: a node typed ex:Foo MUST satisfy #/$defs/Foo (closed-world). Nodes typed only by unmodeled classes are permissively allowed.",
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        }
      },
      "title": "A single discriminated PURRDF instance node",
      "type": "object"
    },
    "Person": {
      "properties": {
        "@annotation": {
          "$ref": "#/$defs/Annotation"
        },
        "@id": {
          "type": "string"
        },
        "@type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          ]
        },
        "ex:name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {
                "type": "string"
              },
              "minItems": 1,
              "type": "array"
            }
          ]
        }
      },
      "required": [
        "ex:name"
      ],
      "type": "object"
    }
  },
  "$id": "https://example.org/schema/schema/instance.schema.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "anyOf": [
    {
      "properties": {
        "@context": true,
        "@graph": {
          "items": {
            "$ref": "#/$defs/Node"
          },
          "type": "array"
        }
      },
      "required": [
        "@graph"
      ],
      "type": "object"
    },
    {
      "$ref": "#/$defs/Node"
    }
  ],
  "properties": {
    "@context": true,
    "@graph": {
      "items": {
        "$ref": "#/$defs/Node"
      },
      "type": "array"
    }
  },
  "title": "PURRDF instance schema (SHACL-derived, closed-world)",
  "type": "object"
}

== shaped-only openapi
{
  "components": {
    "schemas": {
      "Annotation": {
        "additionalProperties": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "number"
            },
            {
              "type": "boolean"
            },
            {
              "properties": {
                "@id": {
                  "type": "string"
                }
              },
              "required": [
                "@id"
              ],
              "type": "object"
            },
            {
              "properties": {
                "@type": {
                  "type": "string"
                },
                "@value": {}
              },
              "required": [
                "@value"
              ],
              "type": "object"
            }
          ]
        },
        "description": "Free-form metadata about an asserted triple (e.g. meta:accordingTo, meta:confidence, meta:assertedAt). Permissive.",
        "title": "RDF-1.2 statement metadata (reifier annotation)",
        "type": "object"
      },
      "Node": {
        "allOf": [
          {
            "if": {
              "properties": {
                "@type": {
                  "anyOf": [
                    {
                      "const": "ex:Person"
                    },
                    {
                      "contains": {
                        "const": "ex:Person"
                      },
                      "type": "array"
                    }
                  ]
                }
              },
              "required": [
                "@type"
              ]
            },
            "then": {
              "$ref": "#/components/schemas/Person"
            }
          }
        ],
        "description": "Validated by @type: a node typed ex:Foo MUST satisfy #/$defs/Foo (closed-world). Nodes typed only by unmodeled classes are permissively allowed.",
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          }
        },
        "title": "A single discriminated PURRDF instance node",
        "type": "object"
      },
      "Person": {
        "properties": {
          "@annotation": {
            "$ref": "#/components/schemas/Annotation"
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            ]
          },
          "ex:name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "items": {
                  "type": "string"
                },
                "minItems": 1,
                "type": "array"
              }
            ]
          }
        },
        "required": [
          "ex:name"
        ],
        "type": "object"
      }
    }
  },
  "info": {
    "title": "PURRDF",
    "version": "4.0.0"
  },
  "openapi": "3.1.0",
  "paths": {
    "/entities/{id}": {
      "get": {
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/ld+json": {
                "schema": {
                  "type": "object"
                }
              }
            },
            "description": "The requested entity as a JSON-LD node."
          }
        },
        "summary": "Fetch a single PURRDF entity by id"
      }
    }
  }
}

== shaped-only coverage
{
  "mode": "shaped_only",
  "properties": [
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/age"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#integer>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/age"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#DatatypeProperty"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/age"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/code"
            },
            {
              "object": "<https://example.org/schema/Code>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/code"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#DatatypeProperty"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/code"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/knows"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/knows"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#ObjectProperty"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/knows"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#AnnotationProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/label"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2002/07/owl#AnnotationProperty"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/label"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/member"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2002/07/owl#ObjectProperty",
        "http://www.w3.org/2002/07/owl#inverseOf:object"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/member"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Person>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/memberOf"
            },
            {
              "object": "<https://example.org/schema/member>",
              "predicate": "http://www.w3.org/2002/07/owl#inverseOf",
              "subject": "https://example.org/schema/memberOf"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#ObjectProperty",
        "http://www.w3.org/2002/07/owl#inverseOf:subject"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/memberOf"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "has_shape",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/ns/shacl#path",
              "subject": "https://example.org/schema/Person"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#DatatypeProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2000/01/rdf-schema#subPropertyOf:object",
        "http://www.w3.org/2002/07/owl#DatatypeProperty",
        "http://www.w3.org/2002/07/owl#FunctionalProperty",
        "sh:path"
      ],
      "outcomes": [
        "has_shape",
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/name"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#FunctionalProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/Agent>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<http://www.w3.org/2001/XMLSchema#string>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/name"
            },
            {
              "object": "<https://example.org/schema/name>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#subPropertyOf",
              "subject": "https://example.org/schema/nick"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#subPropertyOf:subject"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/nick"
    },
    {
      "classes": [
        {
          "class_iri": "https://example.org/schema/Agent",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Group",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Org",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Person",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        },
        {
          "class_iri": "https://example.org/schema/Team",
          "precision": "exact",
          "provenance": [
            {
              "object": "<http://www.w3.org/2002/07/owl#ObjectProperty>",
              "predicate": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<https://example.org/schema/Org>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#domain",
              "subject": "https://example.org/schema/payload"
            },
            {
              "object": "<http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON>",
              "predicate": "http://www.w3.org/2000/01/rdf-schema#range",
              "subject": "https://example.org/schema/payload"
            }
          ],
          "status": "excluded_shaped_only",
          "synthesized_open_class": false
        }
      ],
      "declarations": [
        "http://www.w3.org/2000/01/rdf-schema#domain",
        "http://www.w3.org/2000/01/rdf-schema#range",
        "http://www.w3.org/2002/07/owl#ObjectProperty"
      ],
      "outcomes": [
        "excluded_shaped_only"
      ],
      "property_iri": "https://example.org/schema/payload"
    }
  ]
}

