{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://blue-core-lod.github.io/bibframe-json/schema/ontology.json",
  "title": "BIBFRAME domains and ranges, read as constraints",
  "$comment": "GENERATED by generate/from_ontology.py. Do not edit.\n\nFrom BIBFRAME 3.0.1, issued 2025-12-03T12:00:00-05:00.\n\nrdfs:domain and rdfs:range are inference rules under OWL and cannot be violated; this reads them as constraints instead, which is the flip SHACL makes. Violations are warnings rather than errors: when the data and the ontology disagree, the ontology is often the one that is behind.",
  "x-bibframe-version": "3.0.1",
  "x-skipped": {
    "domain ensembleSize": "declares bf:Work; every use is on bf:Ensemble, as with mediumComponent.",
    "domain mediumComponent": "declares bf:Work; every use is on bf:Ensemble, which is not a Work subclass. Music modeling the ontology has not caught up with.",
    "range mediumOfPerformance": "declares bf:MediumOfPerformance; every use points at mads:Medium, a class from a vocabulary BIBFRAME does not reference.",
    "domain relief": "declares bf:Instance; every use is on bf:Cartographic, a Work. The ontology looks simply wrong -- relief is a work-level characteristic. Worth reporting upstream."
  },
  "type": "object",
  "$ref": "#/$defs/node",
  "$defs": {
    "class": {
      "AdminMetadata": {
        "$comment": "AdminMetadata or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "AdminMetadata"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "AdminMetadata"
              ]
            }
          }
        ]
      },
      "Agent": {
        "$comment": "Agent or a subclass (6 accepted)",
        "anyOf": [
          {
            "enum": [
              "Agent",
              "Family",
              "Jurisdiction",
              "Meeting",
              "Organization",
              "Person"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Agent",
                "Family",
                "Jurisdiction",
                "Meeting",
                "Organization",
                "Person"
              ]
            }
          }
        ]
      },
      "AspectRatio": {
        "$comment": "AspectRatio or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "AspectRatio"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "AspectRatio"
              ]
            }
          }
        ]
      },
      "BookFormat": {
        "$comment": "BookFormat or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "BookFormat"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "BookFormat"
              ]
            }
          }
        ]
      },
      "Capture": {
        "$comment": "Capture or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Capture"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Capture"
              ]
            }
          }
        ]
      },
      "Cartographic": {
        "$comment": "Cartographic or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Cartographic"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Cartographic"
              ]
            }
          }
        ]
      },
      "Classification": {
        "$comment": "Classification or a subclass (6 accepted)",
        "anyOf": [
          {
            "enum": [
              "Classification",
              "ClassificationDdc",
              "ClassificationLcc",
              "ClassificationNal",
              "ClassificationNlm",
              "ClassificationUdc"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Classification",
                "ClassificationDdc",
                "ClassificationLcc",
                "ClassificationNal",
                "ClassificationNlm",
                "ClassificationUdc"
              ]
            }
          }
        ]
      },
      "CollectionArrangement": {
        "$comment": "CollectionArrangement or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "CollectionArrangement"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "CollectionArrangement"
              ]
            }
          }
        ]
      },
      "ColorContent": {
        "$comment": "ColorContent or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "ColorContent"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "ColorContent"
              ]
            }
          }
        ]
      },
      "ContentAccessibility": {
        "$comment": "ContentAccessibility or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "ContentAccessibility"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "ContentAccessibility"
              ]
            }
          }
        ]
      },
      "Contribution": {
        "$comment": "Contribution or a subclass (2 accepted)",
        "anyOf": [
          {
            "enum": [
              "Contribution",
              "PrimaryContribution"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Contribution",
                "PrimaryContribution"
              ]
            }
          }
        ]
      },
      "CopyrightRegistration": {
        "$comment": "CopyrightRegistration or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "CopyrightRegistration"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "CopyrightRegistration"
              ]
            }
          }
        ]
      },
      "CoverArt": {
        "$comment": "CoverArt or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "CoverArt"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "CoverArt"
              ]
            }
          }
        ]
      },
      "DescriptionAuthentication": {
        "$comment": "DescriptionAuthentication or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "DescriptionAuthentication"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "DescriptionAuthentication"
              ]
            }
          }
        ]
      },
      "DescriptionConventions": {
        "$comment": "DescriptionConventions or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "DescriptionConventions"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "DescriptionConventions"
              ]
            }
          }
        ]
      },
      "DescriptionLevel": {
        "$comment": "DescriptionLevel or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "DescriptionLevel"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "DescriptionLevel"
              ]
            }
          }
        ]
      },
      "DigitalCharacteristic": {
        "$comment": "DigitalCharacteristic or a subclass (10 accepted)",
        "anyOf": [
          {
            "enum": [
              "CartographicDataType",
              "CartographicObjectType",
              "DigitalCharacteristic",
              "EncodedBitrate",
              "EncodingFormat",
              "FileSize",
              "FileType",
              "ObjectCount",
              "RegionalEncoding",
              "Resolution"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "CartographicDataType",
                "CartographicObjectType",
                "DigitalCharacteristic",
                "EncodedBitrate",
                "EncodingFormat",
                "FileSize",
                "FileType",
                "ObjectCount",
                "RegionalEncoding",
                "Resolution"
              ]
            }
          }
        ]
      },
      "Dissertation": {
        "$comment": "Dissertation or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Dissertation"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Dissertation"
              ]
            }
          }
        ]
      },
      "DramaticRole": {
        "$comment": "DramaticRole or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "DramaticRole"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "DramaticRole"
              ]
            }
          }
        ]
      },
      "Emulsion": {
        "$comment": "Emulsion or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Emulsion"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Emulsion"
              ]
            }
          }
        ]
      },
      "Ensemble": {
        "$comment": "Ensemble or a subclass (2 accepted)",
        "anyOf": [
          {
            "enum": [
              "Ensemble",
              "MusicEnsemble"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Ensemble",
                "MusicEnsemble"
              ]
            }
          }
        ]
      },
      "EnsembleSize": {
        "$comment": "EnsembleSize or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "EnsembleSize"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "EnsembleSize"
              ]
            }
          }
        ]
      },
      "EnumerationAndChronology": {
        "$comment": "EnumerationAndChronology or a subclass (3 accepted)",
        "anyOf": [
          {
            "enum": [
              "Chronology",
              "Enumeration",
              "EnumerationAndChronology"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Chronology",
                "Enumeration",
                "EnumerationAndChronology"
              ]
            }
          }
        ]
      },
      "Event": {
        "$comment": "Event or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Event"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Event"
              ]
            }
          }
        ]
      },
      "Extent": {
        "$comment": "Extent or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Extent"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Extent"
              ]
            }
          }
        ]
      },
      "FontSize": {
        "$comment": "FontSize or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "FontSize"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "FontSize"
              ]
            }
          }
        ]
      },
      "Frequency": {
        "$comment": "Frequency or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Frequency"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Frequency"
              ]
            }
          }
        ]
      },
      "Generation": {
        "$comment": "Generation or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Generation"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Generation"
              ]
            }
          }
        ]
      },
      "GenerationProcess": {
        "$comment": "GenerationProcess or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "GenerationProcess"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "GenerationProcess"
              ]
            }
          }
        ]
      },
      "Identifier": {
        "$comment": "Identifier or a subclass (53 accepted)",
        "anyOf": [
          {
            "enum": [
              "AccessionNumber",
              "Ansi",
              "AudioIssueNumber",
              "AudioTake",
              "Barcode",
              "Coden",
              "CopyrightNumber",
              "DissertationIdentifier",
              "Doi",
              "Ean",
              "Eidr",
              "Fingerprint",
              "Gtin14Number",
              "Hdl",
              "Identifier",
              "Isan",
              "Isbn",
              "Ismn",
              "Isni",
              "Iso",
              "Isrc",
              "Issn",
              "IssnL",
              "Istc",
              "Iswc",
              "LcOverseasAcq",
              "Lccn",
              "Local",
              "MatrixNumber",
              "MusicDistributorNumber",
              "MusicPlate",
              "MusicPublisherNumber",
              "Nbn",
              "OclcNumber",
              "OpusNumber",
              "PostalRegistration",
              "PublisherNumber",
              "ReportNumber",
              "SerialNumber",
              "ShelfMark",
              "ShelfMarkDdc",
              "ShelfMarkLcc",
              "ShelfMarkNlm",
              "ShelfMarkUdc",
              "Sici",
              "StockNumber",
              "Strn",
              "StudyNumber",
              "ThematicCatalogNumber",
              "Upc",
              "Urn",
              "VideoRecordingNumber",
              "VideogamePlatformId"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "AccessionNumber",
                "Ansi",
                "AudioIssueNumber",
                "AudioTake",
                "Barcode",
                "Coden",
                "CopyrightNumber",
                "DissertationIdentifier",
                "Doi",
                "Ean",
                "Eidr",
                "Fingerprint",
                "Gtin14Number",
                "Hdl",
                "Identifier",
                "Isan",
                "Isbn",
                "Ismn",
                "Isni",
                "Iso",
                "Isrc",
                "Issn",
                "IssnL",
                "Istc",
                "Iswc",
                "LcOverseasAcq",
                "Lccn",
                "Local",
                "MatrixNumber",
                "MusicDistributorNumber",
                "MusicPlate",
                "MusicPublisherNumber",
                "Nbn",
                "OclcNumber",
                "OpusNumber",
                "PostalRegistration",
                "PublisherNumber",
                "ReportNumber",
                "SerialNumber",
                "ShelfMark",
                "ShelfMarkDdc",
                "ShelfMarkLcc",
                "ShelfMarkNlm",
                "ShelfMarkUdc",
                "Sici",
                "StockNumber",
                "Strn",
                "StudyNumber",
                "ThematicCatalogNumber",
                "Upc",
                "Urn",
                "VideoRecordingNumber",
                "VideogamePlatformId"
              ]
            }
          }
        ]
      },
      "Illustration": {
        "$comment": "Illustration or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Illustration"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Illustration"
              ]
            }
          }
        ]
      },
      "ImmediateAcquisition": {
        "$comment": "ImmediateAcquisition or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "ImmediateAcquisition"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "ImmediateAcquisition"
              ]
            }
          }
        ]
      },
      "Instance": {
        "$comment": "Instance or a subclass (6 accepted)",
        "anyOf": [
          {
            "enum": [
              "Archival",
              "Electronic",
              "Instance",
              "Microform",
              "Print",
              "Tactile"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Archival",
                "Electronic",
                "Instance",
                "Microform",
                "Print",
                "Tactile"
              ]
            }
          }
        ]
      },
      "Issuance": {
        "$comment": "Issuance or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Issuance"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Issuance"
              ]
            }
          }
        ]
      },
      "Item": {
        "$comment": "Item or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Item"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Item"
              ]
            }
          }
        ]
      },
      "KeyMode": {
        "$comment": "KeyMode or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "KeyMode"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "KeyMode"
              ]
            }
          }
        ]
      },
      "Language": {
        "$comment": "Language or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Language"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Language"
              ]
            }
          }
        ]
      },
      "Layout": {
        "$comment": "Layout or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Layout"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Layout"
              ]
            }
          }
        ]
      },
      "MediumComponent": {
        "$comment": "MediumComponent or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MediumComponent"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MediumComponent"
              ]
            }
          }
        ]
      },
      "MediumComponentQualifer": {
        "$comment": "MediumComponentQualifer or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MediumComponentQualifer"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MediumComponentQualifer"
              ]
            }
          }
        ]
      },
      "MediumOfPerformance": {
        "$comment": "MediumOfPerformance or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MediumOfPerformance"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MediumOfPerformance"
              ]
            }
          }
        ]
      },
      "Mode": {
        "$comment": "Mode or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Mode"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Mode"
              ]
            }
          }
        ]
      },
      "MusicFormat": {
        "$comment": "MusicFormat or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MusicFormat"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MusicFormat"
              ]
            }
          }
        ]
      },
      "MusicInstrument": {
        "$comment": "MusicInstrument or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MusicInstrument"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MusicInstrument"
              ]
            }
          }
        ]
      },
      "MusicMedium": {
        "$comment": "MusicMedium or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MusicMedium"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MusicMedium"
              ]
            }
          }
        ]
      },
      "MusicVoice": {
        "$comment": "MusicVoice or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "MusicVoice"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MusicVoice"
              ]
            }
          }
        ]
      },
      "Notation": {
        "$comment": "Notation or a subclass (5 accepted)",
        "anyOf": [
          {
            "enum": [
              "MovementNotation",
              "MusicNotation",
              "Notation",
              "Script",
              "TactileNotation"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "MovementNotation",
                "MusicNotation",
                "Notation",
                "Script",
                "TactileNotation"
              ]
            }
          }
        ]
      },
      "Note": {
        "$comment": "Note or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Note"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Note"
              ]
            }
          }
        ]
      },
      "Polarity": {
        "$comment": "Polarity or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Polarity"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Polarity"
              ]
            }
          }
        ]
      },
      "ProductionMethod": {
        "$comment": "ProductionMethod or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "ProductionMethod"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "ProductionMethod"
              ]
            }
          }
        ]
      },
      "Projection": {
        "$comment": "Projection or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Projection"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Projection"
              ]
            }
          }
        ]
      },
      "ProjectionCharacteristic": {
        "$comment": "ProjectionCharacteristic or a subclass (3 accepted)",
        "anyOf": [
          {
            "enum": [
              "PresentationFormat",
              "ProjectionCharacteristic",
              "ProjectionSpeed"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "PresentationFormat",
                "ProjectionCharacteristic",
                "ProjectionSpeed"
              ]
            }
          }
        ]
      },
      "ProvisionActivity": {
        "$comment": "ProvisionActivity or a subclass (6 accepted)",
        "anyOf": [
          {
            "enum": [
              "Distribution",
              "Manufacture",
              "Modification",
              "Production",
              "ProvisionActivity",
              "Publication"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Distribution",
                "Manufacture",
                "Modification",
                "Production",
                "ProvisionActivity",
                "Publication"
              ]
            }
          }
        ]
      },
      "PubFrequency": {
        "$comment": "PubFrequency or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "PubFrequency"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "PubFrequency"
              ]
            }
          }
        ]
      },
      "ReductionRatio": {
        "$comment": "ReductionRatio or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "ReductionRatio"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "ReductionRatio"
              ]
            }
          }
        ]
      },
      "Relation": {
        "$comment": "Relation or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Relation"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Relation"
              ]
            }
          }
        ]
      },
      "Relationship": {
        "$comment": "Relationship or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Relationship"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Relationship"
              ]
            }
          }
        ]
      },
      "Relief": {
        "$comment": "Relief or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Relief"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Relief"
              ]
            }
          }
        ]
      },
      "Review": {
        "$comment": "Review or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Review"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Review"
              ]
            }
          }
        ]
      },
      "Role": {
        "$comment": "Role or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Role"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Role"
              ]
            }
          }
        ]
      },
      "Scale": {
        "$comment": "Scale or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Scale"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Scale"
              ]
            }
          }
        ]
      },
      "ShelfMark": {
        "$comment": "ShelfMark or a subclass (5 accepted)",
        "anyOf": [
          {
            "enum": [
              "ShelfMark",
              "ShelfMarkDdc",
              "ShelfMarkLcc",
              "ShelfMarkNlm",
              "ShelfMarkUdc"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "ShelfMark",
                "ShelfMarkDdc",
                "ShelfMarkLcc",
                "ShelfMarkNlm",
                "ShelfMarkUdc"
              ]
            }
          }
        ]
      },
      "SoundCharacteristic": {
        "$comment": "SoundCharacteristic or a subclass (10 accepted)",
        "anyOf": [
          {
            "enum": [
              "CaptureStorage",
              "GrooveCharacteristic",
              "PlaybackChannels",
              "PlaybackCharacteristic",
              "PlayingSpeed",
              "RecordingMedium",
              "RecordingMethod",
              "SoundCharacteristic",
              "TapeConfig",
              "TrackConfig"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "CaptureStorage",
                "GrooveCharacteristic",
                "PlaybackChannels",
                "PlaybackCharacteristic",
                "PlayingSpeed",
                "RecordingMedium",
                "RecordingMethod",
                "SoundCharacteristic",
                "TapeConfig",
                "TrackConfig"
              ]
            }
          }
        ]
      },
      "SoundContent": {
        "$comment": "SoundContent or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "SoundContent"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "SoundContent"
              ]
            }
          }
        ]
      },
      "Source": {
        "$comment": "Source or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Source"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Source"
              ]
            }
          }
        ]
      },
      "Status": {
        "$comment": "Status or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Status"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Status"
              ]
            }
          }
        ]
      },
      "Sublocation": {
        "$comment": "Sublocation or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Sublocation"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Sublocation"
              ]
            }
          }
        ]
      },
      "Summary": {
        "$comment": "Summary or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Summary"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Summary"
              ]
            }
          }
        ]
      },
      "SupplementaryContent": {
        "$comment": "SupplementaryContent or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "SupplementaryContent"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "SupplementaryContent"
              ]
            }
          }
        ]
      },
      "SystemRequirement": {
        "$comment": "SystemRequirement or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "SystemRequirement"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "SystemRequirement"
              ]
            }
          }
        ]
      },
      "TableOfContents": {
        "$comment": "TableOfContents or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "TableOfContents"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "TableOfContents"
              ]
            }
          }
        ]
      },
      "Tempo": {
        "$comment": "Tempo or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Tempo"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Tempo"
              ]
            }
          }
        ]
      },
      "Title": {
        "$comment": "Title or a subclass (7 accepted)",
        "anyOf": [
          {
            "enum": [
              "AbbreviatedTitle",
              "CollectiveTitle",
              "KeyTitle",
              "ParallelTitle",
              "Title",
              "TransliteratedTitle",
              "VariantTitle"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "AbbreviatedTitle",
                "CollectiveTitle",
                "KeyTitle",
                "ParallelTitle",
                "Title",
                "TransliteratedTitle",
                "VariantTitle"
              ]
            }
          }
        ]
      },
      "Unit": {
        "$comment": "Unit or a subclass (1 accepted)",
        "anyOf": [
          {
            "enum": [
              "Unit"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Unit"
              ]
            }
          }
        ]
      },
      "UsageAndAccessPolicy": {
        "$comment": "UsageAndAccessPolicy or a subclass (4 accepted)",
        "anyOf": [
          {
            "enum": [
              "AccessPolicy",
              "RetentionPolicy",
              "UsageAndAccessPolicy",
              "UsePolicy"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "AccessPolicy",
                "RetentionPolicy",
                "UsageAndAccessPolicy",
                "UsePolicy"
              ]
            }
          }
        ]
      },
      "VariantTitle": {
        "$comment": "VariantTitle or a subclass (6 accepted)",
        "anyOf": [
          {
            "enum": [
              "AbbreviatedTitle",
              "CollectiveTitle",
              "KeyTitle",
              "ParallelTitle",
              "TransliteratedTitle",
              "VariantTitle"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "AbbreviatedTitle",
                "CollectiveTitle",
                "KeyTitle",
                "ParallelTitle",
                "TransliteratedTitle",
                "VariantTitle"
              ]
            }
          }
        ]
      },
      "VideoCharacteristic": {
        "$comment": "VideoCharacteristic or a subclass (3 accepted)",
        "anyOf": [
          {
            "enum": [
              "BroadcastStandard",
              "VideoCharacteristic",
              "VideoFormat"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "BroadcastStandard",
                "VideoCharacteristic",
                "VideoFormat"
              ]
            }
          }
        ]
      },
      "Work": {
        "$comment": "Work or a subclass (22 accepted)",
        "anyOf": [
          {
            "enum": [
              "Arrangement",
              "Audio",
              "Cartography",
              "Collection",
              "Dataset",
              "Integrating",
              "Kit",
              "Manuscript",
              "MixedMaterial",
              "Monograph",
              "MovingImage",
              "Multimedia",
              "MusicAudio",
              "NonMusicAudio",
              "NotatedMovement",
              "NotatedMusic",
              "Object",
              "Serial",
              "Series",
              "StillImage",
              "Text",
              "Work"
            ]
          },
          {
            "type": "array",
            "contains": {
              "enum": [
                "Arrangement",
                "Audio",
                "Cartography",
                "Collection",
                "Dataset",
                "Integrating",
                "Kit",
                "Manuscript",
                "MixedMaterial",
                "Monograph",
                "MovingImage",
                "Multimedia",
                "MusicAudio",
                "NonMusicAudio",
                "NotatedMovement",
                "NotatedMusic",
                "Object",
                "Serial",
                "Series",
                "StillImage",
                "Text",
                "Work"
              ]
            }
          }
        ]
      }
    },
    "literal": {
      "$comment": "rdfs:range rdfs:Literal: a literal rather than a reference. A plain string, number or boolean passes, and so does a value object; only a node with an @id fails.",
      "not": {
        "type": "object",
        "required": [
          "@id"
        ]
      }
    },
    "node": {
      "properties": {
        "acquisitionTerms": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "adminMetadata": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range AdminMetadata",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "arrangement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Work",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "arrangementOf": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Work",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "ascensionAndDeclination": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "aspectRatio": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range AspectRatio",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AspectRatio"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "assigner": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Agent",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Agent"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "awards": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "bookFormat": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range BookFormat",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/BookFormat"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "capture": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Capture",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Capture"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "cartographicAttributes": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Cartographic",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "changeDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "classification": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Classification",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "classificationPortion": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "code": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "collectionArrangement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range CollectionArrangement",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CollectionArrangement"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "collectionOrganization": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "colorContent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ColorContent",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ColorContent"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "contentAccessibility": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ContentAccessibility",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ContentAccessibility"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "contribution": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Contribution",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Contribution"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "coordinates": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "copyrightDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "copyrightRegistration": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range CopyrightRegistration",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CopyrightRegistration"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "count": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "coverArt": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range CoverArt",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CoverArt"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "creationDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "credits": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "custodialHistory": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "degree": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "descriptionAuthentication": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range DescriptionAuthentication",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/DescriptionAuthentication"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "descriptionConventions": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range DescriptionConventions",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/DescriptionConventions"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "descriptionLanguage": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Language",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Language"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "descriptionLevel": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range DescriptionLevel",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/DescriptionLevel"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "digitalCharacteristic": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range DigitalCharacteristic",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/DigitalCharacteristic"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "dimensions": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "dissertation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Dissertation",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Dissertation"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "distributionStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "dramaticRole": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range DramaticRole",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/DramaticRole"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "duration": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "edition": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "editionEnumeration": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "editionStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "emulsion": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Emulsion",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Emulsion"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "ensemble": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Ensemble",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Ensemble"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "ensembleSize": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range EnsembleSize",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/EnsembleSize"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "ensembleType": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "enumerationAndChronology": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range EnumerationAndChronology",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/EnumerationAndChronology"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "equinox": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "eventContent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Work",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "eventContentOf": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Event",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Event"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "exclusionGRing": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "extent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Extent",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Extent"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "firstIssue": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "fontSize": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range FontSize",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/FontSize"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "frequency": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Frequency",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Frequency"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "generation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Generation",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Generation"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "generationDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "generationProcess": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range GenerationProcess",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/GenerationProcess"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "hasInstance": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Instance",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "hasItem": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Item",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Item"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "hasReproduction": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Instance",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "hierarchicalLevel": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "historyOfWork": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "identifiedBy": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Identifier",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Identifier"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "illustrativeContent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Illustration",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Illustration"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "immediateAcquisition": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ImmediateAcquisition",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ImmediateAcquisition"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "instanceOf": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Work",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "instrument": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MusicInstrument",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MusicInstrument"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "instrumentalType": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "issuance": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Issuance",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Issuance"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "itemOf": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Instance",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "itemPortion": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "keyMode": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range KeyMode",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/KeyMode"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "lastIssue": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "layout": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Layout",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Layout"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "legalDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "mainTitle": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "manufactureStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "mediumComponent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MediumComponent",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MediumComponent"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "mediumComponentQualifier": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MediumComponentQualifer",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MediumComponentQualifer"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "mode": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Mode",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Mode"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "musicFormat": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MusicFormat",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MusicFormat"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "musicKey": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "musicMedium": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MusicMedium",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MusicMedium"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "musicOpusNumber": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "musicSerialNumber": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "musicThematicNumber": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "natureOfContent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "notation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Notation",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Notation"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "note": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Note",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Note"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "noteType": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "numberOfHands": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "outerGRing": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "part": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "partName": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "partNumber": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "pattern": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "phonogramDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "physicalLocation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "polarity": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Polarity",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Polarity"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "preferredCitation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "productionMethod": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ProductionMethod",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ProductionMethod"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "productionStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "projection": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Projection",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Projection"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "projectionCharacteristic": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ProjectionCharacteristic",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ProjectionCharacteristic"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "provisionActivity": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ProvisionActivity",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ProvisionActivity"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "provisionActivityStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "pubFrequency": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range PubFrequency",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/PubFrequency"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "publicationStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "qualifier": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "reductionRatio": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ReductionRatio",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ReductionRatio"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "relation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Relation",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Relation"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "relationship": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Relationship",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Relationship"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "relief": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Relief",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Relief"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "reproductionOf": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Instance",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "responsibilityStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "review": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Review",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Review"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "role": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Role",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Role"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "scale": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Scale",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Scale"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "schedulePart": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "seriesEnumeration": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "seriesStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "shelfMark": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range ShelfMark",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/ShelfMark"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "soundCharacteristic": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range SoundCharacteristic",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/SoundCharacteristic"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "soundContent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range SoundContent",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/SoundContent"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "source": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Source",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Source"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "spanEnd": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "status": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Status",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Status"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "sublocation": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Sublocation",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Sublocation"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "subseriesEnumeration": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "subseriesStatement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "subtitle": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "summary": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Summary",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Summary"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "supplementaryContent": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range SupplementaryContent",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/SupplementaryContent"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "systemRequirement": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range SystemRequirement",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/SystemRequirement"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "table": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "tableOfContents": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range TableOfContents",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/TableOfContents"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "tableSeq": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "tempo": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Tempo",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Tempo"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "temporalCoverage": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "title": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Title",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Title"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "unit": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range Unit",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Unit"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "usageAndAccessPolicy": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range UsageAndAccessPolicy",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/UsageAndAccessPolicy"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "usesMediumOfPerformance": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MediumOfPerformance",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MediumOfPerformance"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "validDate": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "variantType": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "version": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "videoCharacteristic": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range VideoCharacteristic",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/VideoCharacteristic"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "voice": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$comment": "rdfs:range MusicVoice",
                "if": {
                  "type": "object",
                  "required": [
                    "@type"
                  ]
                },
                "then": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MusicVoice"
                    }
                  }
                }
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        },
        "voiceType": {
          "type": "array",
          "items": {
            "allOf": [
              {
                "$ref": "#/$defs/literal"
              },
              {
                "$ref": "#/$defs/node"
              }
            ]
          }
        }
      },
      "additionalProperties": {
        "if": {
          "type": "array"
        },
        "then": {
          "items": {
            "$ref": "#/$defs/node"
          }
        }
      },
      "allOf": [
        {
          "$comment": "rdfs:domain AdminMetadata: where adminMetadataFor belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "adminMetadataFor"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where appliedMaterialOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "appliedMaterialOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where arrangement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "arrangement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where arrangementOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "arrangementOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Cartographic: where ascensionAndDeclination belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "ascensionAndDeclination"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Relation: where associatedResource belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Relation"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "associatedResource"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where baseMaterialOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "baseMaterialOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where binding belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "binding"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where bookFormat belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "bookFormat"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where carrier belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "carrier"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where changeDate belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "changeDate"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where classificationPortion belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "classificationPortion"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain CollectionArrangement: where collectionArrangementOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CollectionArrangement"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "collectionArrangementOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain CollectionArrangement: where collectionOrganization belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CollectionArrangement"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "collectionOrganization"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where content belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "content"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Contribution: where contributionOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Contribution"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "contributionOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Cartographic: where coordinates belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "coordinates"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where creationDate belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "creationDate"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Dissertation: where degree belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Dissertation"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "degree"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where derivedFrom belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "derivedFrom"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where descriptionAuthentication belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "descriptionAuthentication"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where descriptionConventions belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "descriptionConventions"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where descriptionLanguage belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "descriptionLanguage"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where descriptionLevel belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "descriptionLevel"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where descriptionModifier belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "descriptionModifier"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where digitalCharacteristic belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "digitalCharacteristic"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where dimensions belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "dimensions"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where distributionStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "distributionStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Contribution: where dramaticRole belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Contribution"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "dramaticRole"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where edition belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "edition"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where editionEnumeration belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "editionEnumeration"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where editionStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "editionStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where emulsion belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "emulsion"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where ensemble belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "ensemble"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Ensemble: where ensembleType belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Ensemble"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "ensembleType"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Cartographic: where equinox belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "equinox"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Event: where eventContent belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Event"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "eventContent"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where eventContentOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "eventContentOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Cartographic: where exclusionGRing belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "exclusionGRing"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where fontSize belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "fontSize"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where generation belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "generation"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where generationDate belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "generationDate"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain AdminMetadata: where generationProcess belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/AdminMetadata"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "generationProcess"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Dissertation: where grantingInstitution belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Dissertation"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "grantingInstitution"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where hasInstance belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "hasInstance"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where hasItem belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "hasItem"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where hasReproduction belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "hasReproduction"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Item: where heldBy belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Item"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "heldBy"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain CollectionArrangement: where hierarchicalLevel belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CollectionArrangement"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "hierarchicalLevel"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where historyOfWork belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "historyOfWork"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Identifier: where identifies belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Identifier"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "identifies"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where instanceOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "instanceOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where instrument belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "instrument"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain MusicInstrument: where instrumentalType belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MusicInstrument"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "instrumentalType"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Item: where itemOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Item"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "itemOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where itemPortion belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "itemPortion"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where layout belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "layout"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where legalDate belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "legalDate"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Title: where mainTitle belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Title"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "mainTitle"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where manufactureStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "manufactureStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain MediumComponent: where mediumComponentQualifier belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MediumComponent"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "mediumComponentQualifier"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where mount belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "mount"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where musicKey belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "musicKey"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where musicMedium belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "musicMedium"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where musicOpusNumber belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "musicOpusNumber"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where musicSerialNumber belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "musicSerialNumber"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where musicThematicNumber belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "musicThematicNumber"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Note: where noteFor belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Note"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "noteFor"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Note: where noteType belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Note"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "noteType"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain MediumComponent: where numberOfHands belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MediumComponent"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "numberOfHands"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where originDate belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "originDate"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Cartographic: where outerGRing belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "outerGRing"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Title: where partName belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Title"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "partName"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Title: where partNumber belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Title"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "partNumber"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain CollectionArrangement: where pattern belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/CollectionArrangement"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "pattern"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Item: where physicalLocation belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Item"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "physicalLocation"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where polarity belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "polarity"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where productionMethod belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "productionMethod"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where productionStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "productionStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Cartographic: where projection belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Cartographic"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "projection"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where projectionCharacteristic belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "projectionCharacteristic"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where provisionActivity belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "provisionActivity"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where provisionActivityStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "provisionActivityStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where publicationStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "publicationStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where reductionRatio belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "reductionRatio"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Relation: where relationship belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Relation"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "relationship"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where reproductionOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "reproductionOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where responsibilityStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "responsibilityStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Contribution: where role belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Contribution"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "role"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where schedulePart belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "schedulePart"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where seriesStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "seriesStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Item: where shelfMark belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Item"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "shelfMark"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where soundCharacteristic belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "soundCharacteristic"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where spanEnd belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "spanEnd"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Item: where sublocation belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Item"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "sublocation"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where subseriesEnumeration belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "subseriesEnumeration"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where subseriesStatement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "subseriesStatement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Title: where subtitle belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Title"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "subtitle"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where systemRequirement belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "systemRequirement"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where table belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "table"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Classification: where tableSeq belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Classification"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "tableSeq"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where temporalCoverage belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "temporalCoverage"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Title: where titleOf belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Title"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "titleOf"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where usesMediumOfPerformance belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "usesMediumOfPerformance"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where validDate belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "validDate"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain VariantTitle: where variantType belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/VariantTitle"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "variantType"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where version belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "version"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Instance: where videoCharacteristic belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Instance"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "videoCharacteristic"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain Work: where voice belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/Work"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "voice"
              ]
            }
          }
        },
        {
          "$comment": "rdfs:domain MusicVoice: where voiceType belongs",
          "if": {
            "allOf": [
              {
                "required": [
                  "@type"
                ]
              },
              {
                "not": {
                  "properties": {
                    "@type": {
                      "$ref": "#/$defs/class/MusicVoice"
                    }
                  }
                }
              }
            ]
          },
          "then": {
            "not": {
              "required": [
                "voiceType"
              ]
            }
          }
        }
      ]
    }
  }
}
