mirror of
https://github.com/servo/servo
synced 2026-05-12 01:46:28 +02:00
112 lines
3.7 KiB
JSON
112 lines
3.7 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
"id": "4.2.1-conformsTo.json",
|
|
"assertionType": "should",
|
|
"expectedResult": "valid",
|
|
"onUnexpectedResult" : "passAndContinue",
|
|
"errorMessage": "The description of a FragmentSelector should include conformsTo key with a single value that is of format uri.",
|
|
"title": "Implements **Specific Resource _conformsTo_ key** with a **single value** which is of **format uri** on a **Specific Resource FragmentSelector** - [model 4.2.1](https://www.w3.org/TR/annotation-model/#fragment-selector)",
|
|
"description": "True when Annotation includes one or more FragmentSelectors, one or more of which include conformsTo key with a single value of format uri. (Section 4.2.1)",
|
|
"type": "object",
|
|
"anyOf":
|
|
[
|
|
{ "properties":
|
|
{ "body":
|
|
{ "oneOf":
|
|
[
|
|
{ "type": "object",
|
|
"oneOf":
|
|
[
|
|
{ "$ref": "#/definitions/selectorSchema" },
|
|
{ "$ref": "#/definitions/itemSchema" }
|
|
]
|
|
},
|
|
{ "type": "array",
|
|
"minItems": 1,
|
|
"not":
|
|
{ "items":
|
|
{ "not":
|
|
{ "oneOf":
|
|
[
|
|
{ "$ref": "#/definitions/selectorSchema" },
|
|
{ "$ref": "#/definitions/itemSchema" }
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [ "body" ]
|
|
},
|
|
{ "properties":
|
|
{ "target":
|
|
{ "oneOf":
|
|
[
|
|
{ "type": "object",
|
|
"oneOf":
|
|
[
|
|
{ "$ref": "#/definitions/selectorSchema" },
|
|
{ "$ref": "#/definitions/itemSchema" }
|
|
]
|
|
},
|
|
{ "type": "array",
|
|
"minItems": 1,
|
|
"not":
|
|
{ "items":
|
|
{ "not":
|
|
{ "oneOf":
|
|
[
|
|
{ "$ref": "#/definitions/selectorSchema" },
|
|
{ "$ref": "#/definitions/itemSchema" }
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"definitions":
|
|
{
|
|
"selectorSchema":
|
|
{ "type": "object",
|
|
"properties":
|
|
{ "selector":
|
|
{ "oneOf":
|
|
[
|
|
{ "type": "object",
|
|
"$ref": "specificResource.json#/definitions/conformsToPropertyFound"
|
|
},
|
|
{ "type": "array",
|
|
"minItems": 1,
|
|
"not":
|
|
{ "items":
|
|
{ "not": { "$ref": "specificResource.json#/definitions/conformsToPropertyFound" } }
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"required": [ "selector" ]
|
|
},
|
|
|
|
"itemSchema":
|
|
{ "type": "object",
|
|
"properties":
|
|
{ "items":
|
|
{ "type": "array",
|
|
"minItems": 1,
|
|
"not":
|
|
{ "items":
|
|
{ "not": { "$ref": "#/definitions/selectorSchema" } }
|
|
}
|
|
}
|
|
},
|
|
"required": [ "items" ]
|
|
}
|
|
}
|
|
} |