{"components":{"schemas":{"ChangedResource":{"properties":{"added":{"items":{"$ref":"#/components/schemas/Statement"},"type":"array"},"added_count":{"type":"integer"},"kind":{"enum":["concept","concept scheme","collection","ordered collection","resource"],"type":"string"},"label":{"type":"string"},"removed":{"items":{"$ref":"#/components/schemas/Statement"},"type":"array"},"removed_count":{"type":"integer"},"uri":{"type":"string"}},"type":"object"},"Comparison":{"properties":{"added":{"items":{"$ref":"#/components/schemas/ChangedResource"},"type":"array"},"changed":{"items":{"$ref":"#/components/schemas/ChangedResource"},"type":"array"},"checks":{"description":"Checks whose count differs between the versions.","items":{"properties":{"after":{"type":"integer"},"before":{"type":"integer"},"code":{"description":"S9, S13, S14, S27, S37 and S46 are the integrity conditions of the SKOS Reference.","enum":["S14","S13","S27","S46","S9","S37","unknown_term","cycle","self_link","no_pref_label","top_with_broader","not_in_scheme","undeclared_top","duplicate_pref_label","no_language","undescribed"],"type":"string"},"rule":{"type":["string","null"]},"severity":{"enum":["violation","warning","info"],"type":"string"},"title":{"type":"string"}},"type":"object"},"type":"array"},"language":{"type":"string"},"new":{"$ref":"#/components/schemas/Version"},"old":{"$ref":"#/components/schemas/Version"},"processing_time_ms":{"description":"Time spent reading and checking.","type":"integer"},"removed":{"items":{"$ref":"#/components/schemas/ChangedResource"},"type":"array"},"summary":{"properties":{"added":{"type":"integer"},"changed":{"type":"integer"},"fixed_violations":{"type":"integer"},"new_violations":{"type":"integer"},"removed":{"type":"integer"},"statements_added":{"type":"integer"},"statements_removed":{"type":"integer"},"unchanged":{"type":"integer"}},"type":"object"},"truncated":{"description":"A list above was cut; the summary counts everything.","type":"boolean"},"validator_version":{"description":"Version of the tool that produced the report.","type":"string"},"verdict":{"description":"regression: the new version breaks more integrity conditions than the old one.","enum":["identical","changed","regression"],"type":"string"}},"type":"object"},"Concept":{"properties":{"broader":{"items":{"properties":{"label":{"type":"string"},"uri":{"type":"string"}},"type":"object"},"type":"array"},"declared":{"type":"boolean"},"described":{"type":"boolean"},"issues":{"items":{"properties":{"code":{"description":"S9, S13, S14, S27, S37 and S46 are the integrity conditions of the SKOS Reference.","enum":["S14","S13","S27","S46","S9","S37","unknown_term","cycle","self_link","no_pref_label","top_with_broader","not_in_scheme","undeclared_top","duplicate_pref_label","no_language","undescribed"],"type":"string"},"detail":{"type":"string"},"severity":{"enum":["violation","warning","info"],"type":"string"},"title":{"type":"string"}},"type":"object"},"type":"array"},"label":{"type":"string"},"labels":{"description":"By property (prefLabel, altLabel, hiddenLabel), then by language.","type":"object"},"mappings":{"description":"By mapping property.","type":"object"},"narrower_count":{"type":"integer"},"notation":{"items":{"type":"string"},"type":"array"},"notes":{"description":"By property (definition, scopeNote, ...), then by language.","type":"object"},"related":{"items":{"properties":{"label":{"type":"string"},"uri":{"type":"string"}},"type":"object"},"type":"array"},"schemes":{"items":{"properties":{"label":{"type":"string"},"uri":{"type":"string"}},"type":"object"},"type":"array"},"uri":{"type":"string"}},"type":"object"},"Error":{"properties":{"error":{"type":"string"}},"required":["error"],"type":"object"},"Issue":{"properties":{"code":{"description":"S9, S13, S14, S27, S37 and S46 are the integrity conditions of the SKOS Reference.","enum":["S14","S13","S27","S46","S9","S37","unknown_term","cycle","self_link","no_pref_label","top_with_broader","not_in_scheme","undeclared_top","duplicate_pref_label","no_language","undescribed"],"type":"string"},"count":{"type":"integer"},"examples":{"description":"Up to 10.","items":{"properties":{"detail":{"type":"string"},"label":{"type":"string"},"uri":{"type":"string"}},"type":"object"},"type":"array"},"explain":{"type":"string"},"rule":{"description":"Condition number in the SKOS Reference, for violations.","type":["string","null"]},"severity":{"enum":["violation","warning","info"],"type":"string"},"spec_url":{"type":["string","null"]},"title":{"type":"string"}},"type":"object"},"IssueTotals":{"properties":{"info":{"type":"integer"},"violation":{"type":"integer"},"warning":{"type":"integer"}},"type":"object"},"Report":{"properties":{"collections":{"items":{"type":"object"},"type":"array"},"concepts":{"additionalProperties":{"$ref":"#/components/schemas/Concept"},"description":"By URI.","type":"object"},"concepts_truncated":{"type":"boolean"},"filename":{"type":["string","null"]},"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"format_label":{"type":"string"},"issue_totals":{"$ref":"#/components/schemas/IssueTotals"},"issues":{"items":{"$ref":"#/components/schemas/Issue"},"type":"array"},"language":{"type":"string"},"languages":{"description":"Labels per language tag.","type":"object"},"processing_time_ms":{"description":"Time spent reading and checking.","type":"integer"},"summary":{"description":"Counts: triples, concept_schemes, concepts, collections, hierarchy_links, related_links, mapping_links, labels, max_depth.","type":"object"},"terms_used":{"items":{"type":"object"},"type":"array"},"tree_truncated":{"type":"boolean"},"trees":{"items":{"properties":{"concept_count":{"type":"integer"},"label":{"type":"string"},"roots":{"items":{"$ref":"#/components/schemas/TreeNode"},"type":"array"},"top_concepts":{"type":"integer"},"uri":{"type":["string","null"]}},"type":"object"},"type":"array"},"validator_version":{"description":"Version of the tool that produced the report.","type":"string"},"verdict":{"enum":["violations","warnings","clean","no_skos"],"type":"string"}},"type":"object"},"ShaclReport":{"properties":{"filename":{"type":["string","null"]},"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"format_label":{"type":"string"},"language":{"type":"string"},"processing_time_ms":{"description":"Time spent reading and checking.","type":"integer"},"rules":{"description":"Results grouped by rule, worst first.","items":{"properties":{"constraint":{"description":"For example MinCount, UniqueLang, Node.","type":["string","null"]},"count":{"type":"integer"},"examples":{"description":"Up to 10.","items":{"properties":{"focus":{"properties":{"kind":{"enum":["uri","literal","blank"],"type":"string"},"label":{"type":["string","null"]},"lang":{"type":["string","null"]},"value":{"type":"string"}},"type":["object","null"]},"value":{"properties":{"kind":{"enum":["uri","literal","blank"],"type":"string"},"label":{"type":["string","null"]},"lang":{"type":["string","null"]},"value":{"type":"string"}},"type":["object","null"]}},"type":"object"},"type":"array"},"message":{"type":"string"},"path":{"type":["string","null"]},"rule":{"description":"sh:name or label of the shape.","type":["string","null"]},"severity":{"enum":["violation","warning","info"],"type":"string"}},"type":"object"},"type":"array"},"rules_truncated":{"type":"boolean"},"ruleset":{"enum":["skos-quality","custom"],"type":"string"},"shapes_filename":{"type":["string","null"]},"shapes_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"summary":{"properties":{"resources_with_results":{"type":"integer"},"results":{"type":"integer"},"shapes":{"type":"integer"},"shapes_statements":{"type":"integer"},"statements":{"type":"integer"}},"type":"object"},"totals":{"$ref":"#/components/schemas/IssueTotals"},"validator_version":{"description":"Version of the tool that produced the report.","type":"string"},"verdict":{"enum":["violations","warnings","conforms"],"type":"string"}},"type":"object"},"Statement":{"properties":{"label":{"description":"Label of the resource the value points to.","type":["string","null"]},"lang":{"type":["string","null"]},"property":{"description":"SKOS property without the prefix, or \"type\".","type":"string"},"value":{"type":"string"}},"type":"object"},"TreeNode":{"properties":{"below":{"description":"Worst finding further down the branch.","type":["string","null"]},"child_count":{"type":"integer"},"children":{"items":{"$ref":"#/components/schemas/TreeNode"},"type":"array"},"cut":{"type":"boolean"},"label":{"type":"string"},"loop":{"type":"boolean"},"notation":{"type":["string","null"]},"repeat":{"description":"Has several broader concepts and is opened elsewhere.","type":"boolean"},"severity":{"description":"Worst finding about this concept: violation, warning or null.","type":["string","null"]},"uri":{"type":"string"}},"type":"object"},"Version":{"properties":{"filename":{"type":["string","null"]},"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"format_label":{"type":"string"},"issue_totals":{"$ref":"#/components/schemas/IssueTotals"},"resources":{"type":"integer"},"statements":{"type":"integer"},"verdict":{"enum":["violations","warnings","clean","no_skos"],"type":"string"}},"type":"object"}}},"externalDocs":{"description":"W3C SKOS Reference","url":"https://www.w3.org/TR/skos-reference/"},"info":{"description":"Read a SKOS vocabulary, check it against the W3C SKOS Reference, compare two versions of it and validate it against SHACL shapes. No key is needed. The vocabulary is processed in memory and not stored. Limits: 1024 KB and 60,000 statements per vocabulary, 60 requests per hour per address.","title":"SKOS Explorer, Vocabulary Diff and SHACL Validator API","version":"1.4.140"},"openapi":"3.1.0","paths":{"/skos-explorer/api":{"post":{"operationId":"exploreVocabulary","requestBody":{"content":{"application/json":{"schema":{"properties":{"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"lang":{"default":"en","description":"Language tag for the labels shown.","type":"string"},"text":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"}},"required":["text"],"type":"object"}},"multipart/form-data":{"schema":{"properties":{"file":{"description":"The vocabulary as a file, up to 1024 KB.","format":"binary","type":"string"},"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"lang":{"default":"en","description":"Language tag for the labels shown.","type":"string"},"text":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Report"}}},"description":"The report."},"400":{"content":{"application/json":{"example":{"error":"Could not read the vocabulary: nothing to read \u2014 paste a vocabulary or choose a file"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"The input is empty, cannot be read as RDF, is larger than 1024 KB or 60,000 statements, or asks for something that is never loaded (external XML entities, a remote JSON-LD @context)."},"429":{"content":{"application/json":{"example":{"error":"Rate limit reached (60 vocabularies per hour) \u2014 try again in a bit."},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"More than 60 requests in an hour from one address."}},"summary":"Read and check one SKOS vocabulary"}},"/skos-explorer/diff/api":{"post":{"description":"Compared by meaning: statement order, prefixes, the RDF format and the direction a relation is written in do not count as changes. Only resources with a URI are compared.","operationId":"compareVocabularies","requestBody":{"content":{"application/json":{"schema":{"properties":{"lang":{"default":"en","description":"Language tag for the labels shown.","type":"string"},"new":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"},"new_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"old":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"},"old_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"}},"required":["old","new"],"type":"object"}},"multipart/form-data":{"schema":{"properties":{"lang":{"default":"en","description":"Language tag for the labels shown.","type":"string"},"new":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"},"new_file":{"description":"The vocabulary as a file, up to 1024 KB.","format":"binary","type":"string"},"new_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"old":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"},"old_file":{"description":"The vocabulary as a file, up to 1024 KB.","format":"binary","type":"string"},"old_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comparison"}}},"description":"The comparison."},"400":{"content":{"application/json":{"example":{"error":"Could not read the vocabulary: nothing to read \u2014 paste a vocabulary or choose a file"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"The input is empty, cannot be read as RDF, is larger than 1024 KB or 60,000 statements, or asks for something that is never loaded (external XML entities, a remote JSON-LD @context)."},"429":{"content":{"application/json":{"example":{"error":"Rate limit reached (60 vocabularies per hour) \u2014 try again in a bit."},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"More than 60 requests in an hour from one address."}},"summary":"Compare two versions of a SKOS vocabulary"}},"/skos-explorer/shacl/api":{"post":{"description":"Without shapes the built-in SKOS quality rules are used. Only SHACL Core is run: shapes that use SPARQL, rules, functions, JavaScript or owl:imports are refused. No inference is applied. A validation is stopped after 45 seconds.","operationId":"validateWithShacl","requestBody":{"content":{"application/json":{"schema":{"properties":{"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"lang":{"default":"en","description":"Language tag for the labels shown.","type":"string"},"shapes":{"description":"SHACL Core shapes as text, up to 256 KB. Left out: the built-in SKOS quality rules.","type":"string"},"shapes_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"text":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"}},"required":["text"],"type":"object"}},"multipart/form-data":{"schema":{"properties":{"file":{"description":"The vocabulary as a file, up to 1024 KB.","format":"binary","type":"string"},"format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"lang":{"default":"en","description":"Language tag for the labels shown.","type":"string"},"shapes":{"description":"SHACL Core shapes as text, up to 256 KB. Left out: the built-in SKOS quality rules.","type":"string"},"shapes_file":{"description":"SHACL Core shapes as a file, up to 256 KB.","format":"binary","type":"string"},"shapes_format":{"description":"RDF format. Detected from the content and the file name when left out.","enum":["turtle","xml","json-ld","nt","trig","nquads"],"type":"string"},"text":{"description":"The vocabulary as text, up to 1024 KB.","type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ShaclReport"}}},"description":"The report."},"400":{"content":{"application/json":{"example":{"error":"Could not read the vocabulary: nothing to read \u2014 paste a vocabulary or choose a file"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"The input is empty, cannot be read as RDF, is larger than 1024 KB or 60,000 statements, or asks for something that is never loaded (external XML entities, a remote JSON-LD @context). Also: shapes that go beyond SHACL Core or have no target."},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"The validation hit its time or memory limit and was stopped."},"429":{"content":{"application/json":{"example":{"error":"Rate limit reached (60 vocabularies per hour) \u2014 try again in a bit."},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"More than 60 requests in an hour from one address."},"503":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"The validation service cannot be reached."}},"summary":"Validate a SKOS vocabulary against SHACL shapes"}}},"servers":[{"url":"https://devops.majbase.com"}]}
