{
    "$schema": "https://json-schema.org/draft/2020-12/schema#",
    "$vocabulary": {
        "https://json-schema.org/draft/2020-12/vocab/core": true,
        "https://json-schema.org/draft/2020-12/vocab/applicator": true,
        "https://json-schema.org/draft/2020-12/vocab/unevaluated": true,
        "https://json-schema.org/draft/2020-12/vocab/validation": true,
        "https://json-schema.org/draft/2020-12/vocab/meta-data": true,
        "https://json-schema.org/draft/2020-12/vocab/format-annotation": true,
        "https://json-schema.org/draft/2020-12/vocab/content": true
    },
    "$id": "https://www.medbiq.org/standards/healthcare-learning-object-metadata",
    "title": "Healthcare Learning Object for custom elements",
    "type": "object",
    "annotations": {
        "license": "This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, see the file license.txt, visit http://creativecommons.org/licenses/by-sa/2.0 or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.",
        "schemaDescription": [
            "This component schema definition defines global element declarations for each of the data elements defined in the LOMv1.0 base schema.",
            "This component schema definition is used to check for the uniqueness of elements declared to be unique within their parent elements by the presence of the \"uniqueElementName\" attribute.",
            "The XML Schema constraint \"unique\" is used to enforce uniqueness constraints.",
            "Duplicate declarations are included as comments for completeness. These declarations should remain commented out or they can be removed completely."
        ],
        "changeHistory": [
            "NOTE: This change history is used to document changes to the XML Schema definition during the balloting process. This change history will be removed once the final version of the standard is published. A new change history will be included to indicate the initial release that maps to the final standard.",
            "CHANGE HISTORY",
            "08/24/2004: Updated those complexTypes that referenced extending the LangString complexType to map to the new name for that complexType - LanguageString:",
            "1.4 Description",
            "5.10 Description",
            "Updated the Creative Commons Licensing agreement to reference the Attribution-ShareAlike 2.0",
            "Updated annotation describing file to include language updates found in Draft 2 Working Draft 2",
            "09/27/2004: Updated file documentation to correspond with working draft 3.",
            "Updated \"language\" elements to remove reference to types that were removed (e.g, languageIdOrNone)."
        ]
    },
    "properties": {
        "general": {
            "type": "object",
            "properties": {
                "generalUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "identifier": {
            "type": "object",
            "properties": {
                "identifierUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "catalog": {
            "type": "object",
            "properties": {
                "catalog": {
                    "$ref": "#/properties/catalog"
                }
            }
        },
        "entry": {
            "type": "object",
            "properties": {
                "entry": {
                    "$ref": "#/properties/entry"
                }
            }
        },
        "title": {
            "type": "object",
            "properties": {
                "title": {
                    "$ref": "#/properties/title"
                }
            }
        },
        "language": {
            "type": "object",
            "properties": {
                "language": {
                    "type": "string"
                }
            }
        },
        "descriptionUnbounded": {
            "type": "object",
            "properties": {
                "description": {
                    "type": "string"
                }
            }
        },
        "keyword": {
            "type": "object",
            "properties": {
                "keyword": {
                    "$ref": "#/properties/keyword"
                }
            }
        },
        "coverage": {
            "type": "object",
            "properties": {
                "coverage": {
                    "$ref": "#/properties/coverage"
                }
            }
        },
        "structure": {
            "type": "object",
            "properties": {
                "structureUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "aggregationLevel": {
            "type": "object",
            "properties": {
                "aggregationLevelUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "lifeCycle": {
            "type": "object",
            "properties": {
                "lifeCycleUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "version": {
            "type": "object",
            "properties": {
                "version": {
                    "$ref": "#/properties/version"
                }
            }
        },
        "status": {
            "type": "object",
            "properties": {
                "statusUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "contribute": {
            "type": "object",
            "properties": {
                "contributeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "role": {
            "type": "object",
            "properties": {
                "roleUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "entityUnbounded": {
            "type": "object",
            "properties": {
                "entity": {
                    "type": "string"
                }
            }
        },
        "date": {
            "type": "object",
            "properties": {
                "dateUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "metaMetadata": {
            "type": "object",
            "properties": {
                "metaMetadataUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "roleMeta": {
            "type": "object",
            "properties": {
                "roleMetaUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "metadataSchema": {
            "type": "object",
            "properties": {
                "metadataSchema": {
                    "$ref": "#/properties/metadataSchema"
                }
            }
        },
        "technical": {
            "type": "object",
            "properties": {
                "technicalUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "format": {
            "type": "object",
            "properties": {
                "format": {
                    "$ref": "#/properties/format"
                }
            }
        },
        "size": {
            "type": "object",
            "properties": {
                "size": {
                    "$ref": "#/properties/size"
                }
            }
        },
        "location": {
            "type": "object",
            "properties": {
                "location": {
                    "$ref": "#/properties/location"
                }
            }
        },
        "requirement": {
            "type": "object",
            "properties": {
                "requirement": {
                    "$ref": "#/properties/requirement"
                }
            }
        },
        "orComposite": {
            "type": "object",
            "properties": {
                "orCompositeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "type": {
            "type": "object",
            "properties": {
                "typeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "name": {
            "type": "object",
            "properties": {
                "nameUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "minimumVersion": {
            "type": "object",
            "properties": {
                "minimumVersion": {
                    "$ref": "#/properties/minimumVersion"
                }
            }
        },
        "maximumVersion": {
            "type": "object",
            "properties": {
                "maximumVersion": {
                    "$ref": "#/properties/maximumVersion"
                }
            }
        },
        "installationRemarks": {
            "type": "object",
            "properties": {
                "installationRemarks": {
                    "$ref": "#/properties/installationRemarks"
                }
            }
        },
        "otherPlatformRequirements": {
            "type": "object",
            "properties": {
                "otherPlatformRequirements": {
                    "$ref": "#/properties/otherPlatformRequirements"
                }
            }
        },
        "duration": {
            "type": "object",
            "properties": {
                "durationUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "educational": {
            "type": "object",
            "properties": {
                "educationalUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "interactivityType": {
            "type": "object",
            "properties": {
                "interactivityTypeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "learningResourceType": {
            "type": "object",
            "properties": {
                "learningResourceTypeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "interactivityLevel": {
            "type": "object",
            "properties": {
                "interactivityLevelUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "semanticDensity": {
            "type": "object",
            "properties": {
                "semanticDensityUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "intendedEndUserRole": {
            "type": "object",
            "properties": {
                "intendedEndUserRoleUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "context": {
            "type": "object",
            "properties": {
                "contextUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "typicalAgeRange": {
            "type": "object",
            "properties": {
                "typicalAgeRange": {
                    "$ref": "#/properties/typicalAgeRange"
                }
            }
        },
        "difficulty": {
            "type": "object",
            "properties": {
                "difficultyUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "typicalLearningTime": {
            "type": "object",
            "properties": {
                "typicalLearningTimeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "cost": {
            "type": "object",
            "properties": {
                "costUniques": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "copyrightAndOtherRestrictions": {
            "type": "object",
            "properties": {
                "copyrightAndOtherRestrictionsUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "description": {
            "type": "object",
            "properties": {
                "description": {
                    "$ref": "#/properties/description"
                }
            }
        },
        "relation": {
            "type": "object",
            "properties": {
                "relationUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "kind": {
            "type": "object",
            "properties": {
                "kindUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "resource": {
            "type": "object",
            "properties": {
                "description": {
                    "$ref": "#/properties/resource"
                }
            }
        },
        "annotation": {
            "type": "object",
            "properties": {
                "annotationUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "entity": {
            "type": "object",
            "properties": {
                "entity": {
                    "$ref": "#/properties/entity"
                }
            }
        },
        "classification": {
            "type": "object",
            "properties": {
                "classificationUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "purpose": {
            "type": "object",
            "properties": {
                "purposeUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "taxonPath": {
            "type": "object",
            "properties": {
                "taxonPathUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "source": {
            "type": "object",
            "properties": {
                "source": {
                    "$ref": "#/properties/source"
                }
            }
        },
        "taxon": {
            "type": "object",
            "properties": {
                "taxonUnique": {
                    "type": "object",
                    "field": {
                        "path": "@uniqueElementName"
                    }
                }
            }
        },
        "id": {
            "type": "object",
            "properties": {
                "id": {
                    "$ref": "#/properties/id"
                }
            }
        },
        "entryTaxon": {
            "type": "object",
            "properties": {
                "entry": {
                    "$ref": "#/properties/entryTaxon"
                }
            }
        }
    }
}
