diff --git a/draft/examples/data-extension-metadata/valid/example-full.json b/draft/examples/data-extension-metadata/valid/example-full.json index b0eb876..f72ad17 100644 --- a/draft/examples/data-extension-metadata/valid/example-full.json +++ b/draft/examples/data-extension-metadata/valid/example-full.json @@ -1,19 +1,19 @@ { - "propose_properties": true, - "property_settings": [ + "proposeProperties": true, + "propertySettings": [ { "name": "limit", "label": "Limit", "type": "number", "default": 0, - "help_text": "Maximum number of values to return per row (0 for no limit)" + "helpText": "Maximum number of values to return per row (0 for no limit)" }, { "name": "content", "label": "Content", "type": "select", "default": "literal", - "help_text": "Content type: ID or literal", + "helpText": "Content type: ID or literal", "choices": [ { "value": "id", diff --git a/draft/examples/manifest/invalid/feature-view.json b/draft/examples/manifest/invalid/feature-view.json index 7166c6e..bab29f7 100644 --- a/draft/examples/manifest/invalid/feature-view.json +++ b/draft/examples/manifest/invalid/feature-view.json @@ -3,7 +3,7 @@ "view": { "url": "https://viaf.org/viaf/{id}" }, - "feature_view": { + "featureView": { "url": "https://vocab.getty.edu/recon/features/" } } diff --git a/draft/examples/manifest/invalid/opencorporates.json b/draft/examples/manifest/invalid/opencorporates.json index 06a9946..8bed8f9 100644 --- a/draft/examples/manifest/invalid/opencorporates.json +++ b/draft/examples/manifest/invalid/opencorporates.json @@ -9,16 +9,8 @@ "height": 300 }, "suggest": { - "entity": { - "service_url": "https://opencorporates.com", - "service_path": "/reconcile/suggest", - "flyout_service_path": "/reconcile/flyout" - }, - "property": { - "service_url": "https://opencorporates.com", - "service_path": "/reconcile/suggest/properties", - "flyout_service_path": "/reconcile/flyout/properties" - } + "entity": true, + "property": true }, "defaultTypes": [ { diff --git a/draft/examples/manifest/invalid/ror-invalid-view-pattern.json b/draft/examples/manifest/invalid/ror-invalid-view-pattern.json index 1d75cb7..9dbaf66 100644 --- a/draft/examples/manifest/invalid/ror-invalid-view-pattern.json +++ b/draft/examples/manifest/invalid/ror-invalid-view-pattern.json @@ -10,11 +10,7 @@ "url": "https://reconcile.ror.org/reconcile" }, "suggest": { - "entity": { - "flyout_service_path": "/flyout?id={id}", - "service_path": "/suggest", - "service_url": "https://reconcile.ror.org" - } + "entity": true }, "preview": { "width": 400, diff --git a/draft/examples/manifest/invalid/slub-invalid-property-setting.json b/draft/examples/manifest/invalid/slub-invalid-property-setting.json index 23d1648..fb50578 100644 --- a/draft/examples/manifest/invalid/slub-invalid-property-setting.json +++ b/draft/examples/manifest/invalid/slub-invalid-property-setting.json @@ -38,26 +38,23 @@ } ], "extend": { - "property_settings": [ + "propertySettings": [ { "default": 10, - "help_text": "Maximum number of values to return per row (maximum: 1000)", + "helpText": "Maximum number of values to return per row (maximum: 1000)", "label": "Limit", "name": "limit", "type": "number" }, { "default": "geo,organizations,slub-resources,persons,events,topics,works, ", - "help_text": "Which Entity-Type to use, allwed values: http://schema.org/CreativeWork, http://schema.org/Work, http://schema.org/Event, http://schema.org/Place, http://schema.org/Person, http://schema.org/Book, http://schema.org/Organization, http://schema.org/Topic, http://schema.org/CreativeWorkSeries", + "helpText": "Which Entity-Type to use, allwed values: http://schema.org/CreativeWork, http://schema.org/Work, http://schema.org/Event, http://schema.org/Place, http://schema.org/Person, http://schema.org/Book, http://schema.org/Organization, http://schema.org/Topic, http://schema.org/CreativeWorkSeries", "label": "Typ", "name": "type", "type": "string" } ], - "propose_properties": { - "service_path": "/reconcile/properties", - "service_url": "http://data.slub-dresden.de" - } + "proposeProperties": true }, "name": "SLUB LOD reconciliation for OpenRefine", "preview": { diff --git a/draft/examples/manifest/valid/feature-view.json b/draft/examples/manifest/valid/feature-view.json index fa43b45..9c8309b 100644 --- a/draft/examples/manifest/valid/feature-view.json +++ b/draft/examples/manifest/valid/feature-view.json @@ -4,7 +4,7 @@ "view": { "url": "https://viaf.org/viaf/{id}" }, - "feature_view": { + "featureView": { "url": "https://vocab.getty.edu/recon/features/{id}" } } diff --git a/draft/examples/manifest/valid/lobid-gnd.json b/draft/examples/manifest/valid/lobid-gnd.json index 82154f5..6dc9f5f 100644 --- a/draft/examples/manifest/valid/lobid-gnd.json +++ b/draft/examples/manifest/valid/lobid-gnd.json @@ -49,20 +49,20 @@ "width": 320 }, "extend": { - "property_settings": [ + "propertySettings": [ { "name": "limit", "label": "Limit", "type": "number", "default": 0, - "help_text": "Maximum number of values to return per row (0 for no limit)" + "helpText": "Maximum number of values to return per row (0 for no limit)" }, { "name": "content", "label": "Content", "type": "select", "default": "literal", - "help_text": "Content type: ID or literal", + "helpText": "Content type: ID or literal", "choices": [ { "value": "id", @@ -75,7 +75,7 @@ ] } ], - "propose_properties": true + "proposeProperties": true }, "suggest": { "property": true, diff --git a/draft/examples/manifest/valid/wikidata.json b/draft/examples/manifest/valid/wikidata.json index 75b297f..aad51ea 100644 --- a/draft/examples/manifest/valid/wikidata.json +++ b/draft/examples/manifest/valid/wikidata.json @@ -9,11 +9,11 @@ "logo": "https://tools.wmflabs.org/openrefine-wikidata/logo.png", "serviceVersion": "1.2.3", "extend": { - "property_settings": [ + "propertySettings": [ { "name": "limit", "label": "Limit", - "help_text": "Maximum number of values to return per row (0 for no limit)", + "helpText": "Maximum number of values to return per row (0 for no limit)", "type": "number", "default": 0 }, @@ -21,7 +21,7 @@ "name": "rank", "label": "Ranks", "type": "select", - "help_text": "Filter statements by rank", + "helpText": "Filter statements by rank", "choices": [ { "name": "Any rank", @@ -42,7 +42,7 @@ "name": "references", "label": "References", "type": "select", - "help_text": "Filter statements by their references", + "helpText": "Filter statements by their references", "choices": [ { "name": "Any statement", @@ -62,12 +62,12 @@ { "name": "count", "label": "Return counts instead of values", - "help_text": "The number of values will be returned.", + "helpText": "The number of values will be returned.", "type": "checkbox", "default": false } ], - "propose_properties": true + "proposeProperties": true }, "defaultTypes": [ { diff --git a/draft/examples/reconciliation-query-batch/invalid/misnamed-conditions.json b/draft/examples/reconciliation-query-batch/invalid/misnamed-conditions.json index f51e78e..534b72c 100644 --- a/draft/examples/reconciliation-query-batch/invalid/misnamed-conditions.json +++ b/draft/examples/reconciliation-query-batch/invalid/misnamed-conditions.json @@ -15,8 +15,7 @@ "pid": "affiliation", "v": "http://d-nb.info/gnd/2022139-3" } - ], - "type_strict": "should" + ] }, { "type": "DifferentiatedPerson", @@ -33,8 +32,7 @@ "pid": "affiliation", "v": "http://d-nb.info/gnd/2022139-3" } - ], - "type_strict": "should" + ] } ] } diff --git a/draft/examples/reconciliation-query-batch/invalid/multiple-types.json b/draft/examples/reconciliation-query-batch/invalid/multiple-types.json index d2f3fb7..7b94166 100644 --- a/draft/examples/reconciliation-query-batch/invalid/multiple-types.json +++ b/draft/examples/reconciliation-query-batch/invalid/multiple-types.json @@ -3,7 +3,7 @@ { "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Christel Hanewinckel" } ], diff --git a/draft/examples/reconciliation-query-batch/invalid/no-root-object.json b/draft/examples/reconciliation-query-batch/invalid/no-root-object.json index 143d568..d5ae45f 100644 --- a/draft/examples/reconciliation-query-batch/invalid/no-root-object.json +++ b/draft/examples/reconciliation-query-batch/invalid/no-root-object.json @@ -2,7 +2,7 @@ { "conditions": [ { - "match_type": "property", + "matchType": "property", "pid": "uid", "v": "27eb892afbb2" } @@ -11,7 +11,7 @@ { "conditions": [ { - "match_type": "property", + "matchType": "property", "pid": "uid", "v": "ab09da9dd37e" } diff --git a/draft/examples/reconciliation-query-batch/valid/example-full.json b/draft/examples/reconciliation-query-batch/valid/example-full.json index 6c61a09..7827095 100644 --- a/draft/examples/reconciliation-query-batch/valid/example-full.json +++ b/draft/examples/reconciliation-query-batch/valid/example-full.json @@ -5,24 +5,24 @@ "limit": 5, "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Christel Hanewinckel" }, { - "match_type": "property", + "matchType": "property", "pid": "professionOrOccupation", "v": "Politik*", "required": false, - "match_quantifier": "any", - "match_qualifier": "WildcardMatch" + "matchQuantifier": "any", + "matchQualifier": "WildcardMatch" }, { - "match_type": "property", + "matchType": "property", "pid": "affiliation", "v": "http://d-nb.info/gnd/2022139-3", "required": false, - "match_quantifier": "any", - "match_qualifier": "ExactMatch" + "matchQuantifier": "any", + "matchQualifier": "ExactMatch" } ] }, @@ -31,24 +31,24 @@ "limit": 5, "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Franz Thönnes" }, { - "match_type": "property", + "matchType": "property", "pid": "professionOrOccupation", "v": "Politik*", "required": false, - "match_quantifier": "any", - "match_qualifier": "WildcardMatch" + "matchQuantifier": "any", + "matchQualifier": "WildcardMatch" }, { - "match_type": "property", + "matchType": "property", "pid": "affiliation", "v": "http://d-nb.info/gnd/2022139-3", "required": false, - "match_quantifier": "any", - "match_qualifier": "ExactMatch" + "matchQuantifier": "any", + "matchQualifier": "ExactMatch" } ] } diff --git a/draft/examples/reconciliation-query-batch/valid/example-min.json b/draft/examples/reconciliation-query-batch/valid/example-min.json index 8d5d776..0dff82f 100644 --- a/draft/examples/reconciliation-query-batch/valid/example-min.json +++ b/draft/examples/reconciliation-query-batch/valid/example-min.json @@ -3,7 +3,7 @@ { "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Hans-Eberhard Urbaniak" } ] @@ -11,7 +11,7 @@ { "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Ernst Schwanhold" } ] diff --git a/draft/examples/reconciliation-query-batch/valid/multi-values.json b/draft/examples/reconciliation-query-batch/valid/multi-values.json index f4ba3b2..c0acdbf 100644 --- a/draft/examples/reconciliation-query-batch/valid/multi-values.json +++ b/draft/examples/reconciliation-query-batch/valid/multi-values.json @@ -5,11 +5,11 @@ "limit": 5, "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Christel Hanewinckel" }, { - "match_type": "property", + "matchType": "property", "pid": "professionOrOccupation", "v": [ "Politik*", diff --git a/draft/examples/reconciliation-query-batch/valid/no-query-string.json b/draft/examples/reconciliation-query-batch/valid/no-query-string.json index ee78785..daae16d 100644 --- a/draft/examples/reconciliation-query-batch/valid/no-query-string.json +++ b/draft/examples/reconciliation-query-batch/valid/no-query-string.json @@ -3,7 +3,7 @@ { "conditions": [ { - "match_type": "property", + "matchType": "property", "pid": "uid", "v": "27eb892afbb2" } @@ -12,7 +12,7 @@ { "conditions": [ { - "match_type": "property", + "matchType": "property", "pid": "uid", "v": "ab09da9dd37e" } diff --git a/draft/examples/reconciliation-query-batch/valid/text-processing-language.json b/draft/examples/reconciliation-query-batch/valid/text-processing-language.json index dda0f9b..27fbea1 100644 --- a/draft/examples/reconciliation-query-batch/valid/text-processing-language.json +++ b/draft/examples/reconciliation-query-batch/valid/text-processing-language.json @@ -4,16 +4,16 @@ "lang": "en", "conditions": [ { - "match_type": "name", + "matchType": "name", "v": "Deng Shuping" }, { - "match_type": "property", + "matchType": "property", "pid": "professionOrOccupation", "v": "art historian" }, { - "match_type": "property", + "matchType": "property", "pid": "variantName", "v": "鄧淑蘋", "lang": "zh-Hant" diff --git a/draft/examples/suggest-properties-response/valid/example.json b/draft/examples/suggest-properties-response/valid/example.json index b093ac8..834393e 100644 --- a/draft/examples/suggest-properties-response/valid/example.json +++ b/draft/examples/suggest-properties-response/valid/example.json @@ -4,7 +4,7 @@ "name": "coordinate location", "description": "geocoordinates of the subject. For Earth, please note that only WGS84 coordinating system is supported at the moment", "id": "P625", - "match_qualifiers": [ + "matchQualifiers": [ {"id": "ExactMatch", "name": "Exact match of the coordinates"}, {"id": "DecimalPlaces-N", "name": "Match the coordinates with a precision of N decimal places"} ] @@ -13,7 +13,7 @@ "name": "place of birth", "description": "most specific known (e.g. city instead of country, or hospital instead of city) birth location of a person, animal or fictional character", "id": "P19", - "match_qualifiers": [ + "matchQualifiers": [ {"id": "schema:containsPlace", "name": "Containment relation between a place and another that it contains"}, {"id": "schema:containedInPlace", "name": "Containment relation between a place and another that contains it"} ] diff --git a/draft/index.html b/draft/index.html index 4f9f1b2..2325c82 100644 --- a/draft/index.html +++ b/draft/index.html @@ -241,6 +241,7 @@
query
field of reconciliation queries inside properties
to allow for queries which do not provide entity namesstandardizedScore
field to the manifestversions
which is about the versions of the reconciliation API supported by the service;view
url
. Its value is a URI template for entities;feature_view
featureView
url
. Its value is a URI template for matching features;preview
match_type
matchType
name
or property
, depending on whether the condition relates to entity names or their properties.pid
match_type
is property
.matchType
is property
.v
match_type
is name
, then this value is to
+ matchType
is name
, then this value is to
be matched to entity names, otherwise to the property values via the supplied pid
. The specifics of how this similarity
is defined are determined by the service.required
match_quantifier
matchQuantifier
v
to match. MUST be any
(equivalent to boolean OR), all
(equivalent to boolean AND), or none
(equivalent to boolean NOT);match_qualifier
matchQualifier
v
.
This can be used for general matching relations like "skos:exactMatch", "skos:closeMatch", etc. or for specific features like spatial matching with geo data
(e.g. containment search with "schema:containsPlace" etc.) or custom matching on date fields (e.g. services supporting the [[EDTF]] specification could use "EDTF:Level-0" etc.
- To allow discovery of supported qualifiers by clients, services that support match_qualifier
MUST return the supported match_qualifiers
for each property
+ To allow discovery of supported qualifiers by clients, services that support matchQualifier
MUST return the supported matchQualifiers
for each property
in their property suggest responses.name
;notable
id
and name
field which represent the type.match_qualifiers
id
and name
field, which represent the property's match_qualifiers
supported in reconciliation queries.matchQualifiers
id
and name
field, which represent the property's matchQualifiers
supported in reconciliation queries.
The data extension metadata is an object stored in the service manifest in the extend
field. It consists of the following settings, all optional:
propose_properties
proposeProperties
property_settings
propertySettings
"number"
, "text"
, "checkbox"
, or "select"
. This determines which type of value the property setting is expected to store: clients SHOULD render this setting with the corresponding HTML element;
default
help_text
helpText
choices
type
is select
, an array of property setting choices.