- From: Franck Michel <franck.michel@cnrs.fr>
- Date: Wed, 15 Nov 2017 09:47:07 +0100
- To: public-bioschemas@w3.org
- Message-ID: <f3ae17aa-efc0-38ed-4a79-ab3ea1d0ae62@cnrs.fr>
> overriding requires specifying a nested context like the second one for "name" Actually I feel like this is unclear, in the specification, whether this is the only way of overriding: "Multiple contexts may be combined using an array, which is processed in order. The set of contexts defined within a specific JSON object are referred to as local contexts. The active context refers to the accumulation of local contexts that are in scope at a specific point within the document." I understand that this "accumulation" will apply overriding given the order in the array, but this is not clearly stated. Franck. Le 14/11/2017 à 23:09, Anders Riutta a écrit : > I like this option. Data providers who use it will just need to be > careful if the Bioschemas context and the data provider's context > share IRIs but use different terms. See this issue > <https://github.com/digitalbazaar/jsonld.js/issues/75> for more > details. Note also that it doesn't appear possible to override a term > if the data provider makes the context available only via an HTTP Link > Header > <https://json-ld.org/spec/latest/json-ld/#interpreting-json-as-json-ld>, > because overriding requires specifying a nested context like the > second one for "name" in the following example: > > { > "@context": { > "name":"http://example.com/person#name", > "details":"http://example.com/person#details" > }, > "name":"Markus Lanthaler", > ... > "details": { > "@context": { > "name":"http://example.com/organization#name" > }, > "name":"Graz University of Technology" > } > } > > On Tue, Nov 14, 2017 at 1:51 PM, Franck Michel <franck.michel@cnrs.fr > <mailto:franck.michel@cnrs.fr>> wrote: > > An option between 3A and 3B may consist in importing the > Bioschemas context and extend it with an additional custom terms: > > "@context": [ > "http://bioschemas.org/context.jsonld" > <http://bioschemas.org/context.jsonld>, > { > "comesFromGene":"...", > } > ] > > According to the specification it is even possible to override a > term defined in a previously loaded context: > https://json-ld.org/spec/latest/json-ld/#advanced-context-usage > <https://json-ld.org/spec/latest/json-ld/#advanced-context-usage> > > Franck. > > > Le 14/11/2017 à 20:31, Anders Riutta a écrit : >> >> So, it looks like we are talking about something like >> https://github.com/BioSchemas/specifications/blob/master/Protein/examples/ProteinEntity-with-context.json >> <https://github.com/BioSchemas/specifications/blob/master/Protein/examples/ProteinEntity-with-context.json> >> where the context containing Gene and so will become the >> Bioschemas context and the IRIs will be agreed and then >> fixed. That example includes a third-party property which is >> always possible whenever schema.org <http://schema.org> or >> Bioschemas do not provide a better option. >> >> >> To clarify, here's a list of what I'm hearing we'll have: >> >> 1. Context published by Bioschemas, e.g., >> "http://bioschemas.org/context.jsonld >> <http://bioschemas.org/context.jsonld>" >> 2. Data published by each data provider, e.g., >> http://rest.ensembl.org/... >> <http://rest.ensembl.org/lookup/id/ENSG00000157764?content-type=application/json> >> 3. Context published by each data provider, e.g., >> "http://ensembl.org/context.jsonld >> <http://ensembl.org/context.jsonld>" >> * Option A: Data provider can re-use Bioschemas context: >> {"@context": "http://bioschemas.org/"} >> * Option B: Data provider can create their own context, >> but, whenever possible, will use the IRIs from the >> Bioschemas context >> >> 3A will probably only be possible if the data provider is >> creating a new API. >> >> Most data providers will need to use 3B, because their terms will >> not match the terms from the Bioschemas context, e.g., >> "transcribedFrom" vs. "comesFromGene". By re-using IRIs from the >> Bioschemas context, they will make it possible for >> Bioschemas-compliant tools to work despite term differences, >> because the data provider context and the Bioschemas context will >> together make it clear that "comesFromGene" and "transcribedFrom" >> both mean "http://semanticscience.org/resource/SIO_010081 >> <http://semanticscience.org/resource/SIO_010081>". > >
Received on Wednesday, 15 November 2017 08:47:31 UTC