{
    "$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/competency-framework",
    "title": "Competency Framework",
    "description": "Schema for MedBiq Competency Framework. Copyright 2024 MedBiquitous Consortium. All Rights Reserved. http://www.medbiq.org. Users are bound by the terms of the MedBiquitous Consortium XML Public License and Terms of Use",
    "schemaValidationNotes": [
        {
            "description": "common.schema.json implementation",
            "validated": true
        },
        {
            "description": "properties prefix '_'",
            "validated": true
        },
        {
            "description": "no missing attributes",
            "validated": true
        },
        {
            "description": "validate union types",
            "validated": true
        },
        {
            "description": "Schema validation using XML samples",
            "validated": false
        }
    ],
    "type": "object",
    "$defs": {
        "NonNullString": {
            "$ref": "http://medbiq.pixelbytellc.com/common.schema.json#/$defs/NonNullStringType"
        },
        "RelationshipType": {
            "type": "string",
            "enum": [
                "http://www.w3.org/2004/02/skos/core#broader",
                "http://www.w3.org/2004/02/skos/core#narrower",
                "http://www.w3.org/2004/02/skos/core#related"
            ]
        },
        "IdentifierType": {
            "type": "object",
            "properties": {
                "_Catalog": {
                    "$ref": "#/$defs/NonNullString"
                },
                "_Entry": {
                    "$ref": "#/$defs/NonNullString"
                }
            },
            "required": ["_Catalog", "_Entry"]
        },
        "RelationType": {
            "type": "object",
            "properties": {
                "_Reference1": {
                    "$ref": "#/$defs/IdentifierType"
                },
                "_Relationship": {
                    "$ref": "#/$defs/RelationshipType"
                },
                "_Reference2": {
                    "$ref": "#/$defs/IdentifierType"
                }
            },
            "required": ["_Reference1", "_Relationship", "_Reference2"]
        },
        "SupportingInformationType": {
            "type": "object",
            "oneOf": [
                {
                    "type": "string",
                    "format": "uri"
                },
                {
                    "$ref": "https://medbiq.pixelbytellc.com/xhtml.schema.json#/properties/div",
                    "$id": "http://www.w3.org/1999/xhtml"
                }
            ]
        },
        "CompetencyFrameworkType": {
            "type": "object",
            "properties": {
                "_lom": {
                    "$id": "https://ieee-sa.imeetcentral.com/ltsc/"
                },
                "_EffectiveDate": {
                    "type": "string",
                    "format": "date"
                },
                "_RetiredDate": {
                    "type": "string",
                    "format": "date"
                },
                "_Replaces": {
                    "type": "string",
                    "format": "uri"
                },
                "_IsReplacedBy": {
                    "type": "string",
                    "format": "uri"
                },
                "_SupportingInformation": {
                    "type": "array",
                    "items": {
                        "$ref": "#/$defs/SupportingInformationType"
                    }
                },
                "_Includes": {
                    "type": "array",
                    "items": {
                        "$ref": "#/$defs/IdentifierType"
                    }
                },
                "_Relation": {
                    "type": "array",
                    "items": {
                        "$ref": "#/$defs/RelationType"
                    }
                },
                "_other": {
                    "type": "array",
                    "items": {
                        "type": "object"
                    }
                }
            },
            "required": ["_Includes", "_lom"]
        }
    },
    "properties": {
        "CompetencyFramework": {
            "$ref": "#/$defs/CompetencyFrameworkType"
        }
    }
}
